.nav-item{text-decoration:none}.finance-main{max-width:1600px}.page-actions a{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.finance-filter{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:24px 0 16px}.finance-filter label{display:grid;gap:5px;font-size:11px;color:var(--muted)}.finance-filter input{width:155px;height:36px}.finance-filter select{height:36px;max-width:230px}.finance-filter .segments{height:36px;align-items:center}.finance-status{display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:12px;padding:10px 0;border-bottom:1px solid var(--line)}.finance-band{padding:24px 0;border-top:1px solid var(--line)}.finance-main .metric-value strong{font-size:27px;overflow-wrap:anywhere;min-width:0}.finance-main .metric-value{flex-wrap:wrap;gap:5px}.finance-main .metrics{gap:18px}.finance-main .date-line{flex-wrap:wrap}.finance-main .chart-wrap{height:285px}.finance-main .chart-wrap.compact{height:230px}.finance-main table td{font-variant-numeric:tabular-nums}.finance-main tbody select{height:34px;max-width:200px}.finance-main .key-name{font-weight:600;overflow-wrap:anywhere;max-width:210px}.finance-main .finance-filename{max-width:260px;overflow-wrap:anywhere}.finance-amount{white-space:nowrap}.finance-partial{color:#a66b08;background:#fff7e6}.finance-empty-row{text-align:center;color:var(--muted);height:85px}.finance-range-action{background:transparent;color:var(--teal);font-size:12px}.finance-main .chart-area{min-width:0}.finance-main .load-error{margin-top:12px}.finance-main .topbar-status{white-space:normal}.finance-main .page-heading h1{font-size:26px}@media(max-width:900px){.finance-main .metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.finance-main .metric:nth-child(2){border-right:0}.finance-main .page-heading{align-items:start}.finance-main .page-actions{flex-wrap:wrap;justify-content:end}.finance-main .analysis-grid{grid-template-columns:1fr}}@media(max-width:540px){.finance-main{padding:22px 16px}.finance-main .page-heading{flex-direction:column;gap:16px}.finance-main .page-actions{justify-content:start}.finance-main .metric-value strong{font-size:24px}.finance-filter{gap:10px}.finance-filter label{flex:1 1 130px}.finance-filter input{width:100%}.finance-filter select{max-width:100%;flex:1}.finance-status{flex-wrap:wrap;gap:6px}.finance-main .date-line span+span{padding-left:0;border-left:0}.finance-main .metrics{gap:16px}.finance-main .metric{padding-right:10px}.finance-main .chart-heading{flex-wrap:wrap;gap:6px}.finance-main .chart-wrap{height:260px}}


/* RelayRouter 同步卡片 */
.relayrouter-card{margin:16px 0;border:1px solid var(--line,#e2e8f0);border-radius:14px;background:#fff;overflow:hidden}
.relayrouter-card-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--line,#e2e8f0);background:#f8fafc}
.relayrouter-card-body{padding:14px 16px}
.relayrouter-state{font-size:13px;padding:4px 10px;border-radius:20px;background:#f1f5f9;color:#475569}
.relayrouter-state.ok{background:#dcfce7;color:#166534}
.relayrouter-state.warn{background:#fef9c3;color:#854d0e}
.relayrouter-actions{display:flex;align-items:center;gap:12px;margin-top:12px;flex-wrap:wrap}
.relayrouter-sync-info{display:flex;gap:16px;margin-top:10px;font-size:13px;color:#64748b}

.relayrouter-run-status{margin-top:10px;font-size:13px;padding:8px 10px;border-radius:8px;background:#f1f5f9}
.relayrouter-run-state.running{color:#1d4ed8;background:#eff6ff}
.relayrouter-run-state.done{color:#166534;background:#dcfce7}
.relayrouter-run-state.error{color:#991b1b;background:#fee2e2}
