:root,[data-theme=cinematic]{--theme-canvas:#141416;--theme-surface:#1e1e22;--theme-ink:#f4f1ea;--theme-accent:#e2a322;--theme-on-accent:#1a1406;--theme-danger:#e06a6a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--color-bg-base:var(--theme-canvas);--color-nav-bg:var(--theme-canvas);--color-surface:var(--theme-surface);--color-card-bg:var(--theme-surface);--color-bg-subtle:color-mix(in srgb, var(--theme-ink) 5%, var(--theme-canvas));--color-divider-subtle:color-mix(in srgb, var(--theme-ink) 10%, transparent);--color-divider-strong:color-mix(in srgb, var(--theme-ink) 22%, transparent);--color-text-primary:var(--theme-ink);--color-text-secondary:color-mix(in srgb, var(--theme-ink) 72%, transparent);--color-text-tertiary:color-mix(in srgb, var(--theme-ink) 52%, transparent);--color-section-header-text:var(--theme-ink);--color-primary:var(--theme-accent);--color-accent:var(--theme-accent);--color-link:var(--theme-accent);--flare-color:var(--theme-accent);--color-on-primary:var(--theme-on-accent);--color-primary-hover:color-mix(in srgb, var(--theme-ink) 16%, var(--theme-accent));--color-primary-pressed:color-mix(in srgb, var(--theme-canvas) 18%, var(--theme-accent));--color-primary-subtle:color-mix(in srgb, var(--theme-accent) 14%, var(--theme-surface));--color-info:var(--theme-accent);--color-info-tint:color-mix(in srgb, var(--theme-accent) 12%, var(--theme-surface));--color-info-border:color-mix(in srgb, var(--theme-accent) 40%, transparent);--color-success:#4fb57a;--color-success-tint:color-mix(in srgb, #4fb57a 14%, var(--theme-surface));--color-success-border:#4fb57a66;--color-warning:#e0a03a;--color-warning-tint:color-mix(in srgb, #e0a03a 14%, var(--theme-surface));--color-warning-border:#e0a03a66;--color-error:var(--theme-danger);--color-error-tint:color-mix(in srgb, var(--theme-danger) 14%, var(--theme-surface));--color-error-border:color-mix(in srgb, var(--theme-danger) 45%, transparent);--color-focus-ring:color-mix(in srgb, var(--theme-accent) 35%, transparent);--color-selection:color-mix(in srgb, var(--theme-accent) 30%, transparent);--color-nav-text:color-mix(in srgb, var(--theme-ink) 70%, transparent);--color-nav-hover:color-mix(in srgb, var(--theme-ink) 6%, transparent);--color-nav-active-bg:color-mix(in srgb, var(--theme-accent) 12%, transparent);--color-nav-active-text:var(--theme-accent);--color-nav-active-border:var(--theme-accent);--color-btn-primary-bg:var(--color-primary);--color-btn-primary-text:var(--theme-on-accent);--color-btn-primary-hover:var(--color-primary-hover);--color-btn-primary-pressed:var(--color-primary-pressed);--color-btn-secondary-bg:transparent;--color-btn-secondary-border:var(--color-divider-strong);--color-btn-secondary-text:var(--theme-ink);--color-btn-secondary-hover-bg:var(--color-bg-subtle);--color-btn-secondary-hover-border:color-mix(in srgb, var(--theme-ink) 34%, transparent);--color-btn-tertiary-text:var(--theme-accent);--color-btn-tertiary-hover-bg:color-mix(in srgb, var(--theme-accent) 10%, transparent);--color-btn-destructive-bg:var(--theme-danger);--color-btn-destructive-text:var(--theme-canvas);--color-btn-destructive-hover:color-mix(in srgb, var(--theme-ink) 14%, var(--theme-danger));--color-input-bg:var(--theme-surface);--color-input-text:var(--theme-ink);--color-input-border:color-mix(in srgb, var(--theme-ink) 16%, transparent);--color-input-border-hover:color-mix(in srgb, var(--theme-ink) 28%, transparent);--color-input-border-focus:var(--theme-accent);--color-input-placeholder:color-mix(in srgb, var(--theme-ink) 40%, transparent);--color-input-disabled-bg:color-mix(in srgb, var(--theme-ink) 4%, var(--theme-canvas));--color-input-disabled-border:var(--color-divider-subtle);--color-card-border:var(--color-divider-subtle);--color-card-shadow:0 1px 3px #0000004d;--color-table-header-bg:var(--color-bg-subtle);--color-table-header-text:var(--color-text-secondary);--color-table-row-stripe:color-mix(in srgb, var(--theme-ink) 3%, transparent);--color-table-row-selected:var(--color-primary-subtle);--color-badge-default-bg:color-mix(in srgb, var(--theme-ink) 8%, var(--theme-surface));--color-badge-default-border:var(--color-divider-subtle);--color-badge-default-text:var(--color-text-secondary);--color-modal-overlay:#0009}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.content-page{flex-direction:column;gap:24px;width:100%;display:flex}.form-grid{grid-template-columns:1fr;gap:0 20px;display:grid}@media (width>=768px){.form-grid{grid-template-columns:repeat(2,1fr)}}.btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.btn:focus-visible{box-shadow:0 0 0 3px var(--color-focus-ring);outline:none}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-compact{padding:10px 20px}.btn-block{width:100%}.btn-primary{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text)}.btn-primary:hover:not(:disabled){background:var(--color-btn-primary-hover)}.btn-primary:active:not(:disabled){background:var(--color-btn-primary-pressed)}.btn-secondary{background:var(--color-btn-secondary-bg);border:1px solid var(--color-btn-secondary-border);color:var(--color-btn-secondary-text)}.btn-secondary:hover:not(:disabled){background:var(--color-btn-secondary-hover-bg);border-color:var(--color-btn-secondary-hover-border)}.btn-tertiary{color:var(--color-btn-tertiary-text);background:0 0;padding:8px 16px}.btn-tertiary:hover:not(:disabled){background:var(--color-btn-tertiary-hover-bg)}.btn-destructive{background:var(--color-btn-destructive-bg);color:var(--color-btn-destructive-text)}.btn-destructive:hover:not(:disabled){background:var(--color-btn-destructive-hover)}.form-group{flex-direction:column;gap:8px;margin-bottom:20px;display:flex}.form-label{color:var(--color-text-primary);font-size:14px;font-weight:500}.form-input{border:1px solid var(--color-input-border);background-color:var(--color-input-bg);width:100%;color:var(--color-input-text);border-radius:6px;padding:10px 12px;font-family:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s}.form-input::placeholder{color:var(--color-input-placeholder)}.form-input:hover:not(:disabled){border-color:var(--color-input-border-hover)}.form-input:focus:not(:disabled){border-color:var(--color-input-border-focus);box-shadow:0 0 0 3px var(--color-focus-ring);outline:none}.form-input:disabled{background-color:var(--color-input-disabled-bg);border-color:var(--color-input-disabled-border);opacity:.7;cursor:not-allowed}.alert{border:1px solid;border-radius:8px;align-items:flex-start;gap:10px;padding:10px 12px;font-size:13px;display:flex}.alert-error{background:var(--color-error-tint);border-color:var(--color-error-border);color:var(--color-error)}.alert-info{background:var(--color-info-tint);border-color:var(--color-info-border);color:var(--color-text-primary)}.alert-info svg{color:var(--color-info);flex-shrink:0}.alert-success{background:var(--color-success-tint);border-color:var(--color-success-border);color:var(--color-success)}.alert-warning{background:var(--color-warning-tint);border-color:var(--color-warning-border);color:var(--color-warning)}.alert svg{flex-shrink:0;margin-top:1px}.badge{border:1px solid var(--color-badge-default-border);background:var(--color-badge-default-bg);height:22px;color:var(--color-badge-default-text);white-space:nowrap;border-radius:11px;align-items:center;padding:0 8px;font-size:12px;font-weight:600;line-height:1;display:inline-flex}.badge-success{background:var(--color-success-tint);border-color:var(--color-success-border);color:var(--color-success)}.badge-warning{background:var(--color-warning-tint);border-color:var(--color-warning-border);color:var(--color-warning)}.badge-error{background:var(--color-error-tint);border-color:var(--color-error-border);color:var(--color-error)}.table-wrap{width:100%;overflow-x:auto}.table{border-collapse:collapse;width:100%}.table th{text-align:left;color:var(--color-table-header-text);text-transform:uppercase;letter-spacing:.5px;background:var(--color-table-header-bg);border-bottom:1px solid var(--color-divider-subtle);white-space:nowrap;padding:12px 16px;font-size:13px;font-weight:600}.table td{color:var(--color-text-primary);border-bottom:1px solid var(--color-divider-subtle);vertical-align:middle;padding:16px;font-size:14px}.table tbody tr{transition:background-color .2s}.table tbody tr:hover{background:var(--color-bg-subtle)}.table tbody tr:last-child td{border-bottom:none}.table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.cell-secondary{color:var(--color-text-tertiary);margin-top:2px;font-size:13px;display:block}.amount-positive,.table td.amount-positive{color:var(--color-success)}.amount-negative,.table td.amount-negative{color:var(--color-error)}@media (width<=768px){.table td{padding:10px 12px;font-size:12px}.table th{padding:10px 12px}}.search{background:var(--color-bg-base);border:1px solid var(--color-divider-subtle);border-radius:10px;align-items:center;gap:10px;min-width:300px;padding:10px 16px;transition:border-color .2s,box-shadow .2s;display:flex;box-shadow:0 1px 3px #00000014}.search:focus-within{border-color:var(--color-input-border-focus);box-shadow:0 0 0 3px var(--color-focus-ring)}.search svg{color:var(--color-text-tertiary);flex-shrink:0}.search input{width:100%;color:var(--color-text-primary);background:0 0;border:none;outline:none;flex:1;font-size:14px}.search input::placeholder{color:var(--color-text-tertiary)}@media (width<=768px){.search{min-width:100%}}.pagination{border-top:1px solid var(--color-divider-subtle);background:var(--color-bg-base);flex-direction:column;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}@media (width>=768px){.pagination{flex-direction:row}}.pagination-info{color:var(--color-text-secondary);font-size:14px}.pagination-controls{align-items:center;gap:8px;display:flex}.icon-button{border:1px solid var(--color-divider-subtle);background:var(--color-bg-base);width:36px;height:36px;color:var(--color-text-secondary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:all .2s;display:inline-flex}.icon-button:hover:not(:disabled){background:var(--color-bg-subtle);border-color:var(--color-divider-strong);color:var(--color-text-primary)}.icon-button:focus-visible{box-shadow:0 0 0 3px var(--color-focus-ring);outline:none}.icon-button:disabled{opacity:.5;cursor:not-allowed}.card{background:var(--color-card-bg);border:1px solid var(--color-card-border);border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000000d}.card-header{border-bottom:1px solid var(--color-divider-subtle);background:var(--color-bg-base);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.card-title{color:var(--color-section-header-text);margin:0;font-size:18px;font-weight:600}.card-body{padding:24px}.empty-state{text-align:center;color:var(--color-text-secondary);padding:60px 24px}.empty-state-icon{opacity:.5;color:var(--color-text-secondary);margin-bottom:16px}.empty-state-title{color:var(--color-text-primary);margin:0 0 8px;font-size:18px;font-weight:600}.empty-state-message{color:var(--color-text-secondary);margin:0;font-size:14px}.loading-state{text-align:center;color:var(--color-text-secondary);padding:60px 24px;font-size:14px}.dropdown-menu{background:var(--color-surface);border:1px solid var(--color-divider-subtle);z-index:100;border-radius:8px;min-width:180px;position:absolute;overflow:hidden;box-shadow:0 4px 12px #00000059}.dropdown-item{text-align:left;border:none;border-bottom:1px solid var(--color-divider-subtle);width:100%;color:var(--color-text-primary);cursor:pointer;background:0 0;align-items:center;gap:10px;padding:12px 16px;font-size:14px;text-decoration:none;transition:background-color .2s;display:flex}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover,.dropdown-item:focus-visible{background:var(--color-bg-subtle);outline:none}*,:before,:after{box-sizing:border-box}:root{color:var(--color-text-primary);background-color:var(--color-bg-base);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;font-size:14px;font-weight:400;line-height:1.5}body{background:var(--color-bg-base);min-height:100vh;margin:0}::selection{background:var(--color-selection)}a{color:var(--color-link)}button,input,select,textarea{font:inherit}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.brand-mark{background:var(--theme-accent);color:var(--theme-on-accent);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.sidebar{background:var(--color-nav-bg);border-right:1px solid var(--color-divider-subtle);z-index:60;scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--theme-ink) 28%, transparent) transparent;flex-direction:column;width:232px;height:100vh;transition:transform .3s;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--theme-ink) 28%, transparent);border-radius:3px}.sidebar-brand{align-items:center;gap:12px;padding:22px 16px 18px;display:flex}.sidebar-brand-name{color:var(--color-text-primary);font-size:15px;font-weight:600;line-height:1.3}.sidebar-brand-eyebrow{color:var(--color-text-tertiary);font-size:12px}.sidebar-nav{flex-direction:column;gap:4px;padding:4px 12px;display:flex}.nav-link{color:var(--color-nav-text);border-radius:8px;align-items:center;gap:12px;padding:10px 12px;font-size:14px;font-weight:500;text-decoration:none;transition:background-color .2s,color .2s;display:flex}.nav-link:hover{background:var(--color-nav-hover);color:var(--color-text-primary)}.nav-link:focus-visible{box-shadow:0 0 0 3px var(--color-focus-ring);outline:none}.nav-link.active{background:var(--color-nav-active-bg);color:var(--color-nav-active-text);box-shadow:inset 3px 0 0 var(--color-nav-active-border);font-weight:600}.sidebar-note{border:1px solid var(--color-divider-subtle);background:color-mix(in srgb, var(--theme-ink) 4%, var(--theme-surface));border-radius:12px;margin:auto 12px 12px;padding:14px}.sidebar-note .brand-mark{border-radius:8px;margin-bottom:10px}.sidebar-note-title{color:var(--color-text-primary);font-size:13px;font-weight:600}.sidebar-note-tagline{color:var(--color-text-tertiary);font-size:12px}.main-column{background:var(--color-bg-base);min-height:100vh;margin-left:232px}.app-header{z-index:50;background:var(--color-bg-base);border-bottom:1px solid var(--color-divider-subtle);justify-content:space-between;align-items:center;gap:16px;padding:18px 28px;display:flex;position:sticky;top:0}.app-header-left{align-items:center;gap:12px;min-width:0;display:flex}.page-title{letter-spacing:-.02em;color:var(--color-text-primary);margin:0;font-size:26px;font-weight:600;line-height:1.2}.page-subtitle{color:var(--color-text-tertiary);margin:2px 0 0;font-size:13px}.menu-button{border:1px solid var(--color-divider-subtle);width:40px;height:40px;color:var(--color-text-primary);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:none}.menu-button:hover{background:var(--color-bg-subtle);border-color:var(--color-divider-strong)}.app-content{padding:24px}.account-chip-wrap{flex-shrink:0;position:relative}.account-chip{color:var(--color-text-primary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:4px 8px 4px 4px;transition:background-color .2s;display:flex}.account-chip:hover{background:var(--color-nav-hover)}.account-chip:focus-visible{box-shadow:0 0 0 3px var(--color-focus-ring);outline:none}.account-avatar{background:var(--theme-accent);width:36px;height:36px;color:var(--theme-on-accent);border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:inline-flex}.account-text{flex-direction:column;line-height:1.3;display:flex}.account-name{font-size:14px;font-weight:600}.account-role{color:var(--color-text-tertiary);font-size:12px}.account-caret{color:var(--color-text-tertiary)}.account-menu{top:calc(100% + 8px);right:0}.sidebar-scrim{display:none}@media (width<=768px){.sidebar{transform:translate(-100%)}.nav-open .sidebar{transform:translate(0)}.sidebar-scrim{z-index:55;background:var(--color-modal-overlay);display:block;position:fixed;inset:0}.main-column{margin-left:0}.menu-button{display:inline-flex}.app-header{padding:14px 16px}.page-title{font-size:22px}.account-text,.account-caret{display:none}.app-content{padding:16px}}.card-subtitle{color:var(--color-text-tertiary);margin:4px 0 0;font-size:13px}.connection-header{flex-wrap:wrap;gap:16px}.connection-heading{align-items:center;gap:12px;min-width:0;display:flex}.connection-icon{background:var(--color-primary-subtle);width:40px;height:40px;color:var(--color-primary);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.connection-title-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.connection-actions{align-items:center;gap:8px;display:flex}.btn-danger-text{color:var(--color-error)}.btn-danger-text:hover:not(:disabled){background:var(--color-error-tint)}.connection-warning{border-bottom:1px solid var(--color-divider-subtle);background:var(--color-warning-tint);color:var(--color-warning);align-items:center;gap:8px;padding:12px 24px;font-size:13px;display:flex}.account-type{color:var(--color-text-secondary);text-transform:capitalize}.account-scope.form-input{width:auto;min-width:120px;padding-top:6px;padding-bottom:6px}.account-name-row{align-items:center;gap:8px;display:flex}.account-row-hidden td:not(.account-actions-col){opacity:.55}.account-actions-col{white-space:nowrap;width:1%}.account-actions{justify-content:flex-end;gap:8px;display:flex}.account-actions .icon-button{width:32px;height:32px}.account-rename{align-items:center;gap:8px;display:flex}.account-rename .form-input{width:auto;min-width:200px;padding-top:7px;padding-bottom:7px}.account-rename .btn-compact{padding:8px 16px}.connection-empty{color:var(--color-text-secondary)}.alert code{background:var(--color-bg-subtle);border-radius:4px;padding:1px 5px;font-size:12px}.breakdown-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.breakdown-month{align-items:center;gap:8px;display:flex}.breakdown-month-input,.breakdown-scope{border-radius:10px;width:auto;padding-top:10px;padding-bottom:10px}.breakdown-month-input{min-width:180px}.breakdown-scope{min-width:200px}@media (width>=768px){.stat-grid.breakdown-stats{grid-template-columns:repeat(3,1fr)}}.breakdown-bars-col{width:22%;min-width:120px}.breakdown-bars{flex-direction:column;gap:4px;display:flex}.breakdown-bar{border-radius:3px;height:6px;display:block}.breakdown-bar-income{background:var(--color-success)}.breakdown-bar-expense{background:var(--color-error)}.table td.breakdown-muted{color:var(--color-text-secondary);white-space:nowrap}.breakdown-transfer{font-size:13px;display:block}.breakdown-total-row td{color:var(--color-text-primary);border-top:1px solid var(--color-divider-subtle);padding:14px 16px;font-size:14px;font-weight:600}.table .breakdown-total-row td.breakdown-muted{color:var(--color-text-secondary);font-weight:500}.breakdown-quiet{color:var(--color-text-tertiary);margin:0;padding:12px 24px 18px;font-size:13px}@media (width<=768px){.breakdown-month,.breakdown-scope{width:100%}.breakdown-month-input{flex:1;min-width:0}.breakdown-bars-col{display:none}}.stat-grid{grid-template-columns:1fr;gap:16px;display:grid}@media (width>=768px){.stat-grid{grid-template-columns:repeat(2,1fr)}}.stat-card{flex-direction:column;gap:6px;padding:20px 24px;display:flex}.stat-label{color:var(--color-text-secondary);font-size:13px}.stat-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--color-text-primary);font-size:28px;font-weight:700}.dashboard-muted{color:var(--color-text-secondary)}.dashboard-date{white-space:nowrap;width:1%}@media (width>=768px){.debt-stats{grid-template-columns:repeat(3,1fr)}}.stat-note{color:var(--color-text-tertiary);font-size:13px}.debt-plan-header,.debt-list-header{flex-wrap:wrap;gap:16px}.segmented{border:1px solid var(--color-divider-subtle);background:var(--color-bg-subtle);border-radius:8px;gap:2px;padding:3px;display:inline-flex}.segmented-option{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:7px 14px;font-size:13px;font-weight:500;transition:all .2s}.segmented-option:hover:not(:disabled){color:var(--color-text-primary)}.segmented-option.is-active{background:var(--color-card-bg);color:var(--color-text-primary);box-shadow:0 1px 2px #0000001f}.segmented-option:focus-visible{box-shadow:0 0 0 3px var(--color-focus-ring);outline:none}.debt-budget{border-bottom:1px solid var(--color-divider-subtle);flex-direction:column;gap:8px;display:flex}.debt-budget-row{gap:8px;max-width:360px;display:flex}.debt-budget-help,.debt-form-help{color:var(--color-text-tertiary);margin:0;font-size:13px}.debt-link-button{color:var(--color-primary);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-weight:500}.debt-link-button:hover{text-decoration:underline}.debt-order-col{width:1%;color:var(--color-text-tertiary)}.advice-list{flex-direction:column;gap:10px;margin:0;padding:20px 24px;list-style:none;display:flex}.advice-item{color:var(--color-text-primary);align-items:flex-start;gap:10px;font-size:14px;line-height:1.5;display:flex}.advice-item svg{flex-shrink:0;margin-top:2px}.advice-warning svg{color:var(--color-warning)}.advice-info svg{color:var(--color-info)}.advice-success svg{color:var(--color-success)}.debt-list-actions{align-items:center;gap:8px;display:flex}.debt-form{flex-direction:column;gap:4px;display:flex}.card-body.debt-form{border-bottom:1px solid var(--color-divider-subtle)}.debt-form-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:0 16px;display:grid}.debt-form-grid .form-group{margin-bottom:12px}.debt-form-actions{align-items:center;gap:8px;display:flex}.debt-edit-row,.table tbody tr.debt-edit-row:hover{background:var(--color-bg-subtle)}.debt-row-excluded td:not(.account-actions-col):not(:nth-last-child(2)){opacity:.55}.debt-muted{color:var(--color-text-secondary);white-space:nowrap}.debt-missing{color:var(--color-warning);font-size:13px}.debt-checkbox{width:16px;height:16px;accent-color:var(--color-primary);cursor:pointer}.login-page{background:var(--color-bg-base);justify-content:center;align-items:center;min-height:100vh;padding:40px 16px;display:flex}.login-panel{width:100%;max-width:400px}.login-brand{align-items:center;gap:12px;margin-bottom:24px;display:flex}.login-brand-name{color:var(--color-text-primary);font-size:18px;font-weight:600;line-height:1.3}.login-brand-eyebrow{color:var(--color-text-tertiary);font-size:13px}.login-title{letter-spacing:-.02em;color:var(--color-text-primary);margin:0 0 4px;font-size:24px;font-weight:600}.login-subtitle{color:var(--color-text-secondary);margin:0 0 24px;font-size:14px}.login-error{margin-bottom:20px}.login-footnote{text-align:center;color:var(--color-text-tertiary);margin:20px 0 0;font-size:12px}.monthly-tabs{border-bottom:1px solid var(--color-divider-subtle);gap:24px;display:flex}.monthly-tab{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 2px;font-size:15px;font-weight:500;transition:color .2s,border-color .2s}.monthly-tab:hover{color:var(--color-text-primary)}.monthly-tab.is-active{border-bottom-color:var(--color-primary);color:var(--color-text-primary);font-weight:600}.monthly-tab:focus-visible{box-shadow:0 0 0 3px var(--color-focus-ring);border-radius:4px 4px 0 0;outline:none}.monthly-accounts{color:var(--color-text-tertiary);margin:-8px 0 0;font-size:13px}@media (width>=768px){.monthly-stats{grid-template-columns:repeat(3,1fr)}}@media (width>=768px) and (width<=1099px){.monthly-stats-4{grid-template-columns:repeat(2,1fr)}}@media (width>=1100px){.monthly-stats-4{grid-template-columns:repeat(4,1fr)}}.monthly-debt{flex-direction:column;gap:8px;display:flex}.monthly-debt-row{gap:8px;max-width:360px;display:flex}.monthly-debt-help{color:var(--color-text-tertiary);margin:0;font-size:13px}.monthly-debt-help strong{color:var(--color-text-primary);font-weight:600}.monthly-header{flex-wrap:wrap;gap:16px}.search.monthly-search{min-width:240px}.monthly-muted{color:var(--color-text-secondary);white-space:nowrap}.monthly-drift{color:var(--color-warning)}.btn.monthly-add{padding:6px 14px;font-size:13px}.monthly-row-paused td:not(.account-actions-col){opacity:.55}.monthly-edit-row,.table tbody tr.monthly-edit-row:hover{background:var(--color-bg-subtle)}.monthly-empty{color:var(--color-text-secondary);padding:20px 24px;font-size:14px}.table tbody tr.monthly-group-row,.table tbody tr.monthly-group-row:hover{background:var(--color-bg-subtle)}.monthly-group-row td{letter-spacing:.5px;text-transform:uppercase;color:var(--color-text-secondary);padding:8px 16px;font-size:12px;font-weight:600}.monthly-total-row td{color:var(--color-text-primary);border-top:1px solid var(--color-divider-subtle);padding:14px 16px;font-size:14px;font-weight:600}.monthly-form{flex-direction:column;gap:4px;display:flex}.card-body.monthly-form{border-bottom:1px solid var(--color-divider-subtle)}.monthly-form-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:0 16px;display:grid}.monthly-form-grid .form-group{margin-bottom:12px}.monthly-notes{grid-column:1/-1}.monthly-form-error{margin-bottom:12px}.table tbody tr.monthly-row-new td{animation:2.5s ease-out monthly-row-flash}@keyframes monthly-row-flash{0%,40%{background:var(--color-primary-subtle)}to{background:0 0}}.monthly-form-actions{align-items:center;gap:8px;display:flex}.monthly-dismissed{border-top:1px solid var(--color-divider-subtle);padding:12px 16px}.monthly-dismissed-list{margin:4px 0 0;padding:0;list-style:none}.monthly-dismissed-list li{color:var(--color-text-primary);justify-content:space-between;align-items:center;gap:12px;padding:6px 16px;font-size:14px;display:flex}.transactions-header{flex-wrap:wrap;gap:16px}.transactions-title{align-items:baseline;gap:10px;display:flex}.transactions-count,.transactions-sum{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:18px;font-weight:600}.transactions-count{color:var(--color-text-secondary)}.transactions-dates{align-items:center;gap:12px;display:flex}.transactions-date-field{color:var(--color-text-secondary);white-space:nowrap;align-items:center;gap:8px;font-size:13px;display:flex}.transactions-date-field .form-input{border-radius:10px;width:auto;padding-top:10px;padding-bottom:10px}.transactions-filters{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.transactions-select{border-radius:10px;width:auto;min-width:200px;padding-top:11px;padding-bottom:11px}.transaction-date,.transaction-category,.transaction-account{color:var(--color-text-secondary);white-space:nowrap}.transaction-name{align-items:center;gap:8px;display:flex}@media (width<=768px){.transactions-filters,.transactions-select,.transactions-dates{width:100%}.transactions-date-field{flex:1}.transactions-date-field .form-input{flex:1;min-width:0}}
