.account-delete-dialog__panel{max-width:480px}.account-delete-dialog__section{margin-bottom:var(--spacing-4)}.account-delete-dialog__warning{font-size:var(--type-scale-body-font-size);color:var(--semantic-text-primary);margin:0 0 var(--spacing-2);font-weight:600}.account-delete-dialog__info{font-size:var(--type-scale-body-font-size);color:var(--semantic-text-secondary);margin:0}.account-delete-dialog__checkbox-label{align-items:center;gap:var(--spacing-2);font-size:var(--type-scale-body-font-size);cursor:pointer;display:flex}.account-delete-dialog__checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--semantic-error)}.account-delete-dialog__cascade-warning{margin:var(--spacing-2) 0 0;min-height:1.5em;font-size:var(--type-scale-caption-font-size);color:var(--semantic-error)}.account-delete-dialog__confirm-label{font-size:var(--type-scale-body-font-size);color:var(--semantic-text-primary);margin-bottom:var(--spacing-2);display:block}.account-delete-dialog__confirm-input{width:100%;padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--semantic-border);border-radius:var(--radius-sm);font-size:var(--type-scale-body-font-size)}.account-delete-dialog__confirm-input[aria-invalid=true]{border-color:var(--semantic-error)}.account-delete-dialog__actions{margin-top:var(--spacing-4)}@media (prefers-reduced-motion:reduce){.account-delete-dialog__panel{animation:none}}.counterparty-input{position:relative}.counterparty-input__wrapper{align-items:center;display:flex;position:relative}.counterparty-input__field{width:100%;padding:var(--spacing-2) var(--spacing-3);font-size:var(--type-scale-body-font-size,1rem);line-height:var(--type-scale-body-line-height,1.5);color:var(--semantic-text-primary);background:var(--semantic-background-primary);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md,6px);transition:border-color var(--duration-fast,.15s) var(--easing-out,ease-out);outline:none}.counterparty-input__field:focus{border-color:var(--semantic-border-focus,var(--color-primary-500));box-shadow:0 0 0 2px var(--semantic-focus-ring,#3b82f64d)}.counterparty-input__matched{align-items:center;gap:var(--spacing-1);margin-top:var(--spacing-1);padding:var(--spacing-1) var(--spacing-2);font-size:var(--type-scale-caption-font-size,.75rem);color:var(--semantic-text-success,var(--color-green-700));background:var(--semantic-background-success-subtle,#22c55e1a);border-radius:var(--border-radius-sm,4px);display:inline-flex}.counterparty-input__matched-icon{font-size:.875rem}.counterparty-input__listbox{z-index:300;max-height:240px;margin:var(--spacing-1) 0 0;padding:var(--spacing-1) 0;background:var(--semantic-background-primary);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md,6px);box-shadow:var(--shadow-md,0 4px 12px #0000001a);list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.counterparty-input__option{justify-content:space-between;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);font-size:var(--type-scale-body-font-size,1rem);color:var(--semantic-text-primary);cursor:pointer;text-align:left;background:0 0;border:none;width:100%;display:flex}.counterparty-input__option:hover,.counterparty-input__option--focused{background:var(--semantic-background-hover,var(--color-neutral-100))}.counterparty-input__option--selected{color:var(--semantic-text-primary);font-weight:600}.counterparty-input__option-category{font-size:var(--type-scale-caption-font-size,.75rem);color:var(--semantic-text-tertiary,var(--semantic-text-secondary));white-space:nowrap}.counterparty-input__empty{padding:var(--spacing-2) var(--spacing-3);font-size:var(--type-scale-caption-font-size,.75rem);color:var(--semantic-text-secondary);font-style:italic}@media (prefers-color-scheme:dark){html:not([data-theme=light]) .counterparty-input__option:hover,html:not([data-theme=light]) .counterparty-input__option--focused{background:var(--semantic-background-hover,var(--color-neutral-800))}}[data-theme=dark] .counterparty-input__option:hover,[data-theme=dark] .counterparty-input__option--focused{background:var(--semantic-background-hover,var(--color-neutral-800))}@media (prefers-reduced-motion:reduce){.counterparty-input__field{transition:none}}@media (prefers-contrast:more){.counterparty-input__field{border-width:2px}.counterparty-input__option--focused{outline:2px solid var(--semantic-text-primary);outline-offset:-2px}}.bulk-edit-toolbar{bottom:var(--spacing-4,16px);z-index:40;justify-content:space-between;align-items:center;gap:var(--spacing-3,12px);padding:var(--spacing-3,12px) var(--spacing-4,16px);background-color:var(--semantic-background-elevated,#fff);border:1px solid var(--semantic-border-default,#e5e7eb);border-radius:var(--border-radius-lg,12px);flex-wrap:wrap;display:flex;position:sticky;box-shadow:0 4px 16px #0000001f}.bulk-edit-toolbar__info{align-items:center;gap:var(--spacing-2,8px);display:flex}.bulk-edit-toolbar__count{font-size:var(--type-scale-body-font-size,.875rem);color:var(--semantic-interactive-default,#3b82f6);font-weight:600}.bulk-edit-toolbar__toggle{padding:var(--spacing-1,4px) var(--spacing-2,8px);border:1px solid var(--semantic-border-default,#e5e7eb);border-radius:var(--border-radius-sm,4px);font-size:var(--type-scale-caption-font-size,.75rem);cursor:pointer;color:var(--semantic-text-primary,inherit);background:0 0}.bulk-edit-toolbar__toggle:hover{background-color:var(--semantic-background-secondary,#f9fafb)}.bulk-edit-toolbar__toggle:focus-visible{outline:2px solid var(--semantic-border-focus,#3b82f6);outline-offset:2px}.bulk-edit-toolbar__actions{align-items:center;gap:var(--spacing-2,8px);flex-wrap:wrap;display:flex}.bulk-edit-toolbar__action-group{position:relative}.bulk-edit-toolbar__button{align-items:center;gap:var(--spacing-1,4px);padding:var(--spacing-2,8px) var(--spacing-3,12px);border:1px solid var(--semantic-border-default,#e5e7eb);border-radius:var(--border-radius-sm,4px);font-size:var(--type-scale-caption-font-size,.75rem);cursor:pointer;color:var(--semantic-text-primary,inherit);white-space:nowrap;background:0 0;font-weight:500;display:inline-flex}.bulk-edit-toolbar__button:hover{background-color:var(--semantic-background-secondary,#f9fafb)}.bulk-edit-toolbar__button:focus-visible{outline:2px solid var(--semantic-border-focus,#3b82f6);outline-offset:2px}.bulk-edit-toolbar__button--danger{color:var(--semantic-status-negative,#ef4444);border-color:var(--semantic-status-negative,#ef4444)}.bulk-edit-toolbar__button--danger:hover{background-color:var(--color-red-50,#fef2f2)}.bulk-edit-toolbar__dropdown{background-color:var(--semantic-background-elevated,#fff);border:1px solid var(--semantic-border-default,#e5e7eb);border-radius:var(--border-radius-md,8px);min-width:200px;max-height:300px;margin-bottom:var(--spacing-1,4px);z-index:50;position:absolute;bottom:100%;left:0;overflow-y:auto;box-shadow:0 4px 12px #0000001a}.bulk-edit-toolbar__dropdown-item{width:100%;padding:var(--spacing-2,8px) var(--spacing-3,12px);text-align:start;font-size:var(--type-scale-body-font-size,.875rem);cursor:pointer;color:var(--semantic-text-primary,inherit);background:0 0;border:none;display:block}.bulk-edit-toolbar__dropdown-item:hover{background-color:var(--semantic-background-secondary,#f9fafb)}.bulk-edit-toolbar__dropdown-item:focus-visible{outline:2px solid var(--semantic-border-focus,#3b82f6);outline-offset:-2px}.bulk-edit-toolbar__dropdown-item:disabled{opacity:.55;cursor:not-allowed}.bulk-edit-toolbar__dropdown--wide{min-width:320px;padding:var(--spacing-2,8px)}.bulk-edit-toolbar__field-label{margin:var(--spacing-1,4px) 0;font-size:var(--type-scale-caption-font-size,.75rem);color:var(--semantic-text-secondary,#6b7280);font-weight:600;display:block}.bulk-edit-toolbar__inline-field{gap:var(--spacing-1,4px);margin-bottom:var(--spacing-2,8px);display:flex}.bulk-edit-toolbar__text-input{min-width:0;padding:var(--spacing-2,8px);border:1px solid var(--semantic-border-default,#e5e7eb);border-radius:var(--border-radius-sm,4px);background:var(--semantic-background-elevated,#fff);color:var(--semantic-text-primary,inherit);flex:1}.bulk-edit-toolbar__text-input:focus-visible{outline:2px solid var(--semantic-border-focus,#3b82f6);outline-offset:1px}.bulk-edit-toolbar__confirm{align-items:center;gap:var(--spacing-2,8px);display:flex}.bulk-edit-toolbar__confirm-text{font-size:var(--type-scale-caption-font-size,.75rem);color:var(--semantic-status-negative,#ef4444);font-weight:500}.bulk-edit-toolbar__toast{top:calc(-1 * var(--spacing-8,32px) - var(--spacing-2,8px));padding:var(--spacing-2,8px) var(--spacing-4,16px);background-color:var(--color-green-600,#16a34a);color:#fff;border-radius:var(--border-radius-sm,4px);font-size:var(--type-scale-caption-font-size,.75rem);white-space:nowrap;font-weight:500;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #00000026}.transaction-register__select-all{align-items:center;gap:var(--spacing-2,8px);margin-bottom:var(--spacing-3,12px);font-size:var(--type-scale-body-font-size,.875rem);color:var(--semantic-text-secondary,#6b7280);display:flex}.transaction-register__row{gap:var(--spacing-3,12px)}.transaction-register__row--selected{background-color:var(--semantic-background-selected,#3b82f614)}.transaction-register__row--active{outline:2px solid var(--semantic-border-focus,#3b82f6);outline-offset:-2px}.transaction-register__checkbox-cell{align-self:stretch;align-items:center;display:flex}.bulk-select-checkbox{width:20px;height:20px;accent-color:var(--semantic-interactive-default,#3b82f6);cursor:pointer;flex-shrink:0}.bulk-select-checkbox:focus-visible{outline:2px solid var(--semantic-border-focus,#3b82f6);outline-offset:2px}@media (max-width:639px){.bulk-edit-toolbar{border-radius:var(--border-radius-lg,12px) var(--border-radius-lg,12px) 0 0;margin-inline:calc(-1 * var(--spacing-4,16px));flex-direction:column;align-items:stretch;bottom:0}.bulk-edit-toolbar__actions{justify-content:center}}[data-theme=dark] .bulk-edit-toolbar{background-color:var(--semantic-background-elevated,#1f2937);box-shadow:0 4px 16px #0006}[data-theme=dark] .bulk-edit-toolbar__dropdown{background-color:var(--semantic-background-elevated,#1f2937)}[data-theme=dark] .bulk-edit-toolbar__button--danger:hover{background-color:#ef44441f}@media (prefers-color-scheme:dark){html:not([data-theme=light]) .bulk-edit-toolbar{background-color:var(--semantic-background-elevated,#1f2937);box-shadow:0 4px 16px #0006}}@media (prefers-reduced-motion:reduce){.bulk-edit-toolbar__toast{animation:none}}.offline-banner{align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-4);background-color:var(--color-amber-50,#fffbeb);color:var(--color-amber-900,#78350f);border-bottom:1px solid var(--color-amber-400,#fbbf24);transition:transform var(--duration-normal,.2s) ease, opacity var(--duration-normal,.2s) ease;opacity:1;display:flex;transform:translateY(0)}.offline-banner--hidden{opacity:0;pointer-events:none;transform:translateY(-100%)}.offline-banner__icon{flex-shrink:0}.offline-banner__text{font-size:var(--type-scale-caption-font-size);line-height:var(--line-height-normal);flex:1}@media (prefers-color-scheme:dark){html:not([data-theme=light]) .offline-banner{color:var(--color-amber-200,#fde68a);background-color:#f59e0b29;border-bottom-color:#fcd34d99}}[data-theme=dark] .offline-banner{color:var(--color-amber-200,#fde68a);background-color:#f59e0b29;border-bottom-color:#fcd34d99}@media (prefers-reduced-motion:reduce){.offline-banner{transition:none}}@media (prefers-contrast:more){.offline-banner{border-bottom-width:2px}}.quick-entry-fab{bottom:var(--spacing-6,24px);right:var(--spacing-6,24px);z-index:1000;border-radius:var(--radius-full,9999px);background:var(--semantic-action-primary,#6366f1);width:56px;height:56px;color:var(--semantic-text-on-primary,#fff);cursor:pointer;box-shadow:var(--shadow-lg,0 10px 15px -3px #0000001a);transition:transform var(--duration-fast,.15s) var(--easing-standard,ease), box-shadow var(--duration-fast,.15s) var(--easing-standard,ease);border:none;justify-content:center;align-items:center;font-size:1.5rem;display:flex;position:fixed}.quick-entry-fab:hover{box-shadow:var(--shadow-xl,0 20px 25px -5px #0000001a);transform:scale(1.08)}.quick-entry-fab:focus-visible{outline:2px solid var(--semantic-focus-ring,#818cf8);outline-offset:2px}.quick-entry-fab[aria-expanded=true]{transform:rotate(45deg)}.quick-entry-backdrop{z-index:999;animation:fadeIn var(--duration-fast,.15s) var(--easing-standard,ease);background:#0000004d;position:fixed;inset:0}.quick-entry-panel{bottom:var(--spacing-6,24px);right:var(--spacing-6,24px);z-index:1001;width:340px;max-width:calc(100vw - var(--spacing-8,32px));background:var(--semantic-background-primary,#fff);border-radius:var(--radius-lg,12px);box-shadow:var(--shadow-xl,0 20px 25px -5px #0000001a);padding:var(--spacing-5,20px);animation:slideInUp var(--duration-normal,.25s) var(--easing-decelerate,ease-out);position:fixed}.quick-entry-panel__title{margin:0 0 var(--spacing-4,16px);font-size:var(--font-size-lg,1.125rem);font-weight:var(--font-weight-semibold,600);color:var(--semantic-text-primary,#111)}.quick-entry-field{gap:var(--spacing-1,4px);margin-bottom:var(--spacing-3,12px);flex-direction:column;display:flex}.quick-entry-field label{font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-medium,500);color:var(--semantic-text-secondary,#555)}.quick-entry-field input,.quick-entry-field select{padding:var(--spacing-2,8px) var(--spacing-3,12px);border:1px solid var(--semantic-border-primary,#d1d5db);border-radius:var(--radius-md,8px);font-size:var(--font-size-base,1rem);background:var(--semantic-background-primary,#fff);color:var(--semantic-text-primary,#111);transition:border-color var(--duration-fast,.15s) var(--easing-standard,ease)}.quick-entry-field--amount{gap:var(--spacing-2,8px)}.quick-entry-field__amount-display{margin-bottom:0}.quick-entry-field__hint{font-size:var(--font-size-xs,.75rem);color:var(--semantic-text-secondary,#555);margin:0}.quick-entry-field input:focus,.quick-entry-field select:focus{border-color:var(--semantic-action-primary,#6366f1);box-shadow:0 0 0 2px var(--semantic-focus-ring,#6366f14d);outline:none}.quick-entry-field--amount input{text-align:center;font-variant-numeric:tabular-nums}.quick-entry-field input[aria-invalid=true],.quick-entry-field select[aria-invalid=true]{border-color:var(--semantic-error,#ef4444)}.quick-entry-field__error{font-size:var(--font-size-xs,.75rem);color:var(--semantic-error,#ef4444)}.quick-entry-actions{gap:var(--spacing-2,8px);margin-top:var(--spacing-4,16px);justify-content:flex-end;display:flex}.quick-entry-actions button{padding:var(--spacing-2,8px) var(--spacing-4,16px);border-radius:var(--radius-md,8px);font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-medium,500);cursor:pointer;transition:background var(--duration-fast,.15s) var(--easing-standard,ease);border:none}.quick-entry-actions button:focus-visible{outline:2px solid var(--semantic-focus-ring,#818cf8);outline-offset:2px}.quick-entry-btn--cancel{background:var(--semantic-background-secondary,#f3f4f6);color:var(--semantic-text-secondary,#555)}.quick-entry-btn--cancel:hover{background:var(--semantic-background-tertiary,#e5e7eb)}.quick-entry-btn--save{background:var(--semantic-action-primary,#6366f1);color:var(--semantic-text-on-primary,#fff)}.quick-entry-btn--save:hover{background:var(--semantic-action-primary-hover,#4f46e5)}.quick-entry-btn--save:disabled{opacity:.6;cursor:not-allowed}@keyframes quickEntrySavePulse{0%{transform:scale(1)}50%{transform:scale(1.03)}to{transform:scale(1)}}.quick-entry-panel--saving{animation:quickEntrySavePulse var(--duration-normal,.25s) var(--easing-standard,ease)}@media (prefers-reduced-motion:reduce){.quick-entry-fab{transition:none}.quick-entry-backdrop,.quick-entry-panel,.quick-entry-panel--saving{animation:none}}@media (prefers-color-scheme:dark){.quick-entry-backdrop{background:#00000080}}[data-theme=dark] .quick-entry-backdrop{background:#00000080}@media (prefers-contrast:more){.quick-entry-field input,.quick-entry-field select{border-width:2px}.quick-entry-fab{border:2px solid var(--semantic-text-on-primary,#fff)}}.transaction-filters-toggle{align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);background:var(--semantic-background-primary);color:var(--semantic-text-primary);font-size:var(--type-scale-body-font-size);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--duration-fast,.1s) ease;display:inline-flex}.transaction-filters-toggle:hover{background:var(--semantic-background-secondary)}.transaction-filters-toggle:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}.transaction-filters-toggle__badge{min-width:1.25rem;height:1.25rem;padding:0 var(--spacing-1);background:var(--semantic-interactive-default);color:var(--semantic-text-inverse);font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-semibold);border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.transaction-filters-panel{gap:var(--spacing-4);padding:var(--spacing-4);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);background:var(--semantic-background-secondary);margin-top:var(--spacing-3);animation:filters-panel-enter var(--duration-normal,.2s) var(--easing-out,ease-out);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}@keyframes filters-panel-enter{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.transaction-filters-panel__group{gap:var(--spacing-1);flex-direction:column;display:flex}.transaction-filters-panel__label{font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-semibold);color:var(--semantic-text-secondary);text-transform:uppercase;letter-spacing:.05em}.transaction-filters-panel__row{gap:var(--spacing-2);align-items:center;display:flex}.transaction-filters-panel__input{width:100%;padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);background:var(--semantic-background-primary);color:var(--semantic-text-primary);font-size:var(--type-scale-body-font-size);font-family:inherit}.transaction-filters-panel__input:focus{border-color:var(--semantic-border-focus);outline:none;box-shadow:0 0 0 3px #3b82f626}.transaction-filters-panel__actions{align-items:flex-end;gap:var(--spacing-2);display:flex}.transaction-filters-panel__clear{padding:var(--spacing-2) var(--spacing-3);border-radius:var(--border-radius-md);color:var(--semantic-status-negative);font-size:var(--type-scale-body-font-size);font-weight:var(--font-weight-medium);cursor:pointer;white-space:nowrap;background:0 0;border:none}.transaction-filters-panel__clear:hover{background:#ef444414}.transaction-filters-panel__clear:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}.transaction-type-toggles{gap:var(--spacing-1);flex-wrap:wrap;display:flex}.transaction-type-toggle{padding:var(--spacing-1) var(--spacing-2);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);background:var(--semantic-background-primary);color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--duration-fast,.1s) ease, border-color var(--duration-fast,.1s) ease}.transaction-type-toggle:hover{background:var(--semantic-background-secondary)}.transaction-type-toggle:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}.transaction-type-toggle--active{background:var(--semantic-interactive-default);color:var(--semantic-text-inverse);border-color:var(--semantic-interactive-default)}.transaction-type-toggle--active:hover{background:var(--semantic-interactive-hover);border-color:var(--semantic-interactive-hover)}.transaction-active-filters{gap:var(--spacing-2);margin-top:var(--spacing-3);flex-wrap:wrap;display:flex}.transaction-active-filter-chip{align-items:center;gap:var(--spacing-1);padding:var(--spacing-1) var(--spacing-2);border:1px solid var(--semantic-border-default);background:var(--semantic-background-secondary);font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-primary);border-radius:999px;display:inline-flex}.transaction-active-filter-chip__remove{width:1rem;height:1rem;color:var(--semantic-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;font-size:.75rem;line-height:1;display:inline-flex}.transaction-active-filter-chip__remove:hover{background:var(--semantic-status-negative);color:var(--semantic-text-inverse)}.transaction-active-filter-chip__remove:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:1px}.transaction-sort{align-items:center;gap:var(--spacing-2);display:flex}.transaction-sort__select{padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);background:var(--semantic-background-primary);color:var(--semantic-text-primary);font-size:var(--type-scale-body-font-size);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M3 5l3 3 3-3' fill='none' stroke='%23666' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;padding-right:2rem;font-family:inherit}.transaction-sort__select:focus{border-color:var(--semantic-border-focus);outline:none;box-shadow:0 0 0 3px #3b82f626}.transaction-sort__direction{border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);background:var(--semantic-background-primary);width:2rem;height:2rem;color:var(--semantic-text-primary);cursor:pointer;transition:background-color var(--duration-fast,.1s) ease;justify-content:center;align-items:center;font-size:1rem;display:inline-flex}.transaction-sort__direction:hover{background:var(--semantic-background-secondary)}.transaction-sort__direction:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}.transaction-controls-bar{justify-content:space-between;align-items:center;gap:var(--spacing-3);margin-bottom:var(--spacing-4);flex-wrap:wrap;display:flex}.transaction-controls-bar__left{align-items:center;gap:var(--spacing-3);display:flex}@media (max-width:480px){.transaction-filters-panel{grid-template-columns:1fr}.transaction-controls-bar{flex-direction:column;align-items:stretch}.transaction-controls-bar__left{justify-content:space-between}}@media (prefers-reduced-motion:reduce){.transaction-filters-panel{animation:none}.transaction-filters-toggle,.transaction-type-toggle,.transaction-sort__direction{transition:none}}@media (prefers-contrast:more){.transaction-filters-panel__input,.transaction-sort__select,.transaction-filters-toggle,.transaction-sort__direction{border-width:2px}}.edit-panel-overlay{z-index:300;justify-content:flex-end;display:flex;position:fixed;inset:0}.edit-panel-backdrop{z-index:-1;animation:edit-panel-backdrop-enter var(--duration-normal,.2s) ease-out;background:#0006;position:fixed;inset:0}@keyframes edit-panel-backdrop-enter{0%{opacity:0}to{opacity:1}}.edit-panel{background:var(--semantic-background-primary);border-left:1px solid var(--semantic-border-default);width:100%;max-width:480px;height:100%;box-shadow:var(--shadow-lg,-4px 0 25px #0000001a);animation:edit-panel-slide-in var(--duration-normal,.2s) var(--easing-out,ease-out);flex-direction:column;display:flex;position:relative;overflow:hidden}@keyframes edit-panel-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.edit-panel__header{padding:var(--spacing-4) var(--spacing-5);border-bottom:1px solid var(--semantic-border-default);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.edit-panel__title{font-size:var(--type-scale-title-font-size);font-weight:var(--type-scale-title-font-weight);color:var(--semantic-text-primary);margin:0}.edit-panel__close{border-radius:var(--border-radius-md);width:2rem;height:2rem;color:var(--semantic-text-secondary);cursor:pointer;transition:background-color var(--duration-fast,.1s) ease;background:0 0;border:none;justify-content:center;align-items:center;font-size:1.25rem;display:inline-flex}.edit-panel__close:hover{background:var(--semantic-background-secondary);color:var(--semantic-text-primary)}.edit-panel__close:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}.edit-panel__body{padding:var(--spacing-5);flex:1;overflow-y:auto}.edit-panel__footer{justify-content:flex-end;gap:var(--spacing-3);padding:var(--spacing-4) var(--spacing-5);border-top:1px solid var(--semantic-border-default);flex-shrink:0;display:flex}@media (max-width:767px){.edit-panel{max-width:100%;animation:edit-panel-slide-up var(--duration-normal,.2s) var(--easing-out,ease-out);border-left:none}@keyframes edit-panel-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}}@media (prefers-color-scheme:dark){html:not([data-theme=light]) .edit-panel-backdrop{background:#0009}}[data-theme=dark] .edit-panel-backdrop{background:#0009}@media (prefers-reduced-motion:reduce){.edit-panel,.edit-panel-backdrop{animation:none}.edit-panel__close{transition:none}}@media (prefers-contrast:more){.edit-panel{border-left-width:2px}.edit-panel__header,.edit-panel__footer{border-width:2px}}.recent-transactions-card__header{justify-content:space-between;align-items:baseline;gap:var(--spacing-3);margin-bottom:var(--spacing-4);display:flex}.recent-transactions-card__header .page-section__title{margin:0}.recent-transactions-card__view-all{font-size:var(--type-scale-body-font-size);font-weight:var(--font-weight-medium);color:var(--semantic-interactive-default);border-radius:var(--radius-sm,4px);flex-shrink:0;text-decoration:none}.recent-transactions-card__view-all:hover{color:var(--semantic-interactive-hover);text-decoration:underline}.recent-transactions-card__view-all:focus-visible{outline:2px solid var(--semantic-focus-ring,#3b82f6);outline-offset:2px}.recent-transactions-card__controls{gap:var(--spacing-2);padding-bottom:var(--spacing-3);margin-bottom:var(--spacing-2);border-bottom:1px solid var(--semantic-border-default);flex-direction:column;display:flex}.recent-transactions-card__controls .search-bar{margin-bottom:0}.recent-transactions-card__controls-row{justify-content:space-between;align-items:flex-start;gap:var(--spacing-2);flex-wrap:wrap;display:flex}.recent-transactions-card__count{margin:0 0 var(--spacing-2);font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary)}.recent-transactions-card__list{overscroll-behavior:contain;max-height:22rem;overflow-y:auto}@media (prefers-contrast:more){.recent-transactions-card__controls{border-bottom-width:2px}}.widget-grid{gap:var(--layout-card-gap,var(--spacing-4));grid-template-columns:1fr;width:100%;display:grid}@media (min-width:640px){.widget-grid{grid-template-columns:repeat(2,1fr)}.widget--large{grid-column:span 2}}@media (min-width:1024px){.widget-grid{grid-template-columns:repeat(3,1fr)}.widget--small,.widget--medium{grid-column:span 1}.widget--large{grid-column:span 2}}@media (min-width:1280px){.widget-grid{grid-template-columns:repeat(4,1fr)}.widget--large{grid-column:span 2}}.widget{background:var(--semantic-background-primary);border:1px solid var(--semantic-border-default);border-radius:var(--card-border-radius,var(--border-radius-md));box-shadow:var(--shadow-sm,0 1px 2px #0000000d);flex-direction:column;display:flex;overflow:hidden}.widget__header{padding:var(--spacing-4) var(--spacing-4) var(--spacing-2)}.widget__title{font-size:var(--type-scale-body-font-size);font-weight:var(--font-weight-semibold);color:var(--semantic-text-secondary);margin:0}.widget__body{padding:var(--spacing-2) var(--spacing-4) var(--spacing-4);flex:1}.safe-to-spend-section{margin-top:var(--spacing-4)}.safe-to-spend-card{border-color:color-mix(in srgb, var(--semantic-interactive-default) 28%, var(--semantic-border-default));background:linear-gradient(135deg, color-mix(in srgb, var(--semantic-interactive-default) 9%, var(--semantic-background-primary)), var(--semantic-background-primary))}.safe-to-spend-card--caution{border-color:color-mix(in srgb, var(--semantic-status-warning) 38%, var(--semantic-border-default));background:linear-gradient(135deg, color-mix(in srgb, var(--semantic-status-warning) 12%, var(--semantic-background-primary)), var(--semantic-background-primary))}.safe-to-spend-card__content{gap:var(--spacing-3);flex-direction:column;display:flex}.safe-to-spend-card__eyebrow{margin:0 0 var(--spacing-1);color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.04em}.safe-to-spend-card__title{color:var(--semantic-text-primary);font-size:var(--type-scale-title-font-size);line-height:var(--type-scale-title-line-height);margin:0}.safe-to-spend-card__amount{color:var(--semantic-interactive-default);font-size:clamp(2.75rem,8vw,5rem);font-weight:var(--font-weight-bold);overflow-wrap:anywhere;line-height:1}.safe-to-spend-card--caution .safe-to-spend-card__amount{color:var(--semantic-status-warning)}.safe-to-spend-card__explanation{color:var(--semantic-text-primary);font-size:var(--type-scale-body-font-size);line-height:var(--type-scale-body-line-height);margin:0}.safe-to-spend-card__toggle{align-self:flex-start;align-items:center;gap:var(--spacing-1);padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);background:var(--semantic-background-primary);color:var(--semantic-text-primary);font:inherit;font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--duration-fast,.1s) ease;display:inline-flex}.safe-to-spend-card__toggle:hover{background:var(--semantic-background-secondary)}.safe-to-spend-card__toggle:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}.safe-to-spend-card__breakdown{gap:var(--spacing-3);margin:var(--spacing-1) 0 0;grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));display:grid}.safe-to-spend-card__breakdown div{padding:var(--spacing-3);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);background:color-mix(in srgb, var(--semantic-background-secondary) 72%, transparent)}.safe-to-spend-card__breakdown dt{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-semibold)}.safe-to-spend-card__breakdown dd{margin:var(--spacing-1) 0 0;color:var(--semantic-text-primary);font-size:var(--type-scale-body-font-size);font-weight:var(--font-weight-semibold)}.dashboard-customize-btn{align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--semantic-border-default);background:var(--semantic-background-secondary,#f5f5f5);color:var(--semantic-text-secondary);font:inherit;font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--duration-fast,.1s) ease, color var(--duration-fast,.1s) ease, box-shadow var(--duration-fast,.1s) ease;border-radius:999px;display:inline-flex}.dashboard-customize-btn:hover{background:var(--semantic-background-primary,#fff);color:var(--semantic-text-primary);box-shadow:0 1px 2px #0f172a1f}.dashboard-customize-btn:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}.customize-panel{max-width:560px}.customize-panel__description{color:var(--semantic-text-secondary);font-size:var(--type-scale-body-font-size);margin:0 0 var(--spacing-4);line-height:var(--line-height-relaxed,1.5)}.customize-panel__list{margin:0 0 var(--spacing-4);gap:var(--spacing-2);scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--semantic-border-default) 80%, transparent) transparent;scrollbar-gutter:stable;flex-direction:column;max-height:400px;padding:0;list-style:none;display:flex;overflow-y:auto}.customize-panel__list::-webkit-scrollbar{width:10px}.customize-panel__list::-webkit-scrollbar-track{border-radius:var(--border-radius-md);background:0 0}.customize-panel__list::-webkit-scrollbar-thumb{background-color:color-mix(in srgb, var(--semantic-border-default) 80%, transparent);border-radius:var(--border-radius-md);background-clip:padding-box;border:2px solid #0000}.customize-panel__list::-webkit-scrollbar-thumb:hover{background-color:var(--semantic-interactive-default)}.customize-panel__item{align-items:center;gap:var(--spacing-3);padding:var(--spacing-3);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);background:var(--semantic-background-primary);transition:border-color var(--duration-fast,.1s) ease, box-shadow var(--duration-fast,.1s) ease, opacity var(--duration-fast,.1s) ease;display:flex}.customize-panel__drag-handle{width:1.25rem;color:var(--semantic-text-secondary);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;flex-shrink:0;justify-content:center;align-self:stretch;align-items:center;font-size:1rem;line-height:1;display:inline-flex}.customize-panel__item--dragging{opacity:.6}.customize-panel__item--dragging,.customize-panel__item--dragging .customize-panel__drag-handle{cursor:grabbing}.customize-panel__item--drag-over{border-color:var(--semantic-interactive-default);box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--semantic-interactive-default) 45%, transparent)}.customize-panel__toggle{align-items:flex-start;gap:var(--spacing-3);cursor:pointer;flex:1;display:flex}.customize-panel__toggle:hover .customize-panel__name{text-underline-offset:2px;text-decoration:underline}.customize-panel__toggle input[type=checkbox]{accent-color:var(--semantic-interactive-default);flex-shrink:0;width:1rem;height:1rem;margin-top:2px}.customize-panel__label{flex-direction:column;gap:2px;display:flex}.customize-panel__name{font-size:var(--type-scale-body-font-size);font-weight:var(--font-weight-medium);color:var(--semantic-text-primary)}.customize-panel__desc{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary)}.customize-panel__reorder{flex-direction:column;flex-shrink:0;gap:2px;display:flex}.customize-panel__move-btn{border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-sm,4px);background:var(--semantic-background-primary);width:28px;height:28px;color:var(--semantic-text-primary);cursor:pointer;justify-content:center;align-items:center;font-family:inherit;font-size:.875rem;line-height:1;display:inline-flex}.customize-panel__move-btn:hover:not(:disabled){background:var(--semantic-background-secondary)}.customize-panel__move-btn:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:1px}.customize-panel__move-btn:disabled{opacity:.4;cursor:not-allowed}@media (prefers-color-scheme:dark){html:not([data-theme=light]) .customize-panel__item{background:var(--semantic-background-secondary)}}[data-theme=dark] .customize-panel__item{background:var(--semantic-background-secondary)}@media (prefers-reduced-motion:reduce){.dashboard-customize-btn,.safe-to-spend-card__toggle,.customize-panel__item{transition:none}}@media (prefers-contrast:more){.widget,.customize-panel__item,.customize-panel__move-btn{border-width:2px}}.grocery-mode-section{margin-top:var(--spacing-4)}.grocery-mode-card{gap:var(--spacing-4);border-color:color-mix(in srgb, var(--semantic-interactive-default) 28%, var(--semantic-border-default));background:linear-gradient(135deg, color-mix(in srgb, var(--semantic-interactive-default) 9%, var(--semantic-background-primary)), var(--semantic-background-primary));flex-direction:column;display:flex}.grocery-mode-card--tight{border-color:color-mix(in srgb, var(--semantic-status-warning) 38%, var(--semantic-border-default));background:linear-gradient(135deg, color-mix(in srgb, var(--semantic-status-warning) 12%, var(--semantic-background-primary)), var(--semantic-background-primary))}.grocery-mode-card__header{gap:var(--spacing-1);flex-direction:column;display:flex}.grocery-mode-card__eyebrow{align-items:center;gap:var(--spacing-1);color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.04em;margin:0;display:inline-flex}.grocery-mode-card__title{color:var(--semantic-text-primary);font-size:var(--type-scale-title-font-size);line-height:var(--type-scale-title-line-height);margin:0}.grocery-mode-card__amount{align-items:center;gap:var(--spacing-2);color:var(--semantic-interactive-default);font-size:clamp(2.5rem,7vw,4.5rem);font-weight:var(--font-weight-bold);overflow-wrap:anywhere;margin:0;line-height:1;display:inline-flex}.grocery-mode-card--tight .grocery-mode-card__amount{color:var(--semantic-status-warning)}.grocery-mode-card__amount-icon{flex-shrink:0;width:.7em;height:.7em}.grocery-mode-card__answer{gap:var(--spacing-2);flex-direction:column;display:flex}.grocery-mode-card__answer-text{color:var(--semantic-text-primary);font-size:var(--type-scale-body-font-size);line-height:var(--type-scale-body-line-height);margin:0}.grocery-mode-card__answer-meta,.grocery-mode-card__answer-pinned{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);line-height:var(--type-scale-body-line-height);margin:0}.grocery-mode-card__bills{gap:var(--spacing-2);padding:var(--spacing-3);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);background:color-mix(in srgb, var(--semantic-background-secondary) 72%, transparent);flex-direction:column;display:flex}.grocery-mode-card__bills-title{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-semibold);margin:0}.grocery-mode-card__bills-list{gap:var(--spacing-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.grocery-mode-card__bill{gap:var(--spacing-2);color:var(--semantic-text-primary);font-size:var(--type-scale-body-font-size);grid-template-columns:1fr auto auto;align-items:baseline;display:grid}.grocery-mode-card__bill-due{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size)}.grocery-mode-card__bill-amount{font-weight:var(--font-weight-semibold)}.grocery-mode-card__bills-empty{color:var(--semantic-text-secondary);font-size:var(--type-scale-body-font-size);margin:0}.grocery-mode-card__controls{gap:var(--spacing-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));display:grid}.grocery-mode-card__field{gap:var(--spacing-1);flex-direction:column;display:flex}.grocery-mode-card__label{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-semibold)}.grocery-mode-card__select,.grocery-mode-card__input{padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);background:var(--semantic-background-primary);color:var(--semantic-text-primary);font:inherit}.grocery-mode-card__select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M3 5l3 3 3-3' fill='none' stroke='%23666' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;padding-right:2rem}.grocery-mode-card__afford-input{align-items:center;gap:var(--spacing-1);padding-left:var(--spacing-3);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);background:var(--semantic-background-primary);display:flex}.grocery-mode-card__afford-prefix{color:var(--semantic-text-secondary);font-weight:var(--font-weight-semibold)}.grocery-mode-card__afford-input .grocery-mode-card__input{background:0 0;border:0;flex:1;padding-left:0}.grocery-mode-card__select:focus-visible,.grocery-mode-card__input:focus-visible,.grocery-mode-card__afford-input:focus-within{outline:2px solid var(--semantic-border-focus);outline-offset:2px}.grocery-mode-card__afford-input .grocery-mode-card__input:focus-visible{outline:none}.grocery-mode-card__afford-result{align-items:flex-start;gap:var(--spacing-2);min-height:1.25rem;color:var(--semantic-text-primary);font-size:var(--type-scale-body-font-size);line-height:var(--type-scale-body-line-height);margin:0;display:flex}.grocery-mode-card__afford-result--yes{color:var(--semantic-status-success,var(--semantic-text-primary))}.grocery-mode-card__afford-result--no{color:var(--semantic-text-primary)}.grocery-mode-card__afford-icon{flex-shrink:0;margin-top:.1em}@media (prefers-contrast:more){.grocery-mode-card,.grocery-mode-card__bills,.grocery-mode-card__select,.grocery-mode-card__input,.grocery-mode-card__afford-input{border-width:2px}}.savings-rate-card{gap:var(--spacing-2);border-color:color-mix(in srgb, var(--semantic-interactive-default) 24%, var(--semantic-border-default))}.savings-rate-card--positive{border-color:color-mix(in srgb, var(--semantic-status-success,var(--semantic-interactive-default)) 30%, var(--semantic-border-default))}.savings-rate-card--caution{border-color:color-mix(in srgb, var(--semantic-status-warning) 36%, var(--semantic-border-default))}.savings-rate-card__trend{align-items:center;gap:var(--spacing-1);color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-semibold);margin:0;display:inline-flex}.savings-rate-card__trend-icon{font-size:.85em;line-height:1}.savings-rate-card__status{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);line-height:var(--type-scale-body-line-height);margin:0}@media (prefers-contrast:more){.savings-rate-card{border-width:2px}}.spending-bar-chart{flex-direction:column;height:100%;display:flex}.spending-bar-chart__plot{margin-top:auto}.list-item__action{padding:var(--spacing-2,8px) var(--spacing-3,12px);border:1px solid var(--semantic-border-default,#e5e7eb);border-radius:var(--radius-sm,4px);background-color:var(--semantic-surface-secondary,#f3f4f6);color:var(--semantic-text-primary,#111827);font-size:var(--type-scale-caption-font-size,.75rem);font-weight:var(--font-weight-medium,500);white-space:nowrap;cursor:pointer;flex-shrink:0;align-self:center;align-items:center;text-decoration:none;transition:background-color .12s;display:inline-flex}.list-item__action:hover{background-color:var(--semantic-surface-tertiary,#e5e7eb)}.list-item__action:focus-visible{outline:2px solid var(--semantic-focus-ring,#3b82f6);outline-offset:2px}[data-theme=dark] .list-item__action:hover{background-color:var(--semantic-surface-tertiary,#374151)}@media (prefers-reduced-motion:reduce){.list-item__action{transition:none}}@media (prefers-contrast:more){.list-item__action{border-width:2px}}.recent-transactions__list .list-item__link{width:auto;min-width:0;margin-inline:var(--spacing-2);padding:var(--spacing-3) var(--spacing-2);border-radius:var(--card-border-radius,var(--radius-md,8px));flex:1}.recent-transactions__list .list-item__link:hover,.recent-transactions__list .list-item__link:focus-visible{background-color:var(--semantic-background-secondary);background-color:color-mix(in srgb, var(--semantic-text-primary) 6%, transparent)}.dashboard-summary-grid>.card{overflow-wrap:anywhere;min-width:0}@media (min-width:376px) and (max-width:767px){.card-grid.dashboard-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:375px){.card-grid.dashboard-summary-grid{gap:var(--spacing-3);grid-template-columns:1fr}}
