.finance-workspace { display: grid; gap: 1rem; min-width: 0; }
.finance-hero, .finance-detail-head, .finance-section-head, .finance-actions, .finance-card, .finance-exception, .cost-charge { display: flex; align-items: center; justify-content: space-between; gap: .8rem; }
.finance-hero { padding: 1rem; border: 1px solid var(--line); border-radius: var(--radius-lg); background: linear-gradient(135deg, var(--surface), var(--surface-soft)); }
.finance-hero h3, .finance-detail h4, .finance-section-head h4 { margin: .1rem 0; }
.finance-hero p, .finance-detail-head p { margin: .15rem 0; color: var(--muted); }
.finance-actions { flex-wrap: wrap; justify-content: flex-end; }
.finance-tabs { display: flex; gap: .45rem; overflow-x: auto; scrollbar-width: thin; }
.finance-tab { display: inline-flex; align-items: center; gap: .5rem; min-height: 42px; padding: .55rem .8rem; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); color: var(--text); white-space: nowrap; }
.finance-tab.is-active { border-color: var(--primary); background: color-mix(in srgb, var(--primary) 12%, var(--surface)); }
.finance-tab strong { display: grid; place-items: center; min-width: 1.45rem; height: 1.45rem; border-radius: 999px; background: var(--surface-soft); font-size: .75rem; }
.finance-split { display: grid; grid-template-columns: minmax(260px, .75fr) minmax(0, 1.6fr); gap: 1rem; min-width: 0; }
.finance-list, .finance-detail, .finance-queue { min-width: 0; padding: 1rem; border: 1px solid var(--line); border-radius: var(--radius-lg); background: var(--surface); }
.finance-section-head { margin-bottom: .8rem; }
.finance-section-head span { color: var(--muted); font-size: .8rem; }
.finance-cards { display: grid; gap: .55rem; max-height: 68vh; overflow: auto; }
.finance-card { width: 100%; padding: .75rem; border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface-soft); color: var(--text); text-align: left; }
.finance-card:hover, .finance-card.is-selected { border-color: var(--primary); transform: translateY(-1px); }
.finance-card span { display: grid; gap: .18rem; }
.finance-card span:last-child { justify-items: end; }
.finance-card small { color: var(--muted); }
.finance-card em { font-style: normal; }
.match-summary, .cost-impact { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .65rem; margin: 1rem 0; }
.match-summary > div, .cost-impact > div { display: grid; gap: .2rem; padding: .7rem; border-radius: var(--radius); background: var(--surface-soft); }
.match-summary span, .cost-impact span { color: var(--muted); font-size: .75rem; }
.finance-table-region { max-width: 100%; overflow: auto; border: 1px solid var(--line); border-radius: var(--radius); }
.finance-table-region table { min-width: 680px; }
.finance-exception { align-items: flex-start; padding: .85rem 0; border-bottom: 1px solid var(--line); }
.finance-exception:last-child { border-bottom: 0; }
.finance-exception h4, .finance-exception p { margin: .25rem 0; }
.finance-exception p { color: var(--muted); }
.finance-block { margin-top: 1rem; padding-top: .85rem; border-top: 1px solid var(--line); }
.finance-block h5 { margin: 0 0 .65rem; }
.finance-chip { display: inline-flex; margin: .2rem; padding: .35rem .55rem; border-radius: 999px; background: var(--surface-soft); }
.cost-charge { padding: .65rem 0; border-bottom: 1px solid var(--line); }
.cost-charge span { display: grid; }
.cost-charge small { color: var(--muted); }
.finance-timeline { display: grid; gap: .75rem; margin: 0; padding-left: 1.25rem; }
.finance-timeline li span { float: right; color: var(--muted); font-size: .8rem; }
.finance-timeline p { margin: .2rem 0; color: var(--muted); }
.finance-empty { display: grid; place-items: center; min-height: 180px; padding: 1.25rem; text-align: center; color: var(--muted); }
.finance-empty h3, .finance-empty h4 { margin: 0; color: var(--text); }
.consequence-panel { margin-bottom: 1rem; padding: .8rem; border: 1px solid var(--warning); border-radius: var(--radius); background: color-mix(in srgb, var(--warning) 8%, var(--surface)); }
.consequence-panel p { margin-bottom: 0; }
@media (max-width: 820px) { .finance-split { grid-template-columns: 1fr; } .finance-cards { max-height: 36vh; } }
@media (max-width: 540px) { .finance-hero, .finance-detail-head, .finance-exception { align-items: stretch; flex-direction: column; } .finance-actions { justify-content: stretch; } .finance-actions button { flex: 1; } .match-summary, .cost-impact { grid-template-columns: 1fr; } .finance-list, .finance-detail, .finance-queue { padding: .75rem; } }
