.filter-panel {
  display: flex;
  align-items: end;
  gap: 12px;
  flex-wrap: wrap;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 16px;
  margin-bottom: 16px;
}

.filter-panel label { min-width: 170px; }
.filter-panel button { margin-bottom: 1px; }
.income-total {
  margin-left: auto;
  padding: 0 12px 1px 24px;
  text-align: right;
  align-self: center;
}
.income-total span {
  display: block;
  color: var(--muted);
  font-size: 13px;
}
.income-total strong {
  display: block;
  margin-top: 2px;
  font-size: 25px;
  color: var(--ink);
}
.custom-dates { display: flex; gap: 12px; }
.custom-dates.hidden { display: none; }
.app-list {
  white-space: normal;
  min-width: 320px;
  max-width: 720px;
  word-break: break-all;
}
.product-details { display: grid; gap: 0; }
.product-details > div { display: grid; grid-template-columns: 130px 1fr; gap: 14px; padding: 11px 0; border-bottom: 1px solid var(--line); }
.product-details span { color: var(--muted); }
.product-details strong { overflow-wrap: anywhere; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
