body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root,body,html{height:100%;margin:0}.cal-shell{background:#f5f5f7;background:var(--cal-bg);box-sizing:border-box;color:#1d1d1f;color:var(--cal-text);font-family:Roboto,system-ui,-apple-system,sans-serif;font-family:var(--cal-font-body);height:100vh;overflow:hidden;padding:clamp(12px,2vw,24px);width:100%}.cal-frame{grid-gap:12px;gap:12px;grid-template-rows:1fr auto;height:100%;margin:0 auto;max-width:1120px;width:100%}.cal-content,.cal-frame{display:grid;min-height:0}.cal-content{grid-column-gap:20px;grid-row-gap:12px;column-gap:20px;grid-template-columns:clamp(16px,6vw,64px) 20vw minmax(0,1fr) clamp(16px,6vw,64px);grid-template-columns:var(--cal-margin) var(--cal-card-width) minmax(0,1fr) var(--cal-margin);grid-template-rows:clamp(32px,4vh,40px) 1fr;grid-template-rows:var(--cal-menu-row-height) 1fr;row-gap:12px}.cal-margin{grid-row:1/3}.cal-margin-left{grid-column:1}.cal-margin-right{grid-column:4}.cal-card-column{display:flex;flex-direction:column;gap:12px;grid-column:2;grid-row:1/3;min-height:0}.cal-card-thumb{border-radius:11px;box-shadow:0 2px 6px #0000000d,0 10px 30px #0000000f;box-shadow:var(--cal-shadow-md);flex-shrink:0;overflow:hidden}.cal-card-thumb img{display:block;height:auto;object-fit:cover;width:100%}.cal-card-thumb-label{color:#6e6e73;color:var(--cal-muted);font-family:Roboto,system-ui,-apple-system,sans-serif;font-family:var(--cal-font-display);font-size:13px;letter-spacing:.02em}.cal-menu-buttons{display:flex;gap:10px;grid-column:3;grid-row:1}.cal-menu-btn{background:#fff;background:var(--cal-surface);border:1px solid #0000000f;border:1px solid var(--cal-border);border-radius:100px;border-radius:var(--cal-radius-sm);box-shadow:0 1px 2px #0000000a,0 2px 8px #0000000a;box-shadow:var(--cal-shadow-sm);color:#1d1d1f;color:var(--cal-text);cursor:pointer;flex:1 1;font-family:Roboto,system-ui,-apple-system,sans-serif;font-family:var(--cal-font-body);font-size:13px;height:100%;transition:box-shadow .15s ease,background .15s ease,transform .1s ease}.cal-menu-btn:last-child{align-items:center;border-radius:50%;display:flex;flex:0 0 clamp(32px,4vh,40px);flex:0 0 var(--cal-menu-row-height);height:clamp(32px,4vh,40px);height:var(--cal-menu-row-height);justify-content:center;padding:0;width:clamp(32px,4vh,40px);width:var(--cal-menu-row-height)}.cal-menu-btn:last-child svg{height:23px;width:23px}.cal-menu-btn:hover:not(:disabled){background:#0071e314;background:var(--cal-accent-soft);box-shadow:0 2px 6px #0000000d,0 10px 30px #0000000f;box-shadow:var(--cal-shadow-md)}.cal-menu-btn:active:not(:disabled){transform:translateY(1px)}.cal-menu-btn:disabled{cursor:default;opacity:.35}.cal-actions{display:flex;grid-column:3;grid-row:2;min-height:0}.cal-panel-row{flex:1 1;flex-direction:row}.cal-panel-col,.cal-panel-row{display:flex;gap:12px;min-height:0;min-width:0}.cal-panel-col{flex:1 1;flex-direction:column}.cal-panel-leaf,.cal-panel-slot{display:flex;flex:1 1;min-height:0;min-width:0}.cal-panel-leaf{align-items:center;background:#fff;background:var(--cal-surface);border-radius:11px;border-radius:var(--cal-radius);box-shadow:0 2px 6px #0000000d,0 10px 30px #0000000f;box-shadow:var(--cal-shadow-md);justify-content:center;overflow:auto;padding:1vh 1vh 1.6vh 1.6vh}.cal-panel-empty{background:#0000;box-shadow:none}.cal-menu-btn-active{background:#0071e314;background:var(--cal-accent-soft);border-color:#0071e3;border-color:var(--cal-accent);box-shadow:0 2px 6px #0000000d,0 10px 30px #0000000f;box-shadow:var(--cal-shadow-md)}.cal-footer{border-top:1px solid #0000000f;border-top:1px solid var(--cal-border);display:flex;justify-content:center;padding-top:12px}.cal-footer-copy{color:#6e6e73;color:var(--cal-muted);font-family:Roboto,system-ui,-apple-system,sans-serif;font-family:var(--cal-font-mono);font-size:12px;letter-spacing:.01em}.cal-modal-backdrop{align-items:center;background:#00000052;box-sizing:border-box;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:1000}.cal-modal{background:#fff;background:var(--cal-surface);border-radius:11px;border-radius:var(--cal-radius);box-shadow:0 2px 6px #0000000d,0 10px 30px #0000000f;box-shadow:var(--cal-shadow-md);display:flex;flex-direction:column;max-height:80vh;overflow:hidden;width:min(480px,100%)}.cal-modal-header{align-items:center;border-bottom:1px solid #0000000f;border-bottom:1px solid var(--cal-border);display:flex;justify-content:space-between;padding:16px 20px}.cal-modal-title{color:#1d1d1f;color:var(--cal-text);font-family:Roboto,system-ui,-apple-system,sans-serif;font-family:var(--cal-font-display);font-size:15px;font-weight:600}.cal-modal-close{align-items:center;background:#0000;border:none;border-radius:50%;color:#6e6e73;color:var(--cal-muted);cursor:pointer;display:flex;font-size:14px;height:28px;justify-content:center;width:28px}.cal-modal-close:hover{background:#0071e314;background:var(--cal-accent-soft);color:#1d1d1f;color:var(--cal-text)}.cal-modal-body{overflow:auto;padding:20px}.cal-permanent-panel{flex-direction:column;min-height:0;overflow:auto}.cal-permanent-panel,.cal-permanent-row{display:flex;gap:10px}.cal-permanent-tile{background:#fff;background:var(--cal-surface);border-radius:11px;border-radius:var(--cal-radius);box-shadow:0 1px 2px #0000000a,0 2px 8px #0000000a;box-shadow:var(--cal-shadow-sm);box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0;overflow:hidden;padding:12px}.cal-permanent-tile-label{color:#6e6e73;color:var(--cal-muted);font-size:11px;letter-spacing:.01em}.cal-permanent-tile-label,.cal-permanent-tile-value{font-family:Roboto,system-ui,-apple-system,sans-serif;font-family:var(--cal-font-display)}.cal-permanent-tile-value{color:#1d1d1f;color:var(--cal-text);font-size:18px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-permanent-tile-sub{color:#6e6e73;color:var(--cal-muted);font-family:Roboto,system-ui,-apple-system,sans-serif;font-family:var(--cal-font-body);font-size:10px}.cal-permanent-tile-wide{width:100%}.cal-permanent-bars{align-items:flex-end;display:flex;gap:4px;height:40px;margin-top:4px;min-width:0;width:100%}.cal-permanent-bars span{background:#0071e3;background:var(--cal-accent);border-radius:2px;flex:1 1;min-height:3px;min-width:0;opacity:1}@media (max-width:640px){.cal-permanent-row{flex-direction:column}.cal-shell-mobile{height:auto;min-height:100vh;overflow-y:visible;padding:0 0 64px}.cal-shell-mobile .cal-frame{display:block;height:auto;margin:0;max-width:none}.cal-shell-mobile .cal-content{display:block}.cal-shell-mobile .cal-margin,.cal-shell-mobile .cal-menu-buttons{display:none}.cal-shell-mobile .cal-actions{display:block}.cal-shell-mobile .cal-panel-leaf{align-items:stretch;background:#0000;box-shadow:none;height:auto;justify-content:flex-start;min-height:0;overflow:visible;padding:0}.cal-shell-mobile .cal-footer{padding:16px 0 24px}}.menu-mobile{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fff;background:var(--cal-surface);border-top:1px solid #0000000f;border-top:1px solid var(--cal-border);bottom:0;box-shadow:0 1px 2px #0000000a,0 2px 8px #0000000a;box-shadow:var(--cal-shadow-sm);height:64px;justify-content:space-around;left:0;position:fixed;width:100%;z-index:1000}.menu-mobile,.menu-mobile-item{align-items:center;display:flex}.menu-mobile-item{background:none;border:none;color:#6e6e73;color:var(--cal-muted);cursor:pointer;flex-direction:column;font-family:Roboto,system-ui,-apple-system,sans-serif;font-family:var(--cal-font-body);font-size:11px;gap:4px;letter-spacing:.01em;padding:0;text-decoration:none}.menu-mobile-item-icon{align-items:center;display:flex;height:22px;justify-content:center;width:22px}.menu-mobile-item-icon svg{height:100%;width:100%}.menu-mobile-item--active{color:#0071e3;color:var(--cal-accent)}select{appearance:none;background-image:none}.app-loading-screen{align-items:center;background:#f5f5f7;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.app-loading-logo{animation:logoPulse 4s ease-in-out infinite;height:auto;object-fit:contain;transform:translateY(-4vh);width:12vw}@keyframes logoPulse{0%,to{opacity:1}50%{opacity:.45}}@media (max-width:768px){.app-loading-logo{width:35vw}}:root{--cal-bg:#f5f5f7;--cal-surface:#fff;--cal-surface-raised:#fff;--cal-border:#0000000f;--cal-border-strong:#00000014;--cal-text:#1d1d1f;--cal-text-on-accent:#fff;--cal-muted:#6e6e73;--cal-accent:#0071e3;--cal-accent-soft:#0071e314;--cal-color-expense:#d1242f;--cal-color-income:#1a7f37;--cal-color-white:#fff;--cal-overlay-backdrop:#00000052;--cal-shadow-sm:0 1px 2px #0000000a,0 2px 8px #0000000a;--cal-shadow-md:0 2px 6px #0000000d,0 10px 30px #0000000f;--cal-font-display:"Roboto",system-ui,-apple-system,sans-serif;--cal-font-body:"Roboto",system-ui,-apple-system,sans-serif;--cal-font-mono:"Roboto",system-ui,-apple-system,sans-serif;--cal-font-size-3xs:10px;--cal-font-size-2xs:11px;--cal-font-size-xs:12px;--cal-font-size-sm:13px;--cal-font-size-md:14px;--cal-font-size-lg:15px;--cal-font-size-icon:16px;--cal-font-size-xl:18px;--cal-font-size-2xl:22px;--cal-font-size-2lg:17px;--cal-font-weight-regular:400;--cal-font-weight-semibold:600;--cal-font-weight-bold:700;--cal-letter-spacing-tight:0.01em;--cal-letter-spacing-wide:0.02em;--cal-letter-spacing-eyebrow:0.08em;--cal-line-height-tight:1.25;--cal-line-height-normal:1.5;--cal-space-1:1px;--cal-space-2:2px;--cal-space-4:4px;--cal-space-5:5px;--cal-space-6:6px;--cal-space-8:8px;--cal-space-10:10px;--cal-space-12:12px;--cal-space-14:14px;--cal-space-16:16px;--cal-space-18:18px;--cal-space-20:20px;--cal-space-24:24px;--cal-space-32:32px;--cal-radius:11px;--cal-radius-8:8px;--cal-radius-4:4px;--cal-radius-5:5px;--cal-radius-6:6px;--cal-radius-sm:100px;--cal-radius-md:10px;--cal-radius-xs:2px;--cal-radius-full:50%;--cal-icon-radius-sm:9px;--cal-icon-size-2xs:30px;--cal-icon-size-sm:34px;--cal-icon-size-md:36px;--cal-bar-height:6px;--cal-bar-radius:3px;--cal-margin:clamp(16px,6vw,64px);--cal-card-width:20vw;--cal-menu-row-height:clamp(32px,4vh,40px);--cal-shell-padding:clamp(var(--cal-space-12),2vw,var(--cal-space-24));--cal-frame-max-width:1120px;--cal-menu-btn-circle-icon-size:23px;--cal-modal-max-width:480px;--cal-modal-max-height:80vh;--cal-modal-close-size:28px;--cal-modal-header-padding:var(--cal-space-16) var(--cal-space-20);--cal-panel-leaf-padding:1vh 1vh 1.6vh 1.6vh;--cal-permanent-bars-height:40px;--cal-bars-min-height:3px;--cur-onboard-card-max-width:440px;--cur-onboard-card-padding:32px 28px;--cal-avatar-size:58px;--cal-menu-mobile-height:64px;--cal-menu-mobile-gap:4px;--cal-menu-mobile-icon-size:22px;--cal-btn-padding-y:9px;--cal-btn-padding-x:var(--cal-space-18);--cal-opacity-disabled:0.4;--cal-opacity-disabled-subtle:0.35;--cal-opacity-chart-fill:0.85;--cal-transition-fast:0.15s ease;--cal-transition-transform:0.1s ease;--cal-active-press:1px;--cal-z-overlay:1000;--cal-control-height-sm:30px;--cal-control-height-xs:26px;--cal-icon-size-xs:32px;--cal-space-3:3px;--cal-space-9:9px;--cal-chart-widget-height:240px;--settings-skel-w-name:130px;--settings-skel-w-username:90px;--settings-skel-w-value:170px;--settings-skel-w-short:85px;--settings-skel-w-date:100px;--cal-skeleton-bg:#e5e5e7;--cal-shadow-avatar:0 1px 3px #00000014,0 0 0 1px #0000000a;--legacy-surface:#f2f1f3;--legacy-bg-panel:#edebee;--legacy-bg-header:#e0dee1;--legacy-border:#d5d3d6;--legacy-border-light:#e1e0e3;--legacy-border-footer:#e8e7e9;--legacy-border-subtle:#dedcdf;--legacy-border-toggle:#d0cfd2;--legacy-text-secondary:#555;--legacy-text-hint:#999;--legacy-placeholder:#aaa;--legacy-danger-soft:#fce8e9;--legacy-danger-border:#e8b9bd;--legacy-backdrop:#0000008c;--legacy-btn-secondary-gradient-start:#faf8fb;--legacy-btn-secondary-gradient-end:#e0dfe3;--legacy-btn-secondary-gradient-hover-start:#fff;--legacy-btn-secondary-gradient-hover-end:#e6e5e9;--legacy-btn-secondary-gradient-active-start:#e0dfe3;--legacy-btn-secondary-gradient-active-end:#faf8fb;--legacy-btn-secondary-border:#d5d4d8;--legacy-btn-primary-gradient-start:#428cef;--legacy-btn-primary-gradient-end:#1169d3;--legacy-btn-primary-gradient-hover-start:#5a9bff;--legacy-btn-primary-gradient-hover-end:#1b74e4;--legacy-btn-primary-gradient-active-start:#1169d3;--legacy-btn-primary-gradient-active-end:#428cef;--legacy-btn-primary-border:#1164c9;--legacy-shadow-modal:0 30px 90px #00000073;--legacy-shadow-inset:inset 0 1px 1px #0000000a;--legacy-btn-hover-shadow-secondary:0 1px 0 #ffffffe6 inset,0 1px 3px #00000026;--legacy-btn-hover-shadow-primary:0 1px 0 #ffffff40 inset,0 2px 6px #0003;--legacy-btn-active-shadow-primary:0 1px 2px #00000040 inset;--legacy-toggle-active-shadow:0 1px 3px #0000001f;--legacy-modal-width:40vw;--legacy-modal-radius:12px;--legacy-header-height:5vh;--legacy-header-min-height:40px;--legacy-font-size-header:0.9rem;--legacy-content-padding:2vh 2vw;--legacy-font-size-body:0.8rem;--legacy-footer-padding:14px 20px;--legacy-footer-gap:0.5vw;--legacy-anim-duration:0.25s ease-out;--legacy-backdrop-blur:6px;--legacy-z-modal:9999;--legacy-form-label-width:7vw;--legacy-form-row-gap:1vw;--legacy-form-row-padding:1.4vh 0;--legacy-form-row-min-height:6vh;--legacy-input-padding:0.7vh 0.7vw;--legacy-input-radius:6px;--legacy-font-size-hint:0.75rem;--legacy-currency-padding-x:0.8vw;--legacy-font-size-amount:0.95rem;--legacy-toggle-margin:1vh 0 0.5vh 0;--legacy-toggle-radius:7px;--legacy-toggle-btn-padding:0.9vh 0.6vw;--legacy-toggle-btn-font-weight:500;--legacy-toggle-active-radius:5px;--legacy-btn-min-width:5vw;--legacy-btn-disabled-opacity:0.45;--legacy-confirm-width:25vw;--legacy-font-size-confirm:1rem;--legacy-text-strong:#000;--legacy-text-tertiary:#888;--legacy-icon-picker-trigger-bg:#ffffffb3;--legacy-shadow-popover:0 8px 24px #0003;--legacy-hover-tint:#0000000d;--legacy-z-popover:10000;--legacy-picker-grid-max-height:220px;--legacy-anim-fade:0.2s ease-out;--legacy-anim-slide:0.25s cubic-bezier(0.32,0.72,0,1);--legacy-sheet-radius:16px;--legacy-handle-width:36px;--legacy-handle-height:4px;--legacy-handle-radius:2px;--legacy-header-close-clearance:44px;--legacy-font-size-base:1rem;--legacy-font-size-content:0.95rem;--legacy-font-size-label:0.9rem;--legacy-font-size-amount-mobile:1.1rem;--cal-font-weight-medium:500;--legacy-radius-toggle-outer:9px;--legacy-radius-toggle-active:7px;--legacy-icon-choice-size:40px;--legacy-choice-border-width:2px;--cal-space-28:28px;--legacy-close-btn-bg:#e4e2e6;--legacy-close-btn-color:#6b6a6e;--legacy-handle-color:#c9c7cc;--legacy-toggle-bg:#e8e7ea;--legacy-toggle-search:#fff;--legacy-shadow-sheet:0 -12px 40px #00000059;--legacy-shadow-color-active:0 0 0 var(--legacy-choice-border-width) var(--cal-color-white) inset}[data-theme=dark]{--cal-bg:#1c1c1e;--cal-surface:#2c2c2e;--cal-surface-raised:#3a3a3c;--cal-border:#ffffff14;--cal-border-strong:#ffffff1f;--cal-text:#f5f5f7;--cal-text-on-accent:#fff;--cal-muted:#98989d;--cal-accent:#0a84ff;--cal-accent-soft:#0a84ff29;--cal-color-expense:#ff6b64;--cal-color-income:#3fb950;--cal-color-white:#fff;--cal-overlay-backdrop:#0000008c;--cal-shadow-sm:0 1px 2px #0000004d,0 2px 8px #0000004d;--cal-shadow-md:0 2px 6px #00000059,0 10px 30px #0006;--cal-skeleton-bg:#3a3a3c;--cal-shadow-avatar:0 1px 3px #0000004d,0 0 0 1px #ffffff0f;--legacy-surface:#232226;--legacy-bg-panel:#1c1b1e;--legacy-bg-header:#141316;--legacy-border:#3a383d;--legacy-border-light:#2c2a2e;--legacy-border-footer:#2c2a2e;--legacy-border-subtle:#3a383d;--legacy-border-toggle:#3a383d;--legacy-text-secondary:#9b989f;--legacy-text-hint:#6e6c72;--legacy-placeholder:#55535a;--legacy-danger-soft:#3a1f20;--legacy-danger-border:#5c3236;--legacy-backdrop:#000000b3;--legacy-btn-secondary-gradient-start:#2e2c30;--legacy-btn-secondary-gradient-end:#201f22;--legacy-btn-secondary-gradient-hover-start:#38363a;--legacy-btn-secondary-gradient-hover-end:#262528;--legacy-btn-secondary-gradient-active-start:#201f22;--legacy-btn-secondary-gradient-active-end:#2e2c30;--legacy-btn-secondary-border:#3a383d;--legacy-btn-primary-gradient-start:#3a8dff;--legacy-btn-primary-gradient-end:#0d5fc4;--legacy-btn-primary-gradient-hover-start:#529cff;--legacy-btn-primary-gradient-hover-end:#1169d3;--legacy-btn-primary-gradient-active-start:#0d5fc4;--legacy-btn-primary-gradient-active-end:#3a8dff;--legacy-btn-primary-border:#0d5fc4;--legacy-shadow-modal:0 30px 90px #0009;--legacy-shadow-inset:inset 0 1px 1px #0000004d;--legacy-btn-hover-shadow-secondary:0 1px 0 #ffffff0d inset,0 1px 3px #0006;--legacy-btn-hover-shadow-primary:0 1px 0 #ffffff26 inset,0 2px 6px #0006;--legacy-btn-active-shadow-primary:0 1px 2px #0006 inset;--legacy-toggle-active-shadow:0 1px 3px #0006;--legacy-text-strong:#f2f1f3;--legacy-text-tertiary:#9b989f;--legacy-icon-picker-trigger-bg:#2c2a2eb3;--legacy-shadow-popover:0 8px 24px #0000008c;--legacy-hover-tint:#ffffff0f;--legacy-close-btn-bg:#2e2c30;--legacy-close-btn-color:#9b989f;--legacy-handle-color:#55535a;--legacy-toggle-bg:#2c2a2e;--legacy-toggle-search:#2c2a2e;--legacy-shadow-sheet:0 -12px 40px #0009}.leaf-fill{align-self:stretch;display:flex;flex-direction:column;height:100%;min-height:0;width:100%}.dw-heading{color:var(--cal-text);flex-shrink:0;font-family:var(--cal-font-display);font-size:13px;font-weight:600;margin:0}.dw-col-header{align-items:center;display:flex;flex-shrink:0;justify-content:space-between}.dw-add-btn{background:var(--cal-accent);border:none;border-radius:var(--cal-radius-sm);color:#fff;cursor:pointer;font-size:11px;font-weight:600;padding:5px 11px}.dw-add-btn-neutral{background:var(--cal-bg);color:var(--cal-text)}.dw-tx-panel,.dw-txl-panel{gap:1vh}.dw-txl-list{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:auto}.dw-tx-row{align-items:center;background:#0000;border:none;border-bottom:1px solid var(--cal-border);box-sizing:border-box;cursor:pointer;display:flex;font-family:var(--cal-font-body);gap:12px;padding:10px 4px;text-align:left;width:100%}.dw-tx-row:hover{background:var(--cal-accent-soft)}.dw-tx-icon{align-items:center;border-radius:8px;display:flex;flex-shrink:0;font-size:16px;height:36px;justify-content:center;width:36px}.dw-tx-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.dw-tx-name{color:var(--cal-text);font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dw-tx-sub{color:var(--cal-muted);font-size:11px}.dw-tx-amount{font-feature-settings:"tnum";color:var(--cal-text);flex-shrink:0;font-size:clamp(11px,3vw,13px);font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.dw-amount-income{color:#1a7f37}.dw-empty-state{align-items:center;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;gap:12px;justify-content:center;min-height:0;padding:16px 16px 40px;width:100%}.dw-empty-state-label{color:var(--cal-muted);font-size:14px;text-align:center}.dw-empty-state-compact{gap:6px;padding:4px 8px 12px}.dw-empty-state-compact .dw-empty-state-label{font-size:11px}.dw-report-panel{gap:8px}.dw-report-delta{background:var(--cal-bg);border-radius:var(--cal-radius-sm);flex-shrink:0;font-size:10px;font-weight:700;padding:2px 7px}.dw-report-delta-up{color:#d1242f}.dw-report-delta-down{color:#1a7f37}.dw-report-body{display:flex;flex:1 1;flex-direction:column;gap:8px;min-height:0}.dw-report-trend{align-items:flex-end;display:flex;flex:1 1;gap:4px;min-height:24px}.dw-report-trend-col{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:2px;height:100%;min-width:0}.dw-report-trend-bars{align-items:flex-end;display:flex;flex:1 1;gap:2px;justify-content:center;width:100%}.dw-report-bar{border-radius:2px 2px 0 0;min-height:2px;width:5px}.dw-report-bar-income{background:#1a7f37;opacity:.85}.dw-report-bar-expense{background:#d1242f;opacity:.85}.dw-report-trend-label{color:var(--cal-muted);flex-shrink:0;font-size:8px}.dw-report-cats{display:flex;flex:1 1;flex-direction:column;gap:5px;min-height:0;overflow-y:auto}.dw-report-cat-row{align-items:center;display:flex;gap:6px}.dw-report-cat-dot{border-radius:50%;flex-shrink:0;height:6px;width:6px}.dw-report-cat-name{color:var(--cal-text);flex-shrink:0;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:50px}.dw-report-cat-bar-track{background:var(--cal-bg);border-radius:2px;flex:1 1;height:4px;min-width:0;overflow:hidden}.dw-report-cat-bar-fill{border-radius:2px;display:block;height:100%}.dw-report-cat-amount{font-feature-settings:"tnum";color:var(--cal-muted);flex-shrink:0;font-size:10px;font-variant-numeric:tabular-nums;min-width:36px;text-align:right;white-space:nowrap}.dw-bpr-panel{gap:8px}.dw-bpr-body{align-items:start;display:flex;flex:1 1;gap:1.5vw;min-height:0;padding:.5vh 0 2vh 1vh}.dw-bpr-ring-wrap{flex-shrink:0;position:relative}.dw-bpr-center,.dw-bpr-ring-wrap{align-items:center;display:flex;justify-content:center}.dw-bpr-center{flex-direction:column;inset:0;position:absolute}.dw-bpr-center-value{color:var(--cal-text);font-family:var(--cal-font-display);font-size:clamp(14px,4vw,20px);font-weight:700;white-space:nowrap}.dw-bpr-center-label{color:var(--cal-muted);font-size:11px}.dw-bpr-stats{flex:1 1;gap:10px;justify-content:center;min-width:0}.dw-bpr-stat,.dw-bpr-stats{display:flex;flex-direction:column}.dw-bpr-stat{gap:1px}.dw-bpr-stat-label{color:var(--cal-muted);font-size:10px}.dw-bpr-stat-value{font-feature-settings:"tnum";color:var(--cal-text);font-family:var(--cal-font-display);font-size:clamp(12px,3vw,16px);font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}.dw-bpr-stat-over{color:#d1242f}.dw-goals-panel,.dw-goals-row{gap:10px;min-width:0}.dw-goals-row{align-items:stretch;display:flex;flex:1 1;min-height:0;overflow-x:auto}.dw-goal-card{align-items:center;background:var(--cal-bg);border:none;border-radius:var(--cal-radius);box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;flex-shrink:0;gap:6px;padding:12px 8px;width:88px}.dw-goal-card:hover{background:var(--cal-accent-soft)}.dw-goal-ring-wrap{flex-shrink:0;position:relative}.dw-goal-ring-center,.dw-goal-ring-wrap{align-items:center;display:flex;justify-content:center}.dw-goal-ring-center{inset:0;position:absolute}.dw-goal-card-name{color:var(--cal-text);font-size:12px;font-weight:600;width:100%}.dw-goal-card-amounts,.dw-goal-card-name{overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.dw-goal-card-amounts{font-feature-settings:"tnum";color:var(--cal-muted);font-size:10px;font-variant-numeric:tabular-nums;max-width:100%}.dw-goal-card-complete{color:#1a7f37;font-weight:600}.dw-goal-card-badge{background:#0969da22;border-radius:999px;color:#0969da;font-size:9px;font-weight:700;letter-spacing:.02em;padding:2px 8px;text-transform:uppercase}.dw-goal-contribute-hint{color:#6e6e73;font-size:12px;line-height:1.4;margin:0}.dw-goal-current-readout{align-items:baseline;background:#e8e7ea;border-radius:8px;display:flex;justify-content:space-between;padding:10px 14px}.dw-goal-current-label{color:#6e6e73;font-size:12px}.dw-goal-current-value{color:#1d1d1f;font-size:16px;font-weight:700}.dw-goal-error{color:#d1242f;font-size:11px;margin-top:-8px}.dw-color-grid{display:flex;flex-wrap:wrap;gap:8px}.dw-color-choice{border:2px solid #0000;border-radius:50%;cursor:pointer;height:28px;width:28px}.dw-color-choice-active{border-color:var(--cal-text);box-shadow:0 0 0 2px var(--cal-bg) inset}.new-project-overlay{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0000008c;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.new-project-window{animation:newProjectIn .25s ease-out;background:var(--legacy-surface);border-radius:12px;box-shadow:0 30px 90px #00000073;color:var(--cal-text);max-width:480px;overflow:hidden;width:40vw}.new-project-header{align-items:center;background:linear-gradient(var(--legacy-bg-panel),var(--legacy-bg-header));border-bottom:1px solid var(--legacy-border);display:flex;font-size:.9rem;height:5vh;justify-content:center;min-height:40px}.new-project-header h4{font-weight:600;margin:0}.new-project-content{font-size:.8rem;padding:2vh 2vw}.new-project-footer{background:var(--legacy-surface);border-top:1px solid var(--legacy-border-footer);display:flex;gap:.5vw;justify-content:flex-end;padding:14px 20px}@keyframes newProjectIn{0%{opacity:0;transform:scale(.96) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}.form-row{grid-gap:1vw;align-items:center;border-bottom:1px solid var(--legacy-border-light);display:grid;gap:1vw;grid-template-columns:7vw 1fr;min-height:6vh;padding:1.4vh 0}.form-row:last-of-type{border-bottom:none}.form-row label{align-items:center;color:var(--cal-text);display:flex;font-family:inherit;font-size:.8rem;font-weight:600;justify-content:flex-end;text-align:end}.form-row input,.form-row select{background:var(--cal-surface);border:1px solid var(--legacy-border);border-radius:6px;box-shadow:var(--legacy-shadow-inset);box-sizing:border-box;color:var(--cal-text);font:inherit;outline:none;padding:.7vh .7vw;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.form-row select{cursor:pointer}.form-row input::placeholder{color:var(--legacy-placeholder)}.dw-field-hint{color:var(--legacy-text-hint);font-size:.75rem;font-style:italic}.dw-amount-wrap{background:var(--cal-surface);border:1px solid var(--legacy-border);border-radius:6px;box-shadow:var(--legacy-shadow-inset);box-sizing:border-box;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.dw-amount-wrap,.dw-currency{align-items:center;display:flex}.dw-currency{border-right:1px solid #dedcdf;color:#555;flex-shrink:0;font-size:.8rem;height:100%;padding:0 .8vw}.dw-amount-input{background:#0000;border:none;border:none!important;color:#1d1d1f;flex:1 1;font:inherit;font-size:.95rem;font-weight:600;min-width:0;outline:none;padding:.7vh .7vw}.dw-amount-input::placeholder{color:#aaa}.dw-type-toggle{align-items:stretch;background:var(--cal-bg-popover);border:1px solid var(--legacy-border-toggle);border-radius:7px;display:flex;margin:1vh 0 .5vh;overflow:hidden}.dw-type-btn{background:#0000;border:none;border-radius:0;color:var(--legacy-text-secondary);cursor:pointer;flex:1 1;font-family:inherit;font-size:.8rem;font-weight:500;padding:.9vh .6vw;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.dw-type-btn+.dw-type-btn{border-left:1px solid var(--legacy-border-toggle)}.dw-type-btn-active.dw-type-expense{background:var(--cal-surface);border-radius:5px;box-shadow:var(--legacy-toggle-active-shadow);color:var(--cal-color-expense)}.dw-type-btn-active.dw-type-income{background:var(--cal-surface);border-radius:5px;box-shadow:0 1px 3px #0000001f;color:var(--cal-color-income)}.dw-icon-grid{display:flex;flex-wrap:wrap;gap:8px}.dw-icon-choice{align-items:center;background:var(--cal-surface);border:1px solid var(--legacy-border);border-radius:9px;box-shadow:var(--legacy-shadow-inset);color:var(--cal-text);cursor:pointer;display:flex;height:34px;justify-content:center;width:34px}.dw-icon-choice-active{border-color:#1169d3}.primary-btn,.secondary-btn{border-radius:6px;cursor:pointer;font-family:inherit;font-size:.8rem;font-weight:400;min-width:5vw;padding:.7vh .7vw;transition:background .15s ease,box-shadow .15s ease,transform .05s ease}.secondary-btn{background:linear-gradient(var(--legacy-btn-secondary-gradient-start),var(--legacy-btn-secondary-gradient-end));border:1px solid var(--legacy-btn-secondary-border);color:var(--cal-text)}.secondary-btn:hover{background:linear-gradient(var(--legacy-btn-secondary-gradient-hover-start),var(--legacy-btn-secondary-gradient-hover-end));box-shadow:var(--legacy-btn-hover-shadow-secondary)}.secondary-btn:active{background:linear-gradient(var(--legacy-btn-secondary-gradient-active-start),var(--legacy-btn-secondary-gradient-active-end));transform:translateY(var(--cal-active-press))}.primary-btn{background:linear-gradient(#428cef,#1169d3);border:1px solid #1164c9;color:#fff}.primary-btn:hover:not(:disabled){background:linear-gradient(#5a9bff,#1b74e4);box-shadow:inset 0 1px 0 #ffffff40,0 2px 6px #0003}.primary-btn:active:not(:disabled){background:linear-gradient(#1169d3,#428cef);box-shadow:inset 0 1px 2px #00000040;transform:translateY(1px)}.primary-btn:disabled{cursor:default;opacity:.45}.transaction-delete-btn{background:#0000;border:1px solid #0000;color:#d1242f}.transaction-delete-btn:hover{background:#fce8e9;border-color:#e8b9bd}.dw-btn-left{margin-right:auto}.confirm-window{animation:newProjectIn .25s ease-out;background:#f2f1f3;border-radius:12px;box-shadow:0 30px 90px #00000073;color:#1d1d1f;max-width:480px;overflow:hidden;width:25vw}.confirm-row{grid-gap:1vw;align-items:center;display:grid;gap:1vw;min-height:6vh;padding:2vh 2vw}.dw-confirm-text{color:#1d1d1f;font-size:1rem;font-weight:400;margin:0;text-align:center}.mm-overlay{align-items:flex-end;animation:mobSheetFadeIn .2s ease-out;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0000008c;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.mm-window{animation:mobSheetSlideUp .25s cubic-bezier(.32,.72,0,1);background:#f2f1f3;border-radius:16px 16px 0 0;box-shadow:0 -12px 40px #00000059;color:#1d1d1f;display:flex;flex-direction:column;max-height:88vh;overflow:hidden;width:100%}.mm-handle{display:flex;flex-shrink:0;justify-content:center;padding:10px 0 2px}.mm-handle span{background:#c9c7cc;border-radius:2px;height:4px;width:36px}.mm-header{align-items:center;border-bottom:1px solid #d5d3d6;display:flex;flex-shrink:0;justify-content:center;padding:10px 44px 12px;position:relative}.mm-header h4{font-size:1rem;font-weight:600;margin:0;text-align:center}.mm-close-btn{align-items:center;background:#e4e2e6;border:none;border-radius:50%;color:#6b6a6e;display:flex;font-size:1rem;height:30px;justify-content:center;line-height:1;position:absolute;right:12px;top:50%;transform:translateY(-50%);width:30px}.mm-content{-webkit-overflow-scrolling:touch;flex:1 1;font-size:.95rem;overflow-y:auto;padding:4px 20px 16px}.mm-footer{background:#f2f1f3;border-top:1px solid #e8e7e9;flex-shrink:0;gap:8px;padding:12px 20px calc(14px + env(safe-area-inset-bottom))}.mm-field,.mm-footer{display:flex;flex-direction:column}.mm-field{border-bottom:1px solid #e1e0e3;gap:6px;padding:12px 0}.mm-field:last-of-type{border-bottom:none}.mm-label{color:#1d1d1f;font-size:.8rem;font-weight:600}.mm-field input,.mm-field select,.mm-field textarea{background:#fff;border:1px solid #d5d3d6;border-radius:8px;box-shadow:inset 0 1px 1px #0000000a;box-sizing:border-box;color:#1d1d1f;font:inherit;font-size:1rem;outline:none;padding:12px;width:100%}.mm-field select{cursor:pointer}.mm-field input::placeholder,.mm-field textarea::placeholder{color:#aaa}.mm-field-hint{color:#999;font-size:.8rem;font-style:italic}.mm-amount-wrap{background:#fff;border:1px solid #d5d3d6;border-radius:8px;box-shadow:inset 0 1px 1px #0000000a;box-sizing:border-box;overflow:hidden;width:100%}.mm-amount-wrap,.mm-currency{align-items:center;display:flex}.mm-currency{border-right:1px solid #dedcdf;color:#555;flex-shrink:0;font-size:.9rem;height:100%;padding:0 12px}.mm-amount-input{background:#0000;border:none!important;color:#1d1d1f;flex:1 1;font:inherit;font-size:1.1rem;font-weight:600;min-width:0;outline:none;padding:12px}.mm-amount-input::placeholder{color:#aaa}.mm-type-toggle{align-items:stretch;background:#e8e7ea;border:1px solid #d0cfd2;border-radius:9px;display:flex;margin-top:4px;overflow:hidden}.mm-type-btn{background:#0000;border:none;border-radius:0;color:#555;flex:1 1;font-family:inherit;font-size:.9rem;font-weight:500;padding:12px 8px}.mm-type-btn+.mm-type-btn{border-left:1px solid #d0cfd2}.mm-type-btn-active.mm-type-expense{background:#fff;border-radius:7px;box-shadow:0 1px 3px #0000001f;color:#d1242f}.mm-type-btn-active.mm-type-income{background:#fff;border-radius:7px;box-shadow:0 1px 3px #0000001f;color:#1a7f37}.mm-color-grid,.mm-icon-grid{display:flex;flex-wrap:wrap;gap:10px}.mm-icon-choice{align-items:center;background:#e8e7ea;border:2px solid #0000;border-radius:10px;display:flex;height:40px;justify-content:center;width:40px}.mm-icon-choice-active{border-color:#1169d3}.mm-color-choice{border:2px solid #0000;border-radius:50%;height:32px;width:32px}.mm-color-choice-active{border-color:#1d1d1f;box-shadow:inset 0 0 0 2px #fff}.mm-btn{border-radius:10px;box-sizing:border-box;font-family:inherit;font-size:1rem;font-weight:500;padding:14px;text-align:center;width:100%}.mm-btn-primary{background:linear-gradient(#428cef,#1169d3);border:1px solid #1164c9;color:#fff;order:-1}.mm-btn-primary:disabled{opacity:.45}.mm-btn-secondary{background:linear-gradient(#faf8fb,#e0dfe3);border:1px solid #d5d4d8;color:#1d1d1f}.mm-btn-danger{background:#0000;border:1px solid #0000;color:#d1242f;font-weight:400}.mm-confirm-window{animation:mobSheetSlideUp .25s cubic-bezier(.32,.72,0,1);background:#f2f1f3;border-radius:16px 16px 0 0;box-shadow:0 -12px 40px #00000059;color:#1d1d1f;overflow:hidden;width:100%}.mm-confirm-content{padding:28px 24px 8px}.mm-confirm-text{color:#1d1d1f;font-size:1rem;font-weight:400;margin:0;text-align:center}@keyframes mobSheetFadeIn{0%{opacity:0}to{opacity:1}}@keyframes mobSheetSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.icon-picker{display:inline-block;position:relative}.icon-picker-trigger{align-items:center;background:var(--legacy-icon-picker-trigger-bg);border:1px solid var(--legacy-border);border-radius:var(--legacy-input-radius);color:var(--legacy-text-strong);cursor:pointer;display:flex;height:var(--cal-icon-size-sm);justify-content:center;width:var(--cal-icon-size-sm)}.icon-picker-plus{font-size:var(--cal-font-size-xl);font-weight:var(--cal-font-weight-semibold);line-height:1}.icon-picker-dropdown-portal{background:var(--legacy-toggle-bg);border:1px solid var(--legacy-border-toggle);border-radius:var(--cal-radius-md);box-shadow:var(--legacy-shadow-popover);color:var(--legacy-text-strong);display:flex;flex-direction:column;gap:var(--cal-space-8);padding:var(--cal-space-10);position:fixed;z-index:var(--legacy-z-popover)}.icon-picker-search{background:var(--legacy-toggle-search);border:1px solid var(--legacy-border);border-radius:var(--legacy-input-radius);box-sizing:border-box;color:var(--legacy-text-strong);font-size:var(--cal-font-size-sm);outline:none;padding:var(--legacy-input-padding);width:100%}.icon-picker-search::placeholder{color:var(--legacy-text-tertiary)}.icon-picker-grid{grid-gap:var(--cal-space-6);display:grid;gap:var(--cal-space-6);grid-template-columns:repeat(6,1fr);max-height:var(--legacy-picker-grid-max-height);overflow-y:auto}.icon-picker-option{align-items:center;background:#0000;border:none;border-radius:var(--legacy-input-radius);color:inherit;cursor:pointer;display:flex;height:var(--cal-icon-size-sm);justify-content:center;width:var(--cal-icon-size-sm)}.icon-picker-option:hover{background:var(--legacy-hover-tint)}.icon-picker-option.selected{background:var(--cal-accent);background:var(--buttonColor,var(--cal-accent));color:var(--cal-color-white);color:var(--hoverTextColor,var(--cal-color-white))}.icon-picker-empty{color:var(--legacy-text-tertiary);font-size:var(--cal-font-size-sm);grid-column:1/-1;padding:var(--cal-space-16) 0;text-align:center}.mt-rec-panel,.mt-tx-panel{gap:10px}.mt-rec-row{align-items:center;background:var(--cal-bg);border:none;border-radius:8px;box-sizing:border-box;cursor:pointer;display:flex;gap:10px;margin-bottom:8px;padding:10px 12px;text-align:left;width:100%}.mt-rec-row:hover{background:var(--cal-accent-soft)}.mt-rec-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.mt-rec-name{color:var(--cal-text);font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mt-rec-sub{color:var(--cal-muted);font-size:11px}.mt-rec-amount{color:var(--cal-text);flex-shrink:0;font-size:12px;font-weight:600}.bt-cat-panel,.bt-overview-panel{gap:14px}.bt-col-header{align-items:center;display:flex;flex-shrink:0;justify-content:space-between}.bt-heading{color:var(--cal-text);font-family:var(--cal-font-display);font-size:13px;font-weight:600;margin:0}.bt-add-btn{border:none;border-radius:var(--cal-radius-sm);cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px}.bt-add-btn-neutral{background:var(--cal-bg);color:var(--cal-text)}.bt-add-btn-accent{background:var(--cal-accent);color:#fff}.bt-overview-body{align-items:center;display:flex;flex:1 1;gap:20px}.bt-ring-wrap{flex-shrink:0;position:relative}.bt-ring-center,.bt-ring-wrap{align-items:center;display:flex;justify-content:center}.bt-ring-center{flex-direction:column;inset:0;position:absolute}.bt-ring-value{color:var(--cal-text);font-family:var(--cal-font-display);font-size:18px;font-weight:700}.bt-ring-label{color:var(--cal-muted);font-size:11px}.bt-overview-stats{display:flex;flex-direction:column;gap:10px;min-width:0}.bt-overview-stat{display:flex;flex-direction:column;gap:2px}.bt-overview-stat-label{color:var(--cal-muted);font-size:11px}.bt-overview-stat-value{color:var(--cal-text);font-family:var(--cal-font-display);font-size:15px;font-weight:600}.bt-cat-row{align-items:center;background:#0000;border:none;border-radius:10px;box-sizing:border-box;cursor:pointer;display:flex;gap:12px;padding:10px 8px;text-align:left;width:100%}.bt-cat-row:hover{background:var(--cal-bg)}.bt-cat-icon{align-items:center;border-radius:9px;display:flex;flex-shrink:0;font-size:15px;height:34px;justify-content:center;width:34px}.bt-cat-info{display:flex;flex:1 1;flex-direction:column;gap:5px;min-width:0}.bt-cat-top{align-items:center;display:flex;gap:8px;justify-content:space-between}.bt-cat-name{color:var(--cal-text);font-size:13px;font-weight:600}.bt-cat-amounts{color:var(--cal-muted);flex-shrink:0;font-size:11px}.bt-cat-over{color:#d1242f}.bt-cat-bar-track{background:var(--cal-bg);border-radius:3px;display:block;height:6px;overflow:hidden}.bt-cat-bar-fill{border-radius:3px;display:block;height:100%}.bt-form{gap:16px}.bt-field,.bt-form{display:flex;flex-direction:column}.bt-field{gap:6px}.bt-label{color:var(--cal-muted);font-family:var(--cal-font-display);font-size:12px}.bt-amount-wrap{align-items:center;border:1px solid var(--cal-border-strong);border-radius:var(--cal-radius);box-sizing:border-box;display:flex;gap:4px;padding:8px 12px}.bt-currency{color:var(--cal-muted);font-size:15px}.bt-amount-input{background:#0000;border:none;font-family:var(--cal-font-display);font-size:18px;font-weight:600;outline:none}.bt-amount-input,.bt-input{color:var(--cal-text);width:100%}.bt-input{background:var(--cal-surface);border:1px solid var(--cal-border-strong);border-radius:var(--cal-radius);box-sizing:border-box;font-family:var(--cal-font-body);font-size:13px;padding:8px 12px}.bt-color-grid,.bt-icon-grid{display:flex;flex-wrap:wrap;gap:8px}.bt-icon-choice{align-items:center;background:var(--cal-bg);border:2px solid #0000;border-radius:9px;cursor:pointer;display:flex;font-size:16px;height:36px;justify-content:center;width:36px}.bt-icon-choice-active{border-color:var(--cal-accent)}.bt-color-choice{border:2px solid #0000;border-radius:50%;cursor:pointer;height:28px;width:28px}.bt-color-choice-active{border-color:var(--cal-text);box-shadow:inset 0 0 0 2px #fff}.bt-form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}.bt-btn{border:none;border-radius:var(--cal-radius-sm);cursor:pointer;font-family:var(--cal-font-body);font-size:13px;font-weight:600;padding:9px 18px}.bt-btn-secondary{background:var(--cal-bg);color:var(--cal-text)}.bt-btn-primary{background:var(--cal-accent);color:#fff}.bt-btn-primary:disabled{cursor:default;opacity:.4}.bt-btn-danger{background:#0000;color:#d1242f}.bt-btn-left{margin-right:auto}.bt-confirm{display:flex;flex-direction:column;gap:16px}.bt-confirm-text{color:var(--cal-text);font-size:14px;margin:0}.bt-optional-hint{color:#888;color:var(--cal-muted,#888);font-size:.9em;font-weight:400}.ht-panel{gap:8px}.ht-search-row{display:flex;flex-shrink:0;gap:6px}.ht-search-input{background:var(--cal-bg);flex:1 1;height:30px;min-width:0;outline:none;padding:5px 10px}.ht-search-input,.ht-sort-select{border:1px solid var(--cal-border-strong);border-radius:var(--cal-radius);box-sizing:border-box;color:var(--cal-text);font-family:var(--cal-font-body);font-size:12px}.ht-sort-select{background:var(--cal-surface);flex-shrink:0;padding:6px 10px}.ht-chip-row{align-items:center;display:flex;flex-shrink:0;flex-wrap:wrap;gap:4px}.ht-chip{background:var(--cal-surface);border:1px solid var(--cal-border-strong);border-radius:var(--cal-radius-sm);color:var(--cal-muted);cursor:pointer;font-size:10px;font-weight:600;height:26px;padding:3px 9px}.ht-chip-active{background:var(--cal-accent);border-color:var(--cal-accent);color:#fff}.ht-chip-divider{align-self:stretch;background:var(--cal-border-strong);margin:0 3px;width:1px}.ht-list{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:auto}.ht-row{border-bottom:1px solid var(--cal-border);gap:10px;padding:8px 4px}.ht-icon,.ht-row{align-items:center;display:flex}.ht-icon{background:var(--cal-bg);border-radius:8px;flex-shrink:0;font-size:14px;height:32px;justify-content:center;width:32px}.ht-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.ht-name{color:var(--cal-text);font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ht-sub{color:var(--cal-muted);font-size:10px}.ht-amount{color:var(--cal-text);flex-shrink:0;font-size:12px;font-weight:600}.ht-amount-income{color:#1a7f37}.rp-breakdown-panel,.rp-trend-panel{gap:12px}.rp-heading{color:var(--cal-text);flex-shrink:0;font-family:var(--cal-font-display);font-size:13px;font-weight:600;margin:0}.rp-chart{align-items:flex-end;display:flex;flex:1 1;gap:8px;min-height:0}.rp-chart-col{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:6px;height:100%;min-width:0}.rp-chart-bars{align-items:flex-end;display:flex;flex:1 1;gap:3px;justify-content:center;width:100%}.rp-bar{border-radius:3px 3px 0 0;min-height:3px;width:8px}.rp-bar-income{background:#1a7f37;opacity:.85}.rp-bar-expense{background:#d1242f;opacity:.85}.rp-chart-label{color:var(--cal-muted);flex-shrink:0;font-size:10px}.rp-legend{display:flex;flex-shrink:0;gap:16px}.rp-legend-item{align-items:center;color:var(--cal-muted);display:flex;font-size:11px;gap:6px}.rp-legend-dot{border-radius:50%;height:8px;width:8px}.rp-legend-income{background:#1a7f37}.rp-legend-expense{background:#d1242f}.rp-compare{border-top:1px solid var(--cal-border);display:flex;flex-direction:column;flex-shrink:0;gap:4px;padding-top:10px}.rp-compare-label{color:var(--cal-muted);font-size:11px}.rp-compare-row{align-items:baseline;display:flex;gap:8px}.rp-compare-value{font-family:var(--cal-font-display);font-size:15px;font-weight:700}.rp-compare-up{color:#d1242f}.rp-compare-down{color:#1a7f37}.rp-breakdown-total,.rp-compare-sub{color:var(--cal-muted);font-size:11px}.rp-breakdown-total{flex-shrink:0;margin-top:-6px}.rp-breakdown-list{display:flex;flex:1 1;flex-direction:column;gap:10px;min-height:0;overflow:auto}.rp-breakdown-row{align-items:center;display:flex;gap:10px}.rp-breakdown-icon{align-items:center;border-radius:8px;display:flex;flex-shrink:0;font-size:14px;height:30px;justify-content:center;width:30px}.rp-breakdown-info{display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:0}.rp-breakdown-top{align-items:center;display:flex;gap:8px;justify-content:space-between}.rp-breakdown-name{color:var(--cal-text);font-size:12px;font-weight:600}.rp-breakdown-amount{color:var(--cal-muted);flex-shrink:0;font-size:12px}.rp-breakdown-bar-track{background:var(--cal-bg);border-radius:3px;height:5px;overflow:hidden}.rp-breakdown-bar-fill{border-radius:3px;height:100%}.rp-breakdown-pct{color:var(--cal-muted);flex-shrink:0;font-size:11px;font-weight:600;text-align:right;width:32px}.rp-select{margin-left:1vh;outline:none}.cur-onboard{align-items:center;background:var(--cal-bg);height:100%;justify-content:center;min-height:100vh;padding:24px}.cur-onboard,.cur-onboard-card{box-sizing:border-box;display:flex;width:100%}.cur-onboard-card{background:var(--cal-surface);border-radius:var(--cal-radius);box-shadow:var(--cal-shadow-sm);flex-direction:column;max-width:440px;padding:32px 28px}.cur-onboard-eyebrow{color:var(--cal-accent);font-family:var(--cal-font-body);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.cur-onboard-title{color:var(--cal-text);font-family:var(--cal-font-display);font-size:22px;font-weight:700;line-height:1.25;margin:8px 0 0}.cur-onboard-subtitle{color:var(--cal-muted);font-family:var(--cal-font-body);font-size:13px;line-height:1.5;margin:8px 0 24px}.cur-onboard-grid{display:flex;flex-direction:column;gap:8px}.cur-onboard-option{align-items:center;background:var(--cal-bg);border:1px solid var(--cal-border);border-radius:var(--cal-radius-sm);box-sizing:border-box;cursor:pointer;display:flex;font-family:var(--cal-font-body);gap:12px;padding:12px 14px;text-align:left;transition:background .15s ease,border-color .15s ease;width:100%}.cur-onboard-option:hover{background:var(--cal-accent-soft);border-color:var(--cal-accent)}.cur-onboard-flag{flex-shrink:0;font-size:22px;line-height:1}.cur-onboard-option-main{display:flex;flex:1 1;flex-direction:column;gap:1px;min-width:0}.cur-onboard-code{color:var(--cal-text);font-family:var(--cal-font-display);font-size:13px;font-weight:700}.cur-onboard-name{font-size:11px}.cur-onboard-name,.cur-onboard-sample{color:var(--cal-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cur-onboard-sample{flex-shrink:0;font-family:var(--cal-font-display);font-size:13px;font-weight:600;max-width:40%;text-align:right}.settings-panel{gap:1vh}.settings-profile-head{align-items:center;display:flex;flex-shrink:0;gap:12px}.settings-avatar{align-items:center;background:var(--cal-accent-soft);border-radius:50%;box-shadow:0 1px 3px #00000014,0 0 0 1px #0000000a;color:var(--cal-accent);display:flex;flex:0 0 58px;font-family:var(--cal-font-display);font-size:17px;font-weight:700;height:58px;justify-content:center;overflow:hidden;width:58px}.settings-avatar-image{display:block;height:100%;object-fit:cover;object-position:center;width:100%}.settings-profile-head-text{display:flex;flex-direction:column;gap:2px;min-width:0}.settings-profile-name{color:var(--cal-text);font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-profile-username{color:var(--cal-muted);font-size:12px}.settings-form{flex:1 1;min-height:0;overflow:auto}.settings-readonly-list{background-color:var(--cal-bg);border-radius:var(--cal-radius);display:flex;flex-direction:column;gap:10px;min-height:0;overflow:auto;padding:1.5vh 1.5vh 2vh}.settings-readonly-row{display:flex;flex-direction:column;gap:.5vh}.settings-readonly-label{color:var(--cal-muted);font-size:10px}.settings-readonly-value{color:var(--cal-text);font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-option-list{display:flex;flex:1 1;flex-direction:column;gap:6px;min-height:0;overflow:auto}.settings-option-row{align-items:center;background:var(--cal-bg);border:none;border-radius:var(--cal-radius-sm);cursor:pointer;display:flex;font-family:var(--cal-font-body);justify-content:space-between;padding:10px 12px;text-align:left}.settings-option-row-active{background:var(--cal-accent-soft)}.settings-option-label{color:var(--cal-text);font-size:13px;font-weight:600}.settings-option-check{color:var(--cal-accent);font-size:12px;font-weight:700}.settings-currency-current{align-items:center;background:var(--cal-bg);border-radius:var(--cal-radius);display:flex;flex-shrink:0;gap:12px;padding:12px 14px}.settings-currency-symbol{color:var(--cal-accent);flex-shrink:0;font-family:var(--cal-font-display);font-size:22px;font-weight:700;text-align:center;width:32px}.settings-currency-current-text{display:flex;flex-direction:column;gap:2px}.settings-currency-code{color:var(--cal-text);font-size:14px;font-weight:600}.settings-currency-btn{align-self:flex-start}.settings-skeleton{animation:settingsSkeleton 1.6s ease-in-out infinite;background:#e5e5e7;border-radius:6px;display:block}@keyframes settingsSkeleton{0%,to{opacity:.55}50%{opacity:1}}.settings-avatar-skeleton{border-radius:50%;flex:0 0 58px;height:58px;width:58px}.settings-name-skeleton{border-radius:5px;height:14px;width:130px}.settings-username-skeleton{border-radius:4px;height:12px;width:90px}.settings-value-skeleton{border-radius:4px;height:13px;width:170px}.settings-value-short{width:85px}.settings-value-date{width:100px}.dwm-page{align-items:center;background:var(--cal-bg);display:flex;flex-direction:column;gap:8px;margin:0 auto;max-width:480px;padding:3vh}.dwm-page,.dwm-widget{box-sizing:border-box;width:100%}.dwm-widget{background:var(--cal-surface);border-radius:var(--cal-radius);box-shadow:var(--cal-shadow-md);flex-shrink:0;overflow:hidden}.dwm-card-widget{align-items:center;display:flex;justify-content:center;width:100%}.dwm-card-widget img{display:block;height:auto;object-fit:cover;width:100%}.dwm-card-widget .cal-card-thumb-label{color:var(--cal-muted);font-family:var(--cal-font-display);font-size:13px;letter-spacing:.02em;padding:24px}.dwm-permanent-panel{flex-shrink:0;gap:8px;width:100%}.dwm-permanent-panel.cal-permanent-panel{min-height:auto;overflow:visible}.dwm-permanent-panel .cal-permanent-row{flex-direction:row;flex-shrink:0;gap:8px}.dwm-permanent-panel .cal-permanent-tile,.dwm-transactions-widget{flex-shrink:0;padding:10px}.dwm-transactions-widget{display:flex;flex-direction:column}.dwm-transactions-widget .leaf-fill{flex:none;height:auto}.mtm-page{align-items:center;background:var(--cal-bg);gap:8px;margin:0 auto;max-width:480px;padding:3vh}.mtm-page,.mtm-widget{box-sizing:border-box;display:flex;flex-direction:column;width:100%}.mtm-widget{background:var(--cal-surface);border-radius:var(--cal-radius);box-shadow:var(--cal-shadow-md);flex-shrink:0;overflow:hidden;padding:10px}.mtm-widget .leaf-fill{flex:none;height:auto}.btm-page{align-items:center;background:var(--cal-bg);gap:8px;margin:0 auto;max-width:480px;padding:3vh}.btm-page,.btm-widget{box-sizing:border-box;display:flex;flex-direction:column;width:100%}.btm-widget{background:var(--cal-surface);border-radius:var(--cal-radius);box-shadow:var(--cal-shadow-md);flex-shrink:0;overflow:hidden;padding:10px}.btm-widget .leaf-fill{flex:none;height:auto}.rtm-page{align-items:center;background:var(--cal-bg);gap:8px;margin:0 auto;max-width:480px;padding:3vh}.rtm-page,.rtm-widget{box-sizing:border-box;display:flex;flex-direction:column;width:100%}.rtm-widget{background:var(--cal-surface);border-radius:var(--cal-radius);box-shadow:var(--cal-shadow-md);flex-shrink:0;overflow:hidden;padding:10px}.rtm-widget .leaf-fill{flex:none;height:auto}.rtm-widget-chart{height:240px;min-height:240px}.rtm-widget-chart .leaf-fill{flex:1 1;height:100%}.stm-page{align-items:center;background:var(--cal-bg);gap:8px;margin:0 auto;max-width:480px;padding:3vh}.stm-page,.stm-widget{box-sizing:border-box;display:flex;flex-direction:column;width:100%}.stm-widget{background:var(--cal-surface);border-radius:var(--cal-radius);box-shadow:var(--cal-shadow-md);flex-shrink:0;overflow:hidden;padding:10px}.stm-widget .leaf-fill{flex:none;height:auto}