/* Shared by Banking, Spent and Received. No page-specific geometry. */
.transaction-toolbar.xb-shared-filters {
  display: grid;
  grid-template-columns: minmax(150px,1.6fr) minmax(116px,.85fr) repeat(2,minmax(126px,.85fr)) minmax(140px,1.2fr) minmax(112px,.85fr) auto;
  gap: 10px;
  align-items: end;
}
.xb-shared-filters > .filter-field { min-width: 0; width: auto; }
.xb-shared-filters .xb-filter-button { height: 38px; min-height: 38px; display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
.xb-shared-filters .xb-filter-button svg { width: 14px; height: 14px; }
.xb-shared-filters .tag-filter-options label {
  display: flex; grid-template-columns: none; gap: 8px; min-height: 28px; height: auto;
  padding: 3px 4px; margin: 0; align-items: center; font-weight: 500;
}
.xb-shared-filters .tag-filter-options input[type=checkbox] { width: 16px; height: 16px; min-height: 16px; margin: 0; flex: 0 0 16px; }
.xb-shared-filters .tag-filter-options label > span { margin: 0; line-height: 20px; }
.xb-filter-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.xb-filter-chips:not(:empty) { padding: 10px 16px; border-top: 1px solid var(--xb-color-outline-variant); }
.xb-filter-chips button { min-height: 28px; padding: 3px 9px; font-size: 12px; background: var(--xb-color-primary-container); color: var(--xb-color-on-primary-container); border: 0; border-radius: 8px; }
dialog.xb-transaction-filter-dialog {
  width: min(560px,calc(100vw - 32px)); max-height: calc(100dvh - 32px);
  padding: 0; border: 1px solid var(--xb-color-outline-variant); border-radius: 16px;
  background: var(--xb-color-surface-container-lowest); color: var(--xb-color-on-surface);
  box-shadow: var(--xb-elevation-3);
}
.xb-transaction-filter-dialog::backdrop { background: color-mix(in srgb,var(--xb-color-on-surface) 18%,transparent); }
.xb-transaction-filter-dialog header { display: flex; justify-content: space-between; align-items: start; padding: 22px 24px 18px; border-bottom: 1px solid var(--xb-color-outline-variant); }
.xb-transaction-filter-dialog h2 { font-size: 19px; font-weight: 600; margin: 0; }
.xb-transaction-filter-dialog p { color: var(--xb-color-on-surface-variant); font-size: 12px; margin: 5px 0 0; }
.xb-filter-fields { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 18px 16px; padding: 22px 24px; }
.xb-filter-fields label { display: flex; flex-direction: column; gap: 7px; min-width: 0; font-size: 12px; font-weight: 500; }
.xb-filter-fields label:first-child { grid-column: 1; }
.xb-filter-fields input,.xb-filter-fields select { width: 100%; min-width: 0; min-height: 40px; background: var(--xb-field-container); color: var(--xb-field-content); border: 1px solid var(--xb-field-border); font-size: 14px; font-weight: 400; }
.xb-filter-amounts { grid-column: 1/-1; display: grid; grid-template-columns: 1fr 1fr; gap: 12px 16px; }
.xb-filter-amounts input { text-align: right; font-variant-numeric: tabular-nums; }
.xb-filter-amounts p { grid-column: 1/-1; margin: 0; }
.xb-transaction-filter-dialog footer { display: flex; align-items: center; gap: 8px; padding: 16px 24px; border-top: 1px solid var(--xb-color-outline-variant); }
.xb-filter-reset { margin-right: auto; background: transparent; border: 0; color: var(--xb-color-on-surface-variant); }
@media(max-width:1100px) { .transaction-toolbar.xb-shared-filters { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media(max-width:600px) { .transaction-toolbar.xb-shared-filters { grid-template-columns: repeat(2,minmax(0,1fr)); } .xb-filter-fields { padding: 18px; } }
/* Navigation weight follows selection, not whether a submenu is expanded. */
.nav .nav-toggle, .me-menu-button, .me-menu-button > span:last-child { font-weight: var(--font-weight-nav); }
.nav .nav-group:has(a[aria-current=page]) > .nav-toggle,
.nav .nav-section:has(a[aria-current=page]) > .nav-toggle,
.nav .nav-toggle[aria-current=page],
.me-menu-button[aria-expanded=true], .me-menu-button[aria-expanded=true] > span:last-child { font-weight: var(--font-weight-nav-active); }

.xb-shared-filters .tag-filter-picker > summary { min-height: 38px; height: 38px; }
.xb-shared-filters > [hidden] { display: none !important; }

.xb-filter-chips[hidden], .xb-filter-amounts[hidden], .xb-filter-amounts [hidden] { display: none !important; }
@media (min-width: 768px) {
  #bankTransactionsView .bank-transaction-control-surface { padding-bottom: 0; border-bottom: 0; }
  .xb-desktop-category-host { display: block; min-width: 0; }
  select.xb-category-adapted, .xb-desktop-select:has(+ select.xb-category-adapted) { display: none !important; }
  .xb-desktop-category-host .category-combobox-input { height: 38px; min-height: 38px; width: 100%; }
}
@media (max-width: 767px) { .xb-desktop-category-host { display: none !important; } }
