.finance-classify { margin-block: 15px; padding: 15px 18px; border: 1px solid var(--line); background: var(--panel); overflow-wrap: anywhere; }
.finance-classify [hidden] { display: none !important; }
.finance-classify h3 { margin: 0; }
.finance-classify header .hint { margin: 4px 0 10px; }
.finance-classify > details { border-block-start: 1px solid var(--line); margin-block-start: 10px; }
.finance-classify summary { cursor: pointer; padding: 8px 0; width: fit-content; }
.classify-form { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px 12px; }
.classify-form .field, .classify-form input, .classify-form select { min-width: 0; text-align: start; }
.classify-wide, .classify-actions, .classify-status { grid-column: 1 / -1; }
.classify-actions { display: flex; flex-wrap: wrap; gap: 7px; }
#classify-balance { margin: 0; }
#classify-balance:empty { display: none; }
.classify-form fieldset { min-width: 0; border: 0; margin: 0; padding: 0; }
.classify-part { border-block-start: 1px solid var(--line) !important; padding: 7px 0 !important; }
.classify-part legend { color: var(--muted); font-size: .84rem; }
.classify-status { margin: 6px 0; padding: 6px 9px; font-size: .85rem; }
.classify-status:empty { position: absolute; width: 1px; height: 1px; clip-path: inset(50%); overflow: hidden; padding: 0; }
.classify-status[data-tone="error"] { border-inline-start: 2px solid var(--warning); background: #fbede6; color: var(--warning); }
.classify-status[data-tone="success"] { border-inline-start: 2px solid #28564a; background: #edf1eb; }
.classify-scope-label { font-weight: 650; }
.classify-coverage { display: flex; flex-wrap: wrap; gap: 6px 14px; margin: 8px 0; font-size: .87rem; }
.classify-groups, .classify-history { margin: 5px 0; padding: 0; list-style: none; }
.classify-groups li, .classify-history li { display: grid; gap: 4px; border-block-start: 1px solid var(--line); padding: 7px 0; }
.classify-groups span, .classify-history span, .classify-groups dt { font-size: .84rem; color: var(--muted); }
.classify-groups dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px 12px; margin: 0; }
.classify-groups dd { margin: 3px 0 0; font-weight: 620; font-variant-numeric: tabular-nums; }
@media (max-width: 680px) {
  .finance-classify { padding: 12px; }
  .classify-form { grid-template-columns: minmax(0, 1fr); }
}
@media print {
  #finance-classification-jump, .finance-classify form { display: none; }
}
