.form-dialog{z-index:200;padding:var(--spacing-4);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.form-dialog__backdrop{z-index:-1;background:#00000080;position:fixed;inset:0}.form-dialog__panel{width:100%;max-width:520px;max-height:calc(100dvh - var(--spacing-8));overscroll-behavior:contain;background:var(--semantic-background-primary);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-lg,var(--border-radius-md));box-shadow:var(--shadow-lg,0 10px 25px #00000026);padding:var(--spacing-6);animation:form-dialog-enter var(--duration-normal,.2s) var(--easing-out,ease-out);position:relative;overflow-y:auto}@keyframes form-dialog-enter{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.form-dialog__title{font-size:var(--type-scale-title-font-size);font-weight:var(--type-scale-title-font-weight);color:var(--semantic-text-primary);margin-bottom:var(--spacing-5)}.form-fields{gap:var(--spacing-4);flex-direction:column;display:flex}.form-group{gap:var(--spacing-1);flex-direction:column;display:flex}.form-group__label{font-size:var(--type-scale-body-font-size);font-weight:var(--font-weight-medium);color:var(--semantic-text-primary)}.form-group__label--required:after{content:" *";color:var(--semantic-status-negative)}.form-group__help{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);line-height:var(--line-height-normal);margin:0}.form-fieldset{border:0;min-inline-size:0;margin:0;padding:0}.form-checkbox-row{align-items:flex-start;gap:var(--spacing-2);color:var(--semantic-text-primary);font-size:var(--type-scale-body-font-size);line-height:var(--line-height-normal);cursor:pointer;display:flex}.form-checkbox-row input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--semantic-interactive-default);flex:none;margin:.125rem 0 0}.form-input,.form-select,.form-textarea{width:100%;padding:var(--input-padding-y,.5rem) var(--input-padding-x,.75rem);border:1px solid var(--input-border,var(--semantic-border-default));border-radius:var(--input-border-radius,var(--border-radius-md));background:var(--input-background,var(--semantic-background-primary));color:var(--input-text,var(--semantic-text-primary));font-size:var(--type-scale-body-font-size);font-family:inherit;line-height:var(--line-height-normal);transition:border-color var(--duration-fast,.1s) ease, box-shadow var(--duration-fast,.1s) ease}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--input-border-focus,var(--semantic-border-focus));outline:none;box-shadow:0 0 0 3px #3b82f626}.form-textarea{resize:vertical;min-height:80px}.form-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 .75rem center;background-repeat:no-repeat;padding-right:2.25rem}.form-input--error,.form-select--error,.form-textarea--error{border-color:var(--semantic-border-error,var(--semantic-status-negative))}.form-input--error:focus,.form-select--error:focus,.form-textarea--error:focus{box-shadow:0 0 0 3px #ef444426}.form-error{font-size:var(--type-scale-caption-font-size);color:var(--semantic-status-negative);min-height:1.25em}.form-error[role=alert]{font-weight:var(--font-weight-medium)}.form-error-summary{margin-bottom:var(--spacing-4);padding:var(--spacing-3);border:2px solid var(--semantic-status-negative);border-radius:var(--border-radius-md);background:var(--semantic-background-elevated);color:var(--semantic-text-primary)}.form-error-summary:focus-visible{outline:3px solid var(--semantic-border-focus);outline-offset:2px}.form-error-summary__title{margin:0 0 var(--spacing-2);font-weight:var(--font-weight-semibold)}.form-error-summary__list{margin:0;padding-inline-start:var(--spacing-5)}.form-error-summary__list a{color:inherit;text-underline-offset:2px;text-decoration:underline}.form-radio-group{border:none;padding:0}.form-radio-group__legend{font-size:var(--type-scale-body-font-size);font-weight:var(--font-weight-medium);color:var(--semantic-text-primary);margin-bottom:var(--spacing-2)}.form-radio-group__options{gap:var(--spacing-3);flex-wrap:wrap;display:flex}.form-radio-option{align-items:center;gap:var(--spacing-2);cursor:pointer;display:flex}.form-radio-option input[type=radio]{accent-color:var(--semantic-interactive-default);width:1rem;height:1rem;margin:0}.form-radio-option__label{font-size:var(--type-scale-body-font-size);color:var(--semantic-text-primary)}.budget-form__template-list{gap:var(--spacing-3);margin-top:var(--spacing-3);display:grid}.budget-form__template-card{align-items:flex-start;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-secondary);cursor:pointer;display:flex}.budget-form__template-card--selected{border-color:var(--semantic-interactive-default);box-shadow:0 0 0 2px #3b82f61f}.budget-form__template-card--disabled{opacity:.7;cursor:not-allowed}.budget-form__template-card input[type=radio]{margin-top:.125rem}.budget-form__template-card-content{gap:var(--spacing-1);color:var(--semantic-text-primary);flex-direction:column;flex:1;display:flex}.budget-form__template-card-header{justify-content:space-between;align-items:center;gap:var(--spacing-2);display:flex}.budget-form__template-badge{background:var(--semantic-background-primary);color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-medium);border-radius:999px;align-items:center;padding:.125rem .5rem;display:inline-flex}.budget-form__template-preview{gap:var(--spacing-3);padding:var(--spacing-4);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);background:var(--semantic-background-secondary);flex-direction:column;display:flex}.budget-form__template-guidance,.budget-form__template-total{color:var(--semantic-text-primary);margin:0}.budget-form__template-items{gap:var(--spacing-2);margin:0;padding:0;list-style:none;display:grid}.budget-form__template-item{justify-content:space-between;align-items:center;gap:var(--spacing-3);color:var(--semantic-text-primary);display:flex}.form-actions{justify-content:flex-end;gap:var(--spacing-3);margin-top:var(--spacing-5);display:flex}.form-button{justify-content:center;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-5);border-radius:var(--border-radius-md);font-size:var(--type-scale-body-font-size);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background-color var(--duration-fast,.1s) ease, opacity var(--duration-fast,.1s) ease;border:1px solid #0000;min-height:40px;font-family:inherit;display:inline-flex}.form-button:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}.form-button--primary{background:var(--semantic-interactive-default);color:var(--semantic-text-inverse);border-color:var(--semantic-interactive-default)}.form-button--primary:hover:not(:disabled){background:var(--semantic-interactive-hover);border-color:var(--semantic-interactive-hover)}.form-button--primary:active:not(:disabled){background:var(--semantic-interactive-pressed);border-color:var(--semantic-interactive-pressed)}.form-button--secondary{color:var(--semantic-text-primary);border-color:var(--semantic-border-default);background:0 0}.form-button--secondary:hover:not(:disabled){background:var(--semantic-background-secondary)}.form-button:disabled{opacity:.6;cursor:not-allowed}.confirm-dialog__panel{max-width:420px;padding:var(--spacing-5)}.confirm-dialog__title{margin-bottom:var(--spacing-3)}.confirm-dialog__message{color:var(--semantic-text-secondary);font-size:var(--type-scale-body-font-size);line-height:var(--line-height-relaxed,1.5);margin:0}.confirm-dialog__actions{margin-top:var(--spacing-6);flex-wrap:wrap}.confirm-dialog__confirm{min-width:120px;transition:filter var(--duration-fast,.1s) ease, opacity var(--duration-fast,.1s) ease}.confirm-dialog__confirm:hover:not(:disabled),.confirm-dialog__confirm:active:not(:disabled){filter:brightness(.95)}.confirm-dialog__confirm--danger{background:var(--semantic-status-negative);color:var(--color-neutral-50,#fff);border-color:var(--semantic-status-negative)}.confirm-dialog__confirm--warning{background:var(--semantic-status-warning);color:var(--color-neutral-950,#111827);border-color:var(--semantic-status-warning)}.confirm-dialog__confirm--info{background:var(--semantic-status-info);color:var(--color-neutral-950,#111827);border-color:var(--semantic-status-info)}.confirm-dialog__spinner{border:2px solid #ffffff59;border-top-color:currentColor;border-radius:999px;width:.875rem;height:.875rem;animation:1s linear infinite confirm-dialog-spinner-rotate}@keyframes confirm-dialog-spinner-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.keyboard-shortcuts__panel{max-width:560px}.keyboard-shortcuts__title{margin-bottom:var(--spacing-3)}.keyboard-shortcuts__description{margin:0 0 var(--spacing-4);color:var(--semantic-text-secondary);line-height:var(--line-height-relaxed,1.5)}.keyboard-shortcuts__table{border-collapse:collapse;width:100%}.keyboard-shortcuts__table th,.keyboard-shortcuts__table td{padding:var(--spacing-3);border-top:1px solid var(--semantic-border-default);text-align:left;vertical-align:top}.keyboard-shortcuts__table thead th{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-semibold)}.keyboard-shortcuts__category-row th{background:var(--semantic-background-secondary);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}.keyboard-shortcuts__key{border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-sm);background:var(--semantic-background-secondary);min-width:3rem;color:var(--semantic-text-primary);font-family:inherit;font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-semibold);justify-content:center;align-items:center;padding:.25rem .5rem;display:inline-flex}.keyboard-shortcuts__actions{justify-content:flex-end}.command-palette__panel{max-width:640px;padding:var(--spacing-4)}.command-palette__title{margin:0 0 var(--spacing-1);color:var(--semantic-text-primary);font-size:var(--type-scale-title-font-size);font-weight:var(--type-scale-title-font-weight)}.command-palette__description{margin:0 0 var(--spacing-3);color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size)}.command-palette__input{width:100%;padding: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}.command-palette__input:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}.command-palette__list{gap:var(--spacing-1);max-height:min(420px,55dvh);margin-top:var(--spacing-3);flex-direction:column;display:flex;overflow-y:auto}.command-palette__item{justify-content:space-between;align-items:center;gap:var(--spacing-3);width:100%;padding:var(--spacing-3);border-radius:var(--border-radius-md);color:var(--semantic-text-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.command-palette__item:hover,.command-palette__item--active,.command-palette__item[aria-selected=true]{background:var(--semantic-background-secondary)}.command-palette__item:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:-2px}.command-palette__item-text{flex-direction:column;gap:2px;min-width:0;display:flex}.command-palette__item-label{font-weight:var(--font-weight-medium)}.command-palette__item-description{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size)}.command-palette__shortcut{border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-sm);background:var(--semantic-background-primary);color:var(--semantic-text-secondary);font:inherit;font-size:var(--type-scale-caption-font-size);flex:none;padding:.2rem .45rem}.command-palette__empty{padding:var(--spacing-4);color:var(--semantic-text-secondary);text-align:center;margin:0}.form-category-suggestion{align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);background:var(--color-blue-50,#eff6ff);border:1px solid var(--semantic-status-info,#3b82f6);border-radius:var(--border-radius-md);font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-primary);display:flex}.form-category-suggestion__text{font-weight:var(--font-weight-medium);flex:1}.form-category-suggestion__accept{padding:var(--spacing-1) var(--spacing-3);background:var(--semantic-interactive-default);color:var(--semantic-text-inverse);border-radius:var(--border-radius-sm,var(--border-radius-md));font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-semibold);cursor:pointer;white-space:nowrap;transition:background-color var(--duration-fast,.1s) ease;border:none;align-items:center;display:inline-flex}.form-category-suggestion__accept:hover{background:var(--semantic-interactive-hover)}.form-category-suggestion__accept:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}.form-banner-error,.form-submit-summary{align-items:center;gap:var(--spacing-2);padding:var(--spacing-3);background:var(--color-red-50,#fef2f2);border:1px solid var(--semantic-status-negative);border-radius:var(--border-radius-md);color:var(--semantic-status-negative);font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-medium);display:flex}.form-submit-summary{margin-top:var(--spacing-4)}@media (max-width:480px){.form-dialog__panel{max-width:100%;max-height:100dvh;padding:var(--spacing-4);border-radius:0}.confirm-dialog__panel{max-width:min(420px,100%);max-height:calc(100dvh - var(--spacing-8));border-radius:var(--border-radius-lg,var(--border-radius-md));padding:var(--spacing-5)}.form-actions{flex-direction:column-reverse}.confirm-dialog__actions{flex-direction:row}.form-button{width:100%}.confirm-dialog__actions .form-button{flex:140px;width:auto}.form-radio-group__options{flex-direction:column}}@media (prefers-color-scheme:dark){html:not([data-theme=light]) .form-dialog__backdrop{background:#000000b3}html:not([data-theme=light]) .form-select{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='%23aaa' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}html:not([data-theme=light]) .form-banner-error,html:not([data-theme=light]) .form-submit-summary{background:#ef44441a}html:not([data-theme=light]) .form-category-suggestion{background:#3b82f61a}}[data-theme=dark] .form-dialog__backdrop{background:#000000b3}[data-theme=dark] .form-select{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='%23aaa' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}[data-theme=dark] .form-banner-error,[data-theme=dark] .form-submit-summary{background:#ef44441a}[data-theme=dark] .form-category-suggestion{background:#3b82f61a}@media (prefers-reduced-motion:reduce){.form-dialog__panel{animation:none}.confirm-dialog__spinner{display:none}.form-input,.form-select,.form-textarea,.form-button,.confirm-dialog__confirm,.form-category-suggestion__accept{transition:none}}@media (prefers-contrast:more){.form-input,.form-select,.form-textarea,.form-input--error,.form-select--error,.form-textarea--error,.form-dialog__panel,.form-button{border-width:2px}}.form-hint{margin-top:var(--spacing-1,.25rem);font-size:var(--font-size-sm,.75rem);color:var(--semantic-text-secondary,#6b7280);display:block}.form-tags{gap:var(--spacing-2,.5rem);margin-top:var(--spacing-2,.5rem);flex-wrap:wrap;display:flex}.form-tag-chip{padding:var(--spacing-1,.25rem) var(--spacing-2,.5rem);font-size:var(--font-size-sm,.75rem);background-color:var(--semantic-surface-secondary,#e5e7eb);color:var(--semantic-text-primary,#111827);border-radius:var(--radius-full,9999px);align-items:center;line-height:1.4;display:inline-flex}[data-theme=dark] .form-tag-chip{background-color:var(--semantic-surface-secondary,#374151);color:var(--semantic-text-primary,#f3f4f6)}.form-amount-input{gap:var(--spacing-3);flex-direction:column;display:flex}.form-amount-input__display{margin-bottom:0}.form-amount-input__controls{align-items:stretch;gap:var(--spacing-2);display:flex}.form-amount-input__controls .form-input{text-align:center;font-variant-numeric:tabular-nums;flex:auto}.form-amount-input__toggle{min-width:2.75rem;padding:0 var(--spacing-3);border:1px solid var(--input-border,var(--semantic-border-default));border-radius:var(--input-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;font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);cursor:pointer;transition:border-color var(--duration-fast,.1s) ease, box-shadow var(--duration-fast,.1s) ease, color var(--duration-fast,.1s) ease;flex:none}.form-amount-input__toggle:hover{border-color:var(--input-border-focus,var(--semantic-border-focus))}.form-amount-input__toggle:focus-visible{border-color:var(--input-border-focus,var(--semantic-border-focus));outline:none;box-shadow:0 0 0 3px #3b82f626}.form-amount-input__toggle--negative{color:var(--semantic-status-negative)}.explain-this{flex-shrink:0;align-items:center;display:inline-flex;position:relative}.explain-this__trigger,.explain-this__close{border:1px solid var(--semantic-border,#d1d5db);background:var(--semantic-surface-primary,#fff);color:var(--semantic-text-secondary,#4b5563);border-radius:999px;justify-content:center;align-items:center;transition:background-color .12s,color .12s,border-color .12s,box-shadow .12s;display:inline-flex}.explain-this__trigger{cursor:pointer;width:1.5rem;height:1.5rem;padding:0}.explain-this__close{cursor:pointer;width:1.75rem;height:1.75rem;padding:0}.explain-this__trigger:hover,.explain-this__trigger:focus-visible,.explain-this__close:hover,.explain-this__close:focus-visible{background:var(--semantic-surface-secondary,#eff6ff);color:var(--semantic-interactive-default,#2563eb);border-color:var(--semantic-interactive-default,#2563eb);box-shadow:0 0 0 3px color-mix(in srgb, var(--semantic-interactive-default,#2563eb) 18%, transparent);outline:none}.explain-this__popover{top:calc(100% + var(--spacing-2,.5rem));z-index:20;width:min(22rem,100vw - 2rem);padding:var(--spacing-4,1rem);border-radius:var(--radius-lg,.875rem);border:1px solid var(--semantic-border,#d1d5db);background:var(--semantic-surface-primary,#fff);position:absolute;left:0;box-shadow:0 12px 30px #0f172a24,0 4px 12px #0f172a14}.explain-this__header{justify-content:space-between;align-items:flex-start;gap:var(--spacing-3,.75rem);margin-bottom:var(--spacing-2,.5rem);display:flex}.explain-this__term{font-size:var(--type-scale-body-large-font-size,1rem);font-weight:var(--font-weight-semibold,600);color:var(--semantic-text-primary,#111827);margin:0}.explain-this__definition{margin:0 0 var(--spacing-3,.75rem);color:var(--semantic-text-primary,#111827);line-height:1.5}.explain-this__section{gap:var(--spacing-1,.25rem);display:grid}.explain-this__section+.explain-this__section{margin-top:var(--spacing-3,.75rem)}.explain-this__section-label{font-size:var(--type-scale-caption-font-size,.875rem);font-weight:var(--font-weight-semibold,600);color:var(--semantic-text-secondary,#4b5563);text-transform:uppercase;letter-spacing:.04em}.explain-this__section p{color:var(--semantic-text-secondary,#374151);margin:0;line-height:1.5}.explain-this__section--accent{padding-top:var(--spacing-3,.75rem);border-top:1px solid var(--semantic-border,#e5e7eb)}@media (max-width:640px){.explain-this__popover{left:auto;right:0}}.conflict-dialog-overlay{z-index:1000;padding:var(--spacing-4,16px);background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.conflict-dialog{background:var(--semantic-background-primary,#fff);border-radius:var(--border-radius-lg,12px);width:100%;max-width:640px;max-height:85vh;box-shadow:var(--shadow-lg,0 10px 15px -3px #0000001a);flex-direction:column;display:flex;overflow:hidden}.conflict-dialog__header{align-items:center;gap:var(--spacing-3,12px);padding:var(--spacing-4,16px) var(--spacing-5,20px);border-bottom:1px solid var(--semantic-border-default,#e5e7eb);display:flex}.conflict-dialog__title{font-size:var(--type-scale-h4-font-size,1.125rem);font-weight:var(--font-weight-semibold,600);color:var(--semantic-text-primary,#111827);flex:1;margin:0}.conflict-dialog__counter{font-size:var(--type-scale-caption-font-size,.75rem);color:var(--semantic-text-secondary,#6b7280);white-space:nowrap}.conflict-dialog__close{border-radius:var(--border-radius-sm,4px);width:32px;height:32px;color:var(--semantic-text-secondary,#6b7280);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.conflict-dialog__close:hover{background:var(--semantic-background-elevated,#f3f4f6)}.conflict-dialog__close:focus-visible{outline:2px solid var(--semantic-border-focus,#3b82f6);outline-offset:2px}.conflict-dialog__body{padding:var(--spacing-4,16px) var(--spacing-5,20px);flex:1;overflow-y:auto}.conflict-dialog__description{margin:0 0 var(--spacing-4,16px);font-size:var(--type-scale-body-font-size,.875rem);color:var(--semantic-text-secondary,#6b7280);line-height:var(--line-height-relaxed,1.625)}.conflict-dialog__description code{background:var(--semantic-background-elevated,#f3f4f6);border-radius:var(--border-radius-sm,4px);padding:2px 6px;font-family:monospace;font-size:.85em}.conflict-dialog__comparison{gap:var(--spacing-3,12px);grid-template-columns:1fr;display:grid}@media (min-width:640px){.conflict-dialog__comparison{grid-template-columns:1fr 1fr}}.conflict-dialog__version{border:2px solid var(--semantic-border-default,#e5e7eb);border-radius:var(--border-radius-md,8px);overflow:hidden}.conflict-dialog__version--client{border-color:var(--color-blue-300,#93c5fd)}.conflict-dialog__version--server{border-color:var(--color-green-300,#86efac)}.conflict-dialog__version-title{padding:var(--spacing-2,8px) var(--spacing-3,12px);font-size:var(--type-scale-caption-font-size,.75rem);font-weight:var(--font-weight-semibold,600);text-transform:uppercase;letter-spacing:.05em;margin:0}.conflict-dialog__version--client .conflict-dialog__version-title{background-color:var(--color-blue-50,#eff6ff);color:var(--color-blue-800,#1e40af)}.conflict-dialog__version--server .conflict-dialog__version-title{background-color:var(--color-green-50,#f0fdf4);color:var(--color-green-800,#166534)}.conflict-dialog__data{padding:var(--spacing-3,12px);font-family:monospace;font-size:var(--type-scale-caption-font-size,.75rem);line-height:var(--line-height-relaxed,1.625);white-space:pre-wrap;word-break:break-all;background:var(--semantic-background-primary,#fff);color:var(--semantic-text-primary,#111827);margin:0;overflow-x:auto}.conflict-dialog__footer{gap:var(--spacing-3,12px);padding:var(--spacing-4,16px) var(--spacing-5,20px);border-top:1px solid var(--semantic-border-default,#e5e7eb);display:flex}.conflict-dialog__action{min-height:40px;padding:var(--spacing-2,8px) var(--spacing-4,16px);border-radius:var(--border-radius-md,8px);font:inherit;font-weight:var(--font-weight-medium,500);cursor:pointer;transition:background-color var(--duration-fast,.1s) ease;border:2px solid #0000;flex:1}.conflict-dialog__action:focus-visible{outline:2px solid var(--semantic-border-focus,#3b82f6);outline-offset:2px}.conflict-dialog__action:disabled{opacity:.6;cursor:not-allowed}.conflict-dialog__action--client{background:var(--color-blue-600,#2563eb);color:#fff;border-color:var(--color-blue-600,#2563eb)}.conflict-dialog__action--client:hover:not(:disabled){background:var(--color-blue-700,#1d4ed8)}.conflict-dialog__action--server{background:var(--semantic-background-primary,#fff);color:var(--semantic-text-primary,#111827);border-color:var(--semantic-border-default,#e5e7eb)}.conflict-dialog__action--server:hover:not(:disabled){background:var(--semantic-background-elevated,#f3f4f6)}@media (prefers-color-scheme:dark){html:not([data-theme=light]) .conflict-dialog{background:var(--semantic-background-secondary,#1f2937)}html:not([data-theme=light]) .conflict-dialog__version--client .conflict-dialog__version-title{color:var(--color-blue-300,#93c5fd);background-color:#3b82f626}html:not([data-theme=light]) .conflict-dialog__version--server .conflict-dialog__version-title{color:var(--color-green-300,#86efac);background-color:#22c55e26}html:not([data-theme=light]) .conflict-dialog__data{background:var(--semantic-background-primary,#111827)}}[data-theme=dark] .conflict-dialog{background:var(--semantic-background-secondary,#1f2937)}[data-theme=dark] .conflict-dialog__version--client .conflict-dialog__version-title{color:var(--color-blue-300,#93c5fd);background-color:#3b82f626}[data-theme=dark] .conflict-dialog__version--server .conflict-dialog__version-title{color:var(--color-green-300,#86efac);background-color:#22c55e26}[data-theme=dark] .conflict-dialog__data{background:var(--semantic-background-primary,#111827)}@media (prefers-reduced-motion:reduce){.conflict-dialog__action{transition:none}}@media (prefers-contrast:more){.conflict-dialog__version,.conflict-dialog__action{border-width:3px}}.date-picker{width:100%;position:relative}.date-picker--disabled{opacity:.7}.date-picker__control{position:relative}.date-picker__input{padding-right:5.5rem}.date-picker__action-group{top:50%;right:var(--spacing-2,.5rem);align-items:center;gap:var(--spacing-1,.25rem);display:inline-flex;position:absolute;transform:translateY(-50%)}.date-picker__icon-button,.date-picker__footer-button{border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md,.5rem);background:var(--semantic-background-primary);min-width:2.25rem;min-height:2.25rem;color:var(--semantic-text-primary);font:inherit;cursor:pointer;transition:border-color var(--duration-fast,.12s) ease, background-color var(--duration-fast,.12s) ease, transform var(--duration-fast,.12s) ease;justify-content:center;align-items:center;display:inline-flex}.date-picker__icon-button:hover,.date-picker__footer-button:hover{background:var(--semantic-background-secondary,#0f172a0f);border-color:var(--semantic-border-focus,var(--semantic-border-default))}.date-picker__icon-button:focus-visible,.date-picker__footer-button:focus-visible,.date-picker__day:focus-visible,.date-picker__select:focus-visible{outline:2px solid var(--semantic-border-focus,#2563eb);outline-offset:2px}.date-picker__icon-button:disabled,.date-picker__footer-button:disabled,.date-picker__day:disabled{opacity:.45;cursor:not-allowed}.date-picker__message{margin-top:var(--spacing-1,.25rem)}.date-picker__panel{top:calc(100% + var(--spacing-2,.5rem));z-index:30;width:min(22rem,100vw - 2rem);padding:var(--spacing-4,1rem);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-lg,.75rem);background:var(--semantic-background-primary);box-shadow:var(--shadow-lg,0 20px 40px #0f172a29);position:absolute;left:0}.date-picker__header,.date-picker__title-group,.date-picker__select-group,.date-picker__nav-group,.date-picker__footer{align-items:center;display:flex}.date-picker__header,.date-picker__title-group{justify-content:space-between;gap:var(--spacing-3,.75rem)}.date-picker__header{margin-bottom:var(--spacing-3,.75rem)}.date-picker__title-group{flex:auto;min-width:0}.date-picker__title{font-size:var(--type-scale-body-font-size);font-weight:var(--font-weight-semibold,600);color:var(--semantic-text-primary);margin:0}.date-picker__select-group{gap:var(--spacing-2,.5rem);flex-wrap:wrap}.date-picker__nav-group{gap:var(--spacing-1,.25rem)}.date-picker__select{border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md,.5rem);background:var(--semantic-background-primary);min-height:2.25rem;color:var(--semantic-text-primary);padding:0 var(--spacing-2,.5rem);font:inherit}.date-picker__weekdays,.date-picker__grid{gap:var(--spacing-1,.25rem);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.date-picker__weekdays{margin-bottom:var(--spacing-2,.5rem)}.date-picker__weekday{text-align:center;font-size:var(--type-scale-caption-font-size,.75rem);font-weight:var(--font-weight-medium,500);color:var(--semantic-text-secondary)}.date-picker__day{border-radius:var(--border-radius-md,.5rem);min-height:2.5rem;color:var(--semantic-text-primary);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;display:inline-flex}.date-picker__day:hover:not(:disabled){background:var(--semantic-background-secondary,#0f172a0f)}.date-picker__day--outside-month{color:var(--semantic-text-secondary)}.date-picker__day--today{border-color:var(--semantic-border-focus,#2563eb)}.date-picker__day--highlighted:not(:disabled){background:var(--semantic-background-secondary,#2563eb1f)}.date-picker__day--selected{background:var(--semantic-interactive-default,#2563eb);color:var(--semantic-text-onbrand,#fff)}.date-picker__day--selected:hover:not(:disabled),.date-picker__day--selected.date-picker__day--highlighted:not(:disabled){background:var(--semantic-interactive-hover,#1d4ed8)}.date-picker__footer{justify-content:space-between;gap:var(--spacing-2,.5rem);margin-top:var(--spacing-3,.75rem)}.date-picker__footer-button{flex:50%;min-height:2.5rem}@media (max-width:640px){.date-picker__panel{width:min(100%,100vw - 2rem);padding:var(--spacing-3,.75rem)}.date-picker__header,.date-picker__title-group{flex-direction:column;align-items:stretch}.date-picker__nav-group{justify-content:flex-end}}.amount-display{justify-content:center;align-items:center;gap:var(--spacing-1,.25rem);width:100%;padding:var(--spacing-4,1rem);border:1px solid var(--semantic-border-default,#d1d5db);border-radius:var(--border-radius-lg,.75rem);background:var(--semantic-background-secondary,#f8fafc);flex-direction:column;display:flex}.amount-display__label{font-size:var(--type-scale-caption-font-size,.75rem);font-weight:var(--font-weight-semibold,600);letter-spacing:.08em;text-transform:uppercase;color:var(--semantic-text-secondary,#6b7280)}.amount-display__value{font-size:clamp(2rem,6vw,3rem);font-weight:var(--font-weight-bold,700);letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--semantic-text-primary,#111827);line-height:1}.amount-display--empty .amount-display__value{color:var(--semantic-text-secondary,#6b7280)}@media (prefers-contrast:more){.amount-display{border-width:2px}}.empty-state{text-align:center;padding:var(--spacing-10) var(--spacing-4);justify-content:center;align-items:center;gap:var(--spacing-4);flex-direction:column;display:flex}.empty-state__icon{width:64px;height:64px;color:var(--semantic-text-disabled)}.empty-state__title{font-size:var(--type-scale-title-font-size);font-weight:var(--type-scale-title-font-weight);color:var(--semantic-text-primary)}.empty-state__description{font-size:var(--type-scale-body-font-size);color:var(--semantic-text-secondary);max-width:360px}.error-banner{align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);background:var(--color-red-50);border:1px solid var(--semantic-status-negative);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-4);display:flex}.error-banner__icon{stroke:var(--semantic-status-negative);stroke-width:2px;flex-shrink:0}.error-banner__message{color:var(--semantic-status-negative);font-size:var(--type-scale-body-font-size);line-height:var(--type-scale-body-line-height);flex:1;margin:0}.error-banner__retry{padding:var(--spacing-1) var(--spacing-3);border:1px solid var(--semantic-status-negative);border-radius:var(--border-radius-md);color:var(--semantic-status-negative);cursor:pointer;font-size:var(--type-scale-label-font-size);font-weight:var(--type-scale-label-font-weight);background:0 0}.error-banner__retry:hover{background:var(--semantic-status-negative);color:var(--semantic-text-inverse)}.error-banner__retry:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}.error-banner__dismiss{border-radius:var(--border-radius-sm);width:32px;height:32px;color:var(--semantic-status-negative);cursor:pointer;font-size:var(--font-size-lg);background:0 0;border:none;justify-content:center;align-items:center;line-height:1;display:flex}.error-banner__dismiss:hover{background:var(--semantic-status-negative);color:var(--semantic-text-inverse)}.error-banner__dismiss:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}[data-theme=dark] .error-banner{background:color-mix(in srgb, var(--color-red-700) 25%, var(--semantic-background-primary))}@media (prefers-color-scheme:dark){html:not([data-theme=light]):not([data-theme=dark]) .error-banner{background:color-mix(in srgb, var(--color-red-700) 25%, var(--semantic-background-primary))}}[data-theme=dark-oled] .error-banner{background:color-mix(in srgb, var(--color-red-700) 20%, #000)}@media (prefers-contrast:more){.error-banner{border-width:2px}}.auth-page{min-height:100dvh;padding:var(--spacing-4);background:var(--semantic-background-primary);justify-content:center;align-items:center;display:flex}.auth-card{width:100%;max-width:420px;padding:var(--spacing-6);background:var(--card-background);border:1px solid var(--card-border);border-radius:var(--card-border-radius);box-shadow:var(--card-shadow)}.auth-brand{text-align:center;margin-bottom:var(--spacing-6)}.auth-brand__name{font-size:var(--type-scale-headline-font-size);font-weight:var(--type-scale-headline-font-weight);color:var(--semantic-interactive-default);margin-bottom:var(--spacing-2)}.auth-brand__tagline{font-size:var(--type-scale-body-font-size,1rem);color:var(--semantic-text-secondary)}.auth-form{gap:var(--spacing-4);flex-direction:column;display:flex}.auth-form[hidden]{display:none}.auth-actions{gap:var(--spacing-4);flex-direction:column;display:flex}.auth-field{gap:var(--spacing-1);flex-direction:column;display:flex}.auth-field__label{font-size:var(--type-scale-label-font-size);font-weight:var(--type-scale-label-font-weight);color:var(--semantic-text-primary)}.auth-field__input{padding:var(--input-padding-y,.5rem) var(--input-padding-x,.75rem);border:1px solid var(--input-border);border-radius:var(--input-border-radius);background:var(--input-background);color:var(--input-text);font:inherit}.auth-field__input:focus{border-color:var(--input-border-focus);outline:none;box-shadow:0 0 0 3px #3b82f626}.auth-field__input[aria-invalid=true]{border-color:var(--semantic-border-error)}.auth-field__hint{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary)}.auth-field__error{font-size:var(--type-scale-caption-font-size);color:var(--semantic-status-negative)}.auth-submit{justify-content:center;align-items:center;gap:var(--spacing-2);width:100%;min-height:44px;padding:var(--spacing-2) var(--spacing-4);border:1px solid var(--semantic-interactive-default);border-radius:var(--border-radius-md);background:var(--semantic-interactive-default);color:var(--semantic-text-inverse);font:inherit;font-weight:var(--font-weight-semibold);cursor:pointer;transition:background-color var(--duration-fast,.1s) ease, border-color var(--duration-fast,.1s) ease;display:inline-flex}.auth-passkey-button{width:100%}.auth-submit:hover:not(:disabled){background:var(--semantic-interactive-hover);border-color:var(--semantic-interactive-hover)}.auth-submit:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}.auth-submit:disabled{opacity:.65;cursor:not-allowed}.auth-error-region{min-height:calc(var(--type-scale-caption-line-height,1.5) * var(--type-scale-caption-font-size,.875rem) + var(--spacing-2) * 2);margin-bottom:var(--spacing-4)}.auth-error{align-items:flex-start;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);border-radius:var(--border-radius-md);background:var(--color-red-50,#fef2f2);color:var(--semantic-status-negative);font-size:var(--type-scale-caption-font-size,.875rem);line-height:var(--type-scale-caption-line-height,1.5);text-align:start;display:flex}.auth-error__icon{flex:none;margin-top:.1em}.auth-error__text{margin:0}.auth-info{padding:var(--spacing-3);border-radius:var(--border-radius-md);background:var(--color-blue-50,#eff6ff);color:var(--semantic-status-info,var(--semantic-interactive-default));font-size:var(--type-scale-body-font-size,1rem);text-align:center}.auth-divider{text-align:center;margin:var(--spacing-4) 0;align-items:center;display:flex}.auth-divider:before,.auth-divider:after{content:"";border-bottom:1px solid var(--semantic-border-default,#e5e7eb);flex:1}.auth-divider__text{padding:0 var(--spacing-3);font-size:var(--type-scale-caption-font-size,.875rem);color:var(--semantic-text-secondary)}.auth-oauth-section{margin-top:var(--spacing-4)}.auth-disclosure{margin:var(--spacing-3) auto 0;padding:var(--spacing-1) var(--spacing-2);color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size,.875rem);cursor:pointer;background:0 0;border:none;text-decoration:underline;display:inline-block}.auth-disclosure:hover,.auth-disclosure:focus-visible{color:var(--semantic-text-primary)}.auth-footer{text-align:center;margin-top:var(--spacing-4);font-size:var(--type-scale-body-font-size,1rem);color:var(--semantic-text-secondary)}.auth-footer__link{color:var(--semantic-interactive-default);font-weight:var(--font-weight-medium);text-decoration:none}.auth-footer__link:hover{color:var(--semantic-interactive-hover);text-decoration:underline}.auth-footer__link:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px;border-radius:var(--border-radius-sm,2px)}@media (max-width:480px){.auth-page{padding:var(--spacing-3)}.auth-card{padding:var(--spacing-5)}}@media (prefers-reduced-motion:reduce){.auth-submit{transition:none}}@media (prefers-contrast:more){.auth-card,.auth-field__input{border-width:2px}}@media (prefers-color-scheme:dark){html:not([data-theme=light]) .auth-error{background:#ef44441f}html:not([data-theme=light]) .auth-info{background:#3b82f61f}}.auth-demo-banner{padding:var(--spacing-2) var(--spacing-3);border-radius:var(--border-radius-md);background:var(--color-amber-50,#fffbeb);border:1px solid var(--color-amber-200,#fde68a);color:var(--color-amber-800,#92400e);font-size:var(--type-scale-caption-font-size,.875rem);text-align:center;margin-bottom:var(--spacing-4)}@media (prefers-color-scheme:dark){html:not([data-theme=light]) .auth-demo-banner{color:var(--color-amber-300,#fcd34d);background:#f59e0b1f;border-color:#f59e0b4d}}.auth-instructions{color:var(--semantic-text-secondary);font-size:var(--type-scale-body-font-size,1rem);text-align:center;margin:0}.auth-forgot-password{text-align:right;font-size:var(--type-scale-caption-font-size);margin:0}.auth-password-strength{gap:var(--spacing-1);margin-top:var(--spacing-1);flex-direction:column;display:flex}.auth-password-strength__bar{background:var(--semantic-border-default,#e5e7eb);border-radius:var(--border-radius-sm,2px);height:4px;overflow:hidden}.auth-password-strength__fill{border-radius:var(--border-radius-sm,2px);height:100%;transition:width var(--duration-fast,.1s) ease, background-color var(--duration-fast,.1s) ease}.auth-password-strength__label{font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-medium);color:var(--semantic-text-secondary)}.auth-password-strength__feedback{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary)}@media (prefers-reduced-motion:reduce){.auth-password-strength__fill{transition:none}}.error-boundary__content{gap:var(--spacing-5);flex-direction:column;display:flex}.error-boundary__message{color:var(--semantic-text-primary);text-align:center;margin:0}.error-boundary__details{padding:var(--spacing-3);border-radius:var(--border-radius-md);background:var(--color-red-50,#fef2f2);color:var(--semantic-status-negative);font-size:var(--type-scale-caption-font-size,.875rem);word-break:break-word;margin:0}.error-boundary__actions{gap:var(--spacing-3);flex-direction:column;display:flex}.error-boundary__actions-title{font-size:var(--type-scale-title-font-size,1.125rem);color:var(--semantic-text-primary);text-align:center;margin:0}.error-boundary__secondary-action{min-height:44px;padding:var(--spacing-2) var(--spacing-4);border:1px solid var(--semantic-border-default,#d1d5db);border-radius:var(--border-radius-md);color:var(--semantic-text-primary);font-weight:var(--font-weight-medium);background:0 0;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.error-boundary__secondary-action:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}@media (prefers-color-scheme:dark){html:not([data-theme=light]) .error-boundary__details{background:#ef44441f}}[data-theme=dark] .error-boundary__details{background:#ef44441f}@media (prefers-contrast:more){.error-boundary__secondary-action{border-width:2px}}.loading-spinner{justify-content:center;align-items:center;display:inline-flex}.loading-spinner__svg{animation:1s linear infinite spinner-rotate}.loading-spinner__sr-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;position:absolute;overflow:hidden}@keyframes spinner-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.loading-spinner__svg{animation:none}}.page-header{justify-content:space-between;align-items:center;gap:var(--spacing-3);margin-bottom:var(--spacing-4);flex-wrap:wrap;display:flex}.page-heading{font-size:var(--type-scale-headline-font-size);font-weight:var(--type-scale-headline-font-weight);margin:0}.page-loading{padding:var(--spacing-8) 0;justify-content:center;display:flex}.page-loading--fullscreen{min-height:100vh;padding:var(--spacing-6);justify-content:center;align-items:center;display:flex}.page-error-wrapper{padding:var(--spacing-6)}.page-error-wrapper--centered{max-width:600px;margin:0 auto}.db-error-details{margin-top:var(--spacing-3);padding:var(--spacing-3);font-size:var(--font-size-sm,.875rem);color:var(--semantic-text-secondary,#666)}.db-error-recovery{margin-top:var(--spacing-3)}.db-error-recovery__reset{padding:var(--spacing-2) var(--spacing-4);border:1px solid var(--semantic-border-strong,var(--semantic-text-secondary,#666));border-radius:var(--border-radius-md);color:var(--semantic-text-primary);cursor:pointer;font-size:var(--type-scale-label-font-size);font-weight:var(--type-scale-label-font-weight);background:0 0}.db-error-recovery__reset:hover:not(:disabled){background:var(--semantic-background-secondary)}.db-error-recovery__reset:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}.db-error-recovery__reset:disabled{cursor:progress;opacity:.6}.db-error-recovery__hint{margin-top:var(--spacing-2);font-size:var(--font-size-sm,.875rem);color:var(--semantic-text-secondary,#666)}.db-error-details__summary{cursor:pointer}.db-error-details__code{margin-top:var(--spacing-2);word-break:break-word;font-family:monospace}.page-summary{margin-bottom:var(--spacing-6);color:var(--semantic-text-secondary)}.page-summary__converted{font-size:var(--type-scale-body-font-size,.875rem);color:var(--semantic-text-secondary,#666)}.page-summary__converted-hint{font-size:var(--type-scale-caption-font-size,.75rem);color:var(--semantic-text-secondary,#999);font-style:italic}.page-heading-row{align-items:center;gap:var(--spacing-2);flex-wrap:wrap;display:flex}.purpose-filter{align-items:center;gap:var(--spacing-1);margin-bottom:var(--spacing-4);padding:var(--spacing-1);border:1px solid var(--semantic-border-default);background:var(--semantic-background-secondary,#f5f5f5);border-radius:999px;flex-wrap:wrap;display:inline-flex}.purpose-filter__button{color:var(--semantic-text-secondary);padding:var(--spacing-2) var(--spacing-3);font:inherit;font-weight:var(--font-weight-medium,500);cursor:pointer;background:0 0;border:0;border-radius:999px}.purpose-filter__button:hover{color:var(--semantic-text-primary)}.purpose-filter__button:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}.purpose-filter__button--selected{background:var(--semantic-background-primary,#fff);color:var(--semantic-text-primary);box-shadow:0 1px 2px #0f172a1f}.account-purpose-badge{border:1px solid var(--semantic-border-default);font-size:var(--type-scale-caption-font-size,.75rem);color:var(--semantic-text-secondary);white-space:nowrap;border-radius:999px;align-items:center;padding:.125rem .5rem;display:inline-flex}.account-purpose-badge--business{background:#2563eb14}.account-purpose-badge--personal{background:#05966914}.account-purpose-badge--both{background:#7c3aed14}.account-list-primary{align-items:center;gap:var(--spacing-2);flex-wrap:wrap;display:flex}.page-back-link{align-items:center;gap:var(--spacing-1);color:var(--semantic-text-secondary);text-decoration:none;display:inline-flex}.page-back-link:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}.page-back-link--spaced{margin-bottom:var(--spacing-3)}.page-actions{gap:var(--spacing-2);display:flex}.page-empty-text{color:var(--semantic-text-secondary);margin:0}.page-section-heading{font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-2)}.page-list-link{width:100%;color:inherit;text-decoration:none;display:flex}.page-card--spaced{margin-bottom:var(--spacing-6)}.page-detail-grid{gap:var(--spacing-4);grid-template-columns:1fr 1fr;display:grid}.page-status-text{margin-top:var(--spacing-4);color:var(--semantic-text-secondary)}.category-card__header{gap:var(--spacing-2);margin-bottom:var(--spacing-3);flex-direction:column;display:flex}.category-card__title-row{align-items:center;gap:var(--spacing-3);min-width:0;display:flex}.category-card__icon{border:1px solid var(--semantic-border-default);width:2rem;height:2rem;color:var(--semantic-text-inverse);border-radius:999px;flex:none;justify-content:center;align-items:center;font-size:1rem;line-height:1;display:inline-flex}.category-card__name{min-width:0;font-weight:var(--font-weight-semibold);overflow-wrap:anywhere;word-break:break-word;flex:auto;margin:0}.category-card__meta{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);overflow-wrap:anywhere;margin:0}.category-card__actions{justify-content:flex-end;gap:var(--spacing-2);flex-wrap:wrap;display:flex}.category-card__details{gap:var(--spacing-2);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin:0;display:grid}.category-card__details dd{overflow-wrap:anywhere;word-break:break-word;margin:0}.family-kids-setup{margin-bottom:var(--spacing-6)}.family-kids-setup__header{justify-content:space-between;align-items:flex-start;gap:var(--spacing-4);margin-bottom:var(--spacing-3);flex-wrap:wrap;display:flex}.family-kids-setup__intro{max-width:40rem}.family-kids-setup__lede{color:var(--semantic-text-secondary)}.family-kids-setup__status{margin-top:var(--spacing-2);color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size)}.family-kids-setup__note{color:var(--semantic-text-secondary);margin-bottom:var(--spacing-3)}.family-kids-setup__note-headline{color:var(--semantic-text-primary)}.family-kids-setup__list{gap:var(--spacing-2);margin:0;padding:0;list-style:none;display:grid}.family-kids-setup__item{align-items:baseline;gap:var(--spacing-2);flex-wrap:wrap;display:flex}.family-kids-setup__name{color:var(--semantic-text-primary)}.family-kids-setup__badge{font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-semibold);color:var(--semantic-text-primary);border:1px solid var(--semantic-border-default);border-radius:var(--radius-sm,.25rem);padding:0 var(--spacing-2)}.family-kids-setup__badge--present{color:var(--semantic-text-secondary)}.family-kids-setup__desc{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size)}.sync-status-bar{align-items:center;gap:var(--spacing-1,4px);padding:var(--spacing-1,4px) var(--spacing-3,12px);font-size:var(--type-scale-caption-font-size,.75rem);line-height:var(--line-height-normal,1.5);border-radius:var(--border-radius-full,9999px);top:var(--spacing-2,8px);right:var(--spacing-4,16px);z-index:100;pointer-events:auto;transition:background-color var(--duration-normal,.2s) ease, color var(--duration-normal,.2s) ease, opacity var(--duration-normal,.2s) ease;display:inline-flex;position:fixed;box-shadow:0 1px 3px #0000001a}.sync-status-bar--synced{background-color:var(--color-green-50,#f0fdf4);color:var(--color-green-800,#166534);border:1px solid var(--color-green-200,#bbf7d0);opacity:.8}.sync-status-bar--pending{background-color:var(--color-amber-50,#fffbeb);color:var(--color-amber-800,#92400e);border:1px solid var(--color-amber-200,#fde68a)}.sync-status-bar--syncing{background-color:var(--color-blue-50,#eff6ff);color:var(--color-blue-800,#1e40af);border:1px solid var(--color-blue-200,#bfdbfe)}.sync-status-bar--error{background-color:var(--color-red-50,#fef2f2);color:var(--color-red-800,#991b1b);border:1px solid var(--color-red-200,#fecaca)}.sync-status-bar--offline{background-color:var(--color-gray-100,#f3f4f6);color:var(--color-gray-600,#4b5563);border:1px solid var(--color-gray-300,#d1d5db)}.sync-status-bar--conflict{background-color:var(--color-orange-50,#fff7ed);color:var(--color-orange-800,#9a3412);border:1px solid var(--color-orange-200,#fed7aa)}.sync-status-bar__icon{flex-shrink:0;width:16px;height:16px}.sync-status-bar__text{flex:1}.sync-status-bar__time{color:inherit;opacity:.7;font-size:var(--type-scale-caption-font-size,.75rem)}.sync-status-bar__action{padding:var(--spacing-1,4px) var(--spacing-2,8px);border-radius:var(--border-radius-sm,4px);color:inherit;font-size:var(--type-scale-caption-font-size,.75rem);line-height:var(--line-height-normal,1.5);cursor:pointer;background:0 0;border:1px solid;flex-shrink:0}.sync-status-bar__action:hover{opacity:.8}.sync-status-bar__action:focus-visible{outline:2px solid var(--semantic-interactive-default,#3b82f6);outline-offset:2px}.sync-status-bar__spinner{animation:1s linear infinite sync-spin}@keyframes sync-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-color-scheme:dark){html:not([data-theme=light]) .sync-status-bar--synced{color:var(--color-green-200,#bbf7d0);background-color:#22c55e1f;border-color:#22c55e4d}html:not([data-theme=light]) .sync-status-bar--pending{color:var(--color-amber-200,#fde68a);background-color:#f59e0b1f;border-color:#f59e0b4d}html:not([data-theme=light]) .sync-status-bar--syncing{color:var(--color-blue-200,#bfdbfe);background-color:#3b82f61f;border-color:#3b82f64d}html:not([data-theme=light]) .sync-status-bar--error{color:var(--color-red-200,#fecaca);background-color:#ef44441f;border-color:#ef44444d}html:not([data-theme=light]) .sync-status-bar--offline{color:var(--color-gray-300,#d1d5db);background-color:#6b72801f;border-color:#6b72804d}html:not([data-theme=light]) .sync-status-bar--conflict{color:var(--color-orange-200,#fed7aa);background-color:#f973161f;border-color:#f973164d}}[data-theme=dark] .sync-status-bar--synced{color:var(--color-green-200,#bbf7d0);background-color:#22c55e1f;border-color:#22c55e4d}[data-theme=dark] .sync-status-bar--pending{color:var(--color-amber-200,#fde68a);background-color:#f59e0b1f;border-color:#f59e0b4d}[data-theme=dark] .sync-status-bar--syncing{color:var(--color-blue-200,#bfdbfe);background-color:#3b82f61f;border-color:#3b82f64d}[data-theme=dark] .sync-status-bar--error{color:var(--color-red-200,#fecaca);background-color:#ef44441f;border-color:#ef44444d}[data-theme=dark] .sync-status-bar--offline{color:var(--color-gray-300,#d1d5db);background-color:#6b72801f;border-color:#6b72804d}[data-theme=dark] .sync-status-bar--conflict{color:var(--color-orange-200,#fed7aa);background-color:#f973161f;border-color:#f973164d}@media (prefers-reduced-motion:reduce){.sync-status-bar{transition:none}.sync-status-bar__spinner{animation:none}}@media (prefers-contrast:more){.sync-status-bar,.sync-status-bar__action{border-width:2px}}.sortable-list{position:relative}.sortable-list__item{transition:transform .18s,box-shadow .18s,opacity .18s}.sortable-list__item--preview{transform:scale(1.01)}.sortable-list__placeholder{border:1px dashed var(--semantic-border-focus,#3b82f6);border-radius:var(--border-radius-md,8px);background:color-mix(in srgb, var(--semantic-border-focus,#3b82f6) 10%, transparent);margin:0;transition:min-height .18s,width .18s,background-color .18s}.sortable-list__preview{z-index:40;pointer-events:none;filter:drop-shadow(0 20px 30px #0f172a2e);position:fixed;top:0;left:0}.sortable-list__preview .sortable-list__item{opacity:.98}.sortable-list__preview [data-sortable-item-id]{transform:scale(1.01);box-shadow:0 18px 40px #0f172a38}.sortable-list__drag-handle{border-radius:var(--border-radius-sm,4px);width:2rem;height:2rem;color:var(--semantic-text-secondary,#6b7280);cursor:grab;touch-action:none;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.sortable-list__drag-handle:active{cursor:grabbing}.sortable-list__drag-handle:hover:not(:disabled){background:var(--semantic-background-elevated,#f3f4f6);color:var(--semantic-text-primary,#111827)}.sortable-list__drag-handle:focus-visible{outline:2px solid var(--semantic-border-focus,#3b82f6);outline-offset:2px}.sortable-list__drag-handle:disabled{cursor:default;opacity:.5}@media (prefers-reduced-motion:reduce){.sortable-list__item,.sortable-list__placeholder,.sortable-list__preview{transition:none}.sortable-list__preview [data-sortable-item-id]{transform:none}}.skeleton{background:linear-gradient(90deg, var(--semantic-background-secondary) 25%, var(--semantic-background-elevated) 50%, var(--semantic-background-secondary) 75%);animation:shimmer var(--skeleton-animation-duration,var(--animation-loading-duration,1.5s)) var(--skeleton-animation-easing,var(--animation-loading-easing,ease-in-out)) infinite;background-size:200% 100%;display:block}.skeleton__sr-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;position:absolute;overflow:hidden}.skeleton--line{border-radius:var(--border-radius-sm,4px);width:100%;height:16px}.skeleton--circle{border-radius:50%;flex-shrink:0;width:40px;height:40px}.skeleton--rectangle{border-radius:var(--border-radius-md,8px);width:100%;height:80px}.skeleton-page{gap:var(--spacing-4,16px);padding:var(--spacing-4,16px);flex-direction:column;display:flex}.skeleton-page__summary{gap:var(--spacing-4,16px);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.skeleton-page__filters{gap:var(--spacing-3,12px);flex-wrap:wrap;display:flex}.skeleton-page__list{gap:var(--spacing-3,12px);flex-direction:column;display:flex}.skeleton-page__row{align-items:center;gap:var(--spacing-3,12px);display:flex}.skeleton-page__row-text{gap:var(--spacing-1,4px);flex-direction:column;flex:1;min-width:0;display:flex}@media (prefers-reduced-motion:reduce){.skeleton{background:var(--semantic-background-secondary);background-size:auto;animation:none}}html[data-reduced-motion=true] .skeleton{background:var(--semantic-background-secondary);background-size:auto;animation:none}@media (max-width:480px){.skeleton-page__summary{grid-template-columns:1fr}}.toast-container{bottom:var(--spacing-4,16px);right:var(--spacing-4,16px);z-index:9999;gap:var(--spacing-2,8px);pointer-events:none;flex-direction:column-reverse;width:100%;max-width:400px;display:flex;position:fixed}.toast{align-items:flex-start;gap:var(--spacing-3,12px);padding:var(--spacing-3,12px) var(--spacing-4,16px);border-radius:var(--border-radius-md,8px);background:var(--semantic-background-elevated);border:1px solid var(--semantic-border-default);box-shadow:var(--shadow-md,0 4px 12px #00000026);pointer-events:auto;animation:slideInRight var(--duration-normal,.25s) var(--easing-decelerate,ease-out) both;display:flex}.toast__icon{flex-shrink:0;align-items:center;margin-top:2px;display:flex}.toast__type-label{font-weight:var(--font-weight-semibold,600);color:var(--semantic-text-primary);flex-shrink:0}.toast__message{font-size:var(--type-scale-body-font-size,.875rem);line-height:var(--type-scale-body-line-height,1.5);color:var(--semantic-text-primary);flex:1;margin:0}.toast__dismiss{border-radius:var(--border-radius-sm,4px);width:28px;height:28px;color:var(--semantic-text-secondary);cursor:pointer;font-size:var(--font-size-lg,1.125rem);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;line-height:1;display:flex}.toast__dismiss:hover{background:var(--semantic-background-secondary);color:var(--semantic-text-primary)}.toast__dismiss:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}.toast--success{border-left:4px solid var(--semantic-status-positive)}.toast--success .toast__icon{color:var(--semantic-status-positive)}.toast--error{border-left:4px solid var(--semantic-status-negative)}.toast--error .toast__icon{color:var(--semantic-status-negative)}.toast--warning{border-left:4px solid var(--semantic-status-warning)}.toast--warning .toast__icon{color:var(--semantic-status-warning)}.toast--info{border-left:4px solid var(--semantic-status-info)}.toast--info .toast__icon{color:var(--semantic-status-info)}@media (prefers-reduced-motion:reduce){.toast{animation:none}}html[data-reduced-motion=true] .toast{transition:none;animation:none}@media (max-width:480px){.toast-container{left:var(--spacing-2,8px);right:var(--spacing-2,8px);bottom:var(--spacing-2,8px);max-width:none}}@media (prefers-contrast:more),(forced-colors:active){.toast{border-width:2px}.toast--success,.toast--error,.toast--warning,.toast--info{border-left-width:4px}}.page-loader{min-height:200px}.page-loader__loading,.page-loader__error{padding:var(--spacing-4,16px)}.page-loader__empty{justify-content:center;align-items:center;min-height:300px;display:flex}.page-loader__default-skeleton{gap:var(--spacing-3,12px);flex-direction:column;display:flex}.page-loader__skeleton-line{border-radius:var(--border-radius-sm,4px);background:linear-gradient(90deg, var(--semantic-background-secondary) 25%, var(--semantic-background-elevated) 50%, var(--semantic-background-secondary) 75%);height:16px;animation:shimmer var(--skeleton-animation-duration,var(--animation-loading-duration,1.5s)) var(--skeleton-animation-easing,ease-in-out) infinite;background-size:200% 100%}.page-loader__skeleton-line--wide{width:80%}.page-loader__skeleton-line--medium{width:55%}.page-loader__skeleton-line--narrow{width:30%}.page-loader__skeleton-block{border-radius:var(--border-radius-md,8px);background:linear-gradient(90deg, var(--semantic-background-secondary) 25%, var(--semantic-background-elevated) 50%, var(--semantic-background-secondary) 75%);width:100%;height:120px;animation:shimmer var(--skeleton-animation-duration,var(--animation-loading-duration,1.5s)) var(--skeleton-animation-easing,ease-in-out) infinite;background-size:200% 100%}@media (prefers-reduced-motion:reduce){.page-loader__skeleton-line,.page-loader__skeleton-block{background:var(--semantic-background-secondary);background-size:auto;animation:none}}.empty-state__cta{padding:var(--spacing-2,8px) var(--spacing-5,20px);border-radius:var(--border-radius-md,8px);background:var(--semantic-interactive-default);color:var(--semantic-text-inverse);font-size:var(--type-scale-body-font-size,.875rem);font-weight:var(--type-scale-label-font-weight,600);cursor:pointer;transition:background-color var(--duration-fast,.15s) var(--easing-default,ease);border:none;justify-content:center;align-items:center;display:inline-flex}.empty-state__cta:hover{background:var(--semantic-interactive-hover)}.empty-state__cta:active{background:var(--semantic-interactive-pressed)}.empty-state__cta:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}.empty-state__cta:disabled{background:var(--semantic-interactive-disabled);cursor:not-allowed}.welcome-screen{text-align:center;padding:var(--spacing-12,48px) var(--spacing-4,16px);justify-content:center;align-items:center;gap:var(--spacing-4,16px);flex-direction:column;max-width:480px;margin:0 auto;display:flex}.welcome-screen__illustration{width:80px;height:80px;color:var(--semantic-text-disabled);margin-bottom:var(--spacing-2,8px)}.welcome-screen__title{font-size:var(--type-scale-heading-font-size,1.5rem);font-weight:var(--type-scale-heading-font-weight,700);color:var(--semantic-text-primary);margin:0}.welcome-screen__description{font-size:var(--type-scale-body-font-size,.875rem);line-height:var(--type-scale-body-line-height,1.5);color:var(--semantic-text-secondary);max-width:360px;margin:0}.welcome-screen__cta{padding:var(--spacing-3,12px) var(--spacing-6,24px);border-radius:var(--border-radius-md,8px);background:var(--semantic-interactive-default);color:var(--semantic-text-inverse);font-size:var(--type-scale-body-font-size,.875rem);font-weight:var(--type-scale-label-font-weight,600);cursor:pointer;transition:background-color var(--duration-fast,.15s) var(--easing-default,ease);margin-top:var(--spacing-2,8px);border:none;justify-content:center;align-items:center;display:inline-flex}.welcome-screen__cta:hover{background:var(--semantic-interactive-hover)}.welcome-screen__cta:active{background:var(--semantic-interactive-pressed)}.welcome-screen__cta:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}@media (prefers-reduced-motion:reduce){.empty-state__cta,.welcome-screen__cta{transition:none}}@media (max-width:480px){.welcome-screen{padding:var(--spacing-8,32px) var(--spacing-3,12px)}}.browser-warning{padding:var(--spacing-4);background:var(--color-yellow-50,#fefce8);border:1px solid var(--semantic-status-warning,#f59e0b);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-4)}.browser-warning:focus{outline:2px solid var(--semantic-border-focus);outline-offset:2px}.browser-warning__content{align-items:flex-start;gap:var(--spacing-3);display:flex}.browser-warning__icon{color:var(--semantic-status-warning,#f59e0b);margin-top:var(--spacing-1);flex-shrink:0}.browser-warning__body{flex:1;min-width:0}.browser-warning__title{margin:0 0 var(--spacing-2) 0;font-size:var(--type-scale-body-font-size);font-weight:var(--type-scale-label-font-weight,600);color:var(--semantic-text-primary);line-height:var(--type-scale-body-line-height)}.browser-warning__section{margin-bottom:var(--spacing-2)}.browser-warning__label{margin:0 0 var(--spacing-1) 0;font-size:var(--type-scale-label-font-size);font-weight:var(--type-scale-label-font-weight,600);color:var(--semantic-text-primary)}.browser-warning__list{padding-left:var(--spacing-5);margin:0;list-style:outside}.browser-warning__item{font-size:var(--type-scale-label-font-size);color:var(--semantic-text-secondary);line-height:1.5}.browser-warning__suggestion{margin:var(--spacing-2) 0 var(--spacing-1) 0;font-size:var(--type-scale-label-font-size);color:var(--semantic-text-secondary)}.browser-warning__browsers{gap:var(--spacing-3);margin:0;padding:0;list-style:none;display:flex}.browser-warning__browser-link{font-size:var(--type-scale-label-font-size);color:var(--semantic-text-link,#2563eb);text-underline-offset:2px;text-decoration:underline}.browser-warning__browser-link:hover{color:var(--semantic-text-link-hover,#1d4ed8)}.browser-warning__browser-link:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px;border-radius:var(--border-radius-sm)}.browser-warning__dismiss{border-radius:var(--border-radius-sm);width:32px;height:32px;color:var(--semantic-text-secondary);cursor:pointer;font-size:var(--font-size-lg,1.25rem);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;line-height:1;display:flex}.browser-warning__dismiss:hover{background:var(--semantic-background-secondary,#f3f4f6);color:var(--semantic-text-primary)}.browser-warning__dismiss:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}[data-theme=dark] .browser-warning{background:color-mix(in srgb, var(--color-yellow-700,#a16207) 20%, var(--semantic-background-primary))}@media (prefers-color-scheme:dark){html:not([data-theme=light]):not([data-theme=dark]) .browser-warning{background:color-mix(in srgb, var(--color-yellow-700,#a16207) 20%, var(--semantic-background-primary))}}[data-theme=dark-oled] .browser-warning{background:color-mix(in srgb, var(--color-yellow-700,#a16207) 15%, #000)}@media (prefers-contrast:more){.browser-warning{border-width:2px}}@media (prefers-reduced-motion:reduce){.browser-warning{transition:none}}@media (max-width:480px){.browser-warning__content{flex-direction:column}.browser-warning__browsers{gap:var(--spacing-1);flex-direction:column}.browser-warning__dismiss{align-self:flex-end}}.undo-bar-container{bottom:var(--spacing-6,24px);z-index:1050;gap:var(--spacing-2,8px);max-width:480px;width:calc(100vw - var(--spacing-8,32px));flex-direction:column-reverse;display:flex;position:fixed;left:50%;transform:translate(-50%)}.undo-bar{align-items:center;gap:var(--spacing-3,12px);padding:var(--spacing-3,12px) var(--spacing-4,16px);background:var(--semantic-background-inverse,#1f2937);color:var(--semantic-text-on-inverse,#f9fafb);border-radius:var(--radius-md,8px);box-shadow:var(--shadow-lg,0 10px 15px -3px #0000001a);animation:undoBarSlideIn var(--duration-normal,.25s) var(--easing-decelerate,ease-out);display:flex}@keyframes undoBarSlideIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.undo-bar--exiting{animation:undoBarSlideOut var(--duration-fast,.15s) var(--easing-accelerate,ease-in) forwards}@keyframes undoBarSlideOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(16px)}}.undo-bar__message{font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-medium,500);flex:1}.undo-bar__countdown{flex-shrink:0;width:28px;height:28px;position:relative}.undo-bar__countdown-ring{width:100%;height:100%;transform:rotate(-90deg)}.undo-bar__countdown-track{fill:none;stroke:#fff3;stroke-width:3px}.undo-bar__countdown-fill{fill:none;stroke:var(--semantic-action-primary,#818cf8);stroke-width:3px;stroke-linecap:round;transition:stroke-dashoffset 1s linear}.undo-bar__countdown-text{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-bold,700);color:var(--semantic-text-on-inverse,#f9fafb);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.undo-bar__button{padding:var(--spacing-1,4px) var(--spacing-3,12px);border-radius:var(--radius-md,8px);color:var(--semantic-text-on-inverse,#f9fafb);font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-semibold,600);cursor:pointer;transition:background var(--duration-fast,.15s) var(--easing-standard,ease);background:0 0;border:1px solid #ffffff4d;flex-shrink:0}.undo-bar__button:hover{background:#ffffff26}.undo-bar__button:focus-visible{outline:2px solid var(--semantic-focus-ring,#818cf8);outline-offset:2px}@media (prefers-reduced-motion:reduce){.undo-bar{animation:none}.undo-bar--exiting{opacity:0;animation:none}.undo-bar__countdown-fill{transition:none}}@media (prefers-contrast:more){.undo-bar{border:2px solid var(--semantic-text-on-inverse,#f9fafb)}.undo-bar__button{border-width:2px}}.drag-drop-preview{color:#fff;pointer-events:none;z-index:999;background:#0f172aeb;border-radius:999px;align-items:center;gap:.5rem;padding:.75rem .875rem;font-size:.875rem;font-weight:600;display:inline-flex;position:fixed;top:-9999px;left:-9999px;box-shadow:0 14px 28px #0f172a38}.drag-drop-preview__count{background:#ffffff29;border-radius:999px;justify-content:center;align-items:center;min-width:1.5rem;min-height:1.5rem;padding:0 .375rem;font-size:.75rem;display:inline-flex}.drag-drop-transaction{border-radius:var(--border-radius-lg,12px);transition:transform var(--duration-fast,.16s) ease, opacity var(--duration-fast,.16s) ease, box-shadow var(--duration-fast,.16s) ease}.drag-drop-transaction--dragging{opacity:.42;transform:scale(.985)}.drag-drop-transaction--returning{animation:.28s ease-out drag-drop-transaction-return}.drag-drop-category-panel{top:max(6rem, env(safe-area-inset-top));right:max(var(--spacing-4,16px), env(safe-area-inset-right));width:min(20rem,100vw - 2rem);max-height:calc(100vh - 7rem);padding:var(--spacing-4,16px);border:1px solid var(--semantic-border-default,#d1d5db);border-radius:var(--border-radius-xl,18px);background:var(--semantic-background-elevated,#fff);opacity:0;transition:opacity var(--duration-normal,.22s) ease, transform var(--duration-normal,.22s) ease;pointer-events:none;z-index:70;position:fixed;overflow-y:auto;transform:translate(calc(100% + 1rem));box-shadow:0 18px 36px #0f172a2e}.drag-drop-category-panel--visible{opacity:1;pointer-events:auto;transform:translate(0,0)}.drag-drop-category-panel__eyebrow{margin:0 0 var(--spacing-2,8px);color:var(--semantic-interactive-default,#2563eb);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:700}.drag-drop-category-panel__title{color:var(--semantic-text-primary,#0f172a);margin:0;font-size:1.125rem}.drag-drop-category-panel__description{margin:var(--spacing-2,8px) 0 var(--spacing-4,16px);color:var(--semantic-text-secondary,#475569);font-size:.875rem;line-height:1.5}.drag-drop-category-panel__targets{gap:var(--spacing-2,8px);display:grid}.drag-drop-category-zone{--drag-drop-zone-color:#64748b;align-items:center;gap:var(--spacing-3,12px);padding:var(--spacing-3,12px) var(--spacing-4,16px);border:1px solid var(--semantic-border-default,#d1d5db);border-radius:var(--border-radius-lg,12px);background:var(--semantic-background-primary,#fff);transition:border-color var(--duration-fast,.16s) ease, box-shadow var(--duration-fast,.16s) ease, background-color var(--duration-fast,.16s) ease, transform var(--duration-fast,.16s) ease;display:flex}.drag-drop-category-zone--over{border-color:var(--drag-drop-zone-color);background:#eff6ffe6;transform:translate(-2px)scale(1.01);box-shadow:0 0 0 3px #2563eb1f}.drag-drop-category-zone--success{background:#dcfce7e6;border-color:#16a34a;animation:.9s ease-out drag-drop-category-success}.drag-drop-category-zone__swatch{background:var(--drag-drop-zone-color);border-radius:999px;flex-shrink:0;width:.875rem;height:.875rem}.drag-drop-category-zone__content{gap:.125rem;min-width:0;display:grid}.drag-drop-category-zone__label{color:var(--semantic-text-primary,#0f172a);font-weight:600}.drag-drop-category-zone__hint{color:var(--semantic-text-secondary,#64748b);font-size:.75rem}.transaction-list-item__selection{align-items:center;display:inline-flex}.transaction-list-item__selection .bulk-select-checkbox{margin:0}.transaction-list-item--selected{background:#2563eb14}.transaction-list-item--selected .list-item__primary{color:var(--semantic-interactive-default,#1d4ed8)}@keyframes drag-drop-category-success{0%{transform:scale(.98);box-shadow:0 0 #16a34a4d}45%{transform:scale(1.01);box-shadow:0 0 0 8px #16a34a00}to{transform:scale(1);box-shadow:0 0 #16a34a00}}@keyframes drag-drop-transaction-return{0%{transform:scale(.97)}55%{transform:scale(1.01)}to{transform:scale(1)}}@media (max-width:767px){.drag-drop-category-panel{top:auto;bottom:max(var(--spacing-4,16px), env(safe-area-inset-bottom));left:max(var(--spacing-4,16px), env(safe-area-inset-left));right:max(var(--spacing-4,16px), env(safe-area-inset-right));width:auto;max-height:min(24rem,100vh - 6rem);transform:translateY(calc(100% + 1rem))}.drag-drop-category-panel--visible{transform:translate(0,0)}}@media (prefers-reduced-motion:reduce){.drag-drop-transaction,.drag-drop-category-panel,.drag-drop-category-zone{transition:none}.drag-drop-transaction--returning,.drag-drop-category-zone--success{animation:none}}.converted-total-indicator{align-items:center;gap:var(--spacing-1,.25rem);font-size:var(--font-size-sm,.875rem);color:var(--semantic-text-secondary,#6b7280);flex-wrap:wrap;line-height:1.3;display:inline-flex}.converted-total-indicator__icon{vertical-align:middle;flex:none}.converted-total-indicator__text{overflow-wrap:anywhere}.converted-total-indicator__stale{align-items:center;gap:var(--spacing-1,.25rem);display:inline-flex}.converted-total-indicator--stale{color:var(--semantic-status-warning,#b45309)}.converted-total-indicator__unconverted{color:var(--semantic-text-secondary,#6b7280);flex-basis:100%}@media (prefers-contrast:more){.converted-total-indicator,.converted-total-indicator--stale{color:var(--semantic-text-primary,#111827)}}
