/* Санхүүгийн сайт — нэмэлт */
.fc { display: block; overflow: visible; font-family: inherit; }
.fc-grid { stroke: #eef1f5; stroke-width: 1; } .fc-grid.zero { stroke: #c8ced8; }
.fc-ax { fill: #8993a5; font-size: 11px; }
.fc-cross { stroke: #9aa4b5; stroke-width: 1; stroke-dasharray: 3 3; }
.fc-legend { display: flex; gap: 14px; flex-wrap: wrap; font-size: 12.5px; color: #52514e; margin-bottom: 6px; }
.fc-legend i, .fc-tip i { display: inline-block; width: 10px; height: 10px; border-radius: 3px; margin-right: 6px; vertical-align: -1px; }
.fc-tip { position: absolute; z-index: 1300; background: #fff; border: 1px solid #d9dee7; border-radius: 10px; box-shadow: 0 8px 24px rgba(15,23,42,.14); padding: 8px 10px; font-size: 12.5px; pointer-events: none; color: #172033; min-width: 150px; }
.fc-tip b { font-variant-numeric: tabular-nums; }
.hb { display: flex; flex-direction: column; gap: 2px; }
.hb-row { display: grid; grid-template-columns: minmax(150px, 1.3fr) 2fr minmax(120px, auto); gap: 10px; align-items: center; padding: 6px 4px; border-bottom: 1px solid #f1f3f7; font-size: 13px; }
.hb-row.click { cursor: pointer; } .hb-row.click:hover { background: #f5f9ff; }
.hb-l { min-width: 0; } .hb-n { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .hb-l small, .hb-v small { display: block; color: #8993a5; font-size: 11.5px; }
.hb-rank { display: inline-block; min-width: 20px; color: #8993a5; }
.hb-bar { height: 10px; background: #f1f3f7; border-radius: 99px; overflow: hidden; } .hb-bar i { display: block; height: 100%; border-radius: 99px; }
.hb-v { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.kpi { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 14px; margin-bottom: 18px; }
.kpi > div { background: #fff; border-radius: 16px; padding: 16px 18px; box-shadow: 0 1px 2px rgba(16,24,40,.04); border: 1px solid #eef1f5; }
.kpi span { display: block; color: #667085; font-size: 12.5px; } .kpi b { display: block; font-size: 22px; margin: 4px 0 2px; font-variant-numeric: tabular-nums; } .kpi small { font-size: 12px; }
.pl td.lvl1 { font-weight: bold; } .pl tr.sum td { font-weight: bold; background: #f4f7fb; } .pl td.ind { padding-left: 26px; color: #52514e; }
.grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; } @media (max-width: 1000px) { .grid2 { grid-template-columns: 1fr; } }
.empty-fin { padding: 40px 20px; text-align: center; color: #667085; }
.kpi > div { min-width: 0; } .kpi small { display: block; white-space: normal; }
