:root{--vt-c-white: #ffffff;--vt-c-white-soft: #f8f8f8;--vt-c-white-mute: #f2f2f2;--vt-c-black: #181818;--vt-c-black-soft: #222222;--vt-c-black-mute: #282828;--vt-c-indigo: #2c3e50;--vt-c-divider-light-1: rgba(60, 60, 60, .29);--vt-c-divider-light-2: rgba(60, 60, 60, .12);--vt-c-divider-dark-1: rgba(84, 84, 84, .65);--vt-c-divider-dark-2: rgba(84, 84, 84, .48);--vt-c-text-light-1: var(--vt-c-indigo);--vt-c-text-light-2: rgba(60, 60, 60, .66);--vt-c-text-dark-1: var(--vt-c-white);--vt-c-text-dark-2: rgba(235, 235, 235, .64)}:root{--color-background: var(--vt-c-white);--color-background-soft: var(--vt-c-white-soft);--color-background-mute: var(--vt-c-white-mute);--color-border: var(--vt-c-divider-light-2);--color-border-hover: var(--vt-c-divider-light-1);--color-heading: var(--vt-c-text-light-1);--color-text: var(--vt-c-text-light-1);--color-card: #e8e8e8;--color-card-hover: #dedede;--section-gap: 160px}@media(prefers-color-scheme:dark){:root{--color-background: var(--vt-c-black);--color-background-soft: var(--vt-c-black-soft);--color-background-mute: var(--vt-c-black-mute);--color-border: var(--vt-c-divider-dark-2);--color-border-hover: var(--vt-c-divider-dark-1);--color-heading: var(--vt-c-text-dark-1);--color-text: var(--vt-c-text-dark-2);--color-card: #2a2a2a;--color-card-hover: #333333}}*,*:before,*:after{box-sizing:border-box;margin:0;font-weight:400}html{direction:ltr}html[dir=rtl]{direction:rtl}body{min-height:100vh;color:var(--color-text);background:var(--color-background);transition:color .5s,background-color .5s;line-height:1.6;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.bubble-btn{padding:.5rem 1rem;border-radius:20px;font-size:.875rem;background-color:var(--color-background-soft);color:var(--color-text);border:1px solid var(--color-border);cursor:pointer;transition:all .2s;white-space:nowrap}.bubble-btn:hover{border-color:var(--color-text-light, #666)}.bubble-btn--selected{background-color:var(--color-background-soft);color:var(--color-text);border:2px solid #4CAF50}.bubble-btn--selected:hover{border-color:#4caf50}.bubble-btn--small{padding:.375rem .75rem;font-size:.8125rem}.bubble-btn--add{border-style:dashed;color:var(--color-text-light, #666)}.bubble-btn--add:hover{border-color:#4caf50;color:#4caf50}@media(max-width:640px){.bubble-btn{padding:.375rem .75rem;font-size:.8125rem}.bubble-btn--small{padding:.25rem .5rem;font-size:.75rem}}.btn-cancel{padding:.5rem 1rem;background-color:transparent;border:1px solid var(--color-border);border-radius:6px;color:var(--vt-c-white);cursor:pointer;font-size:.875rem;transition:all .2s}.btn-cancel:hover:not(:disabled){background-color:var(--color-background-soft);border-color:var(--color-border-hover)}.btn-cancel:disabled{opacity:.6;cursor:not-allowed}#app{width:100%;min-height:100vh;font-weight:400}a{text-decoration:none;color:#00bd7e;transition:.4s}@media(hover:hover){a:hover{background-color:#00bd7e33}}.language-selector[data-v-8bc33347]{display:flex;align-items:center}.locale-select[data-v-8bc33347]{padding:.375rem .75rem;border:1px solid var(--color-border);border-radius:6px;background-color:var(--color-background);color:var(--color-text);font-size:.875rem;cursor:pointer;transition:border-color .2s}.locale-select[data-v-8bc33347]:hover{border-color:var(--color-border-hover)}.locale-select[data-v-8bc33347]:focus{outline:none;border-color:var(--color-primary, #4CAF50)}.month-navigator[data-v-f537baba]{display:flex;align-items:center;gap:.75rem}.nav-btn[data-v-f537baba]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--color-border);border-radius:8px;background-color:var(--color-background);color:var(--color-text);cursor:pointer;transition:all .2s}.nav-btn[data-v-f537baba]:hover:not(:disabled){background-color:var(--color-background-soft);border-color:var(--color-text-light)}.nav-btn--disabled[data-v-f537baba],.nav-btn[data-v-f537baba]:disabled{opacity:.4;cursor:not-allowed}.nav-icon[data-v-f537baba]{width:20px;height:20px}.month-selector[data-v-f537baba]{position:relative}.month-display[data-v-f537baba]{display:flex;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:600;color:var(--color-heading);background:none;border:none;cursor:pointer;padding:.5rem .75rem;border-radius:8px;transition:background-color .2s}.month-display[data-v-f537baba]:hover{background-color:var(--color-background-soft)}.dropdown-icon[data-v-f537baba]{width:18px;height:18px;color:var(--color-text-light)}.dropdown-overlay[data-v-f537baba]{position:fixed;inset:0;z-index:99}.dropdown-menu[data-v-f537baba]{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:.5rem;background-color:var(--color-background);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 20px #00000026;z-index:100;min-width:200px;overflow:hidden}.dropdown-options[data-v-f537baba]{padding:.5rem}.dropdown-option[data-v-f537baba]{display:block;width:100%;padding:.75rem 1rem;text-align:right;background:none;border:none;border-radius:8px;font-size:.9375rem;color:var(--color-text);cursor:pointer;transition:background-color .2s}.dropdown-option[data-v-f537baba]:hover{background-color:var(--color-background-soft)}.dropdown-option--active[data-v-f537baba]{background-color:var(--color-background-mute);color:var(--color-heading);font-weight:500}.custom-picker[data-v-f537baba]{padding:1rem;min-width:240px}.picker-row[data-v-f537baba]{display:flex;flex-direction:column;gap:.375rem;margin-bottom:.75rem}.picker-label[data-v-f537baba]{font-size:.8125rem;color:var(--color-text-light)}.picker-select[data-v-f537baba]{padding:.625rem .75rem;border:1px solid var(--color-border);border-radius:8px;background-color:var(--color-background);color:var(--color-text);font-size:.9375rem;cursor:pointer}.picker-select[data-v-f537baba]:focus{outline:none;border-color:var(--color-heading)}.picker-actions[data-v-f537baba]{display:flex;gap:.5rem;margin-top:1rem}.picker-btn[data-v-f537baba]{flex:1;padding:.625rem 1rem;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s}.picker-btn--cancel[data-v-f537baba]{background-color:var(--color-background-soft);color:var(--color-text)}.picker-btn--cancel[data-v-f537baba]:hover{background-color:var(--color-background-mute)}.picker-btn--apply[data-v-f537baba]{background-color:#4caf50;color:#fff}.picker-btn--apply[data-v-f537baba]:hover{background-color:#43a047}@media(max-width:768px){.month-navigator[data-v-f537baba]{width:100%;justify-content:space-between}.month-display[data-v-f537baba]{font-size:1.125rem}.dropdown-menu[data-v-f537baba]{left:0;right:0;transform:none;margin-left:1rem;margin-right:1rem}}.donut-chart[data-v-1a854bfe]{position:relative;display:flex;flex-direction:column;height:100%;align-items:center;justify-content:center}.chart-container[data-v-1a854bfe]{position:relative;width:100%;flex:1;min-height:0;display:flex;align-items:center;justify-content:center}.donut-svg[data-v-1a854bfe]{width:100%;height:100%;max-width:100%;max-height:100%}.donut-segment[data-v-1a854bfe]{cursor:pointer;transition:opacity .2s,transform .2s;transform-origin:center}.donut-segment[data-v-1a854bfe]:hover{opacity:.85}.donut-segment--selected[data-v-1a854bfe]{transform:scale(1.02)}.donut-segment--dimmed[data-v-1a854bfe]{opacity:.4}.segment-label-group[data-v-1a854bfe]{pointer-events:none}.label-line[data-v-1a854bfe]{opacity:.6}.segment-label[data-v-1a854bfe]{font-size:9px;font-weight:500;fill:var(--color-text)}.center-content[data-v-1a854bfe]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none}.center-label[data-v-1a854bfe]{display:block;font-size:1rem;font-weight:600;color:var(--color-text-light);margin-bottom:.25rem}.center-amount[data-v-1a854bfe]{display:block;font-size:1.25rem;font-weight:700;color:var(--color-heading)}.back-btn[data-v-1a854bfe]{position:absolute;top:0;left:0;padding:.25rem .5rem;background-color:var(--color-background-soft);border:1px solid var(--color-border);border-radius:12px;cursor:pointer;font-size:.7rem;color:var(--color-text);transition:background-color .2s}.back-btn[data-v-1a854bfe]:hover{background-color:var(--color-background-mute)}.chart-tooltip[data-v-1a854bfe]{position:fixed;background-color:var(--color-heading);color:var(--color-background);padding:.5rem .75rem;border-radius:6px;font-size:.75rem;pointer-events:none;z-index:1000;transform:translate(-50%,-100%) translateY(-10px);box-shadow:0 4px 12px #00000026;text-align:center;min-width:80px}.chart-tooltip[data-v-1a854bfe]:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:var(--color-heading)}.tooltip-name[data-v-1a854bfe]{font-weight:600;margin-bottom:.25rem}.tooltip-amount[data-v-1a854bfe]{font-size:.875rem;font-weight:700}.tooltip-percentage[data-v-1a854bfe]{font-size:.6875rem;opacity:.8;margin-top:.125rem}@media(max-width:768px){.donut-chart[data-v-1a854bfe]{max-height:200px}.chart-container[data-v-1a854bfe],.donut-svg[data-v-1a854bfe]{max-height:180px}.center-label[data-v-1a854bfe]{font-size:.8rem}.center-amount[data-v-1a854bfe]{font-size:.95rem}.segment-label[data-v-1a854bfe]{font-size:7px}}.business-bubbles[data-v-81ded63a]{position:relative;height:100%;display:flex;flex-direction:column}.bubbles-toolbar[data-v-81ded63a]{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.4rem}.others-hint[data-v-81ded63a]{font-size:.75rem;color:var(--color-text-light)}.others-back-btn[data-v-81ded63a]{border:1px solid var(--color-border);background-color:var(--color-background);color:var(--color-text);border-radius:12px;padding:.25rem .75rem;font-size:.7rem;cursor:pointer;transition:background-color .2s,border-color .2s}.others-back-btn[data-v-81ded63a]:hover{background-color:var(--color-background-soft);border-color:var(--color-text-light)}.bubbles-header[data-v-81ded63a]{padding:.5rem 0;margin-bottom:.5rem;text-align:center}.header-label[data-v-81ded63a]{font-size:.8125rem;color:var(--color-text-light);margin-left:.25rem}.header-value[data-v-81ded63a]{font-size:.875rem;font-weight:600;color:var(--color-heading)}.empty-state[data-v-81ded63a]{display:flex;align-items:center;justify-content:center;flex:1;color:var(--color-text-light);font-size:.875rem}.bubble-wrapper[data-v-81ded63a]{position:relative;flex:1;min-height:0;overflow:hidden}.bubbles-svg[data-v-81ded63a]{width:100%;height:100%;max-width:100%;max-height:100%;transition:filter .2s,opacity .2s}.bubbles-svg--dimmed[data-v-81ded63a]{filter:grayscale(.5);opacity:.35}.bubble-group[data-v-81ded63a]{cursor:pointer;transition:opacity .2s}.bubble-group:hover .bubble-circle[data-v-81ded63a]{filter:brightness(1.15)}.bubble-group--selected .bubble-circle[data-v-81ded63a]{stroke:var(--color-heading);stroke-width:3}.bubble-group--dimmed[data-v-81ded63a]{opacity:.4}.bubble-group--others .bubble-circle[data-v-81ded63a]{stroke:var(--color-heading);stroke-width:2}.bubble-circle[data-v-81ded63a]{transition:filter .2s}.bubble-text-container[data-v-81ded63a]{pointer-events:none;overflow:visible}.bubble-text-wrapper[data-v-81ded63a]{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;font-weight:600;text-shadow:0 1px 3px rgba(0,0,0,.5);line-height:1.2;overflow:hidden;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.bubble-name[data-v-81ded63a]{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;max-width:100%;word-break:break-word}.bubble-name[data-v-81ded63a] wbr{display:inline}.bubble-amount[data-v-81ded63a]{font-size:.85em;opacity:.9;font-weight:500;margin-top:2px;white-space:nowrap}.chart-tooltip[data-v-81ded63a]{position:fixed;background-color:var(--color-heading);color:var(--color-background);padding:.5rem .75rem;border-radius:6px;font-size:.75rem;pointer-events:none;z-index:1000;transform:translate(-50%,-100%) translateY(-10px);box-shadow:0 4px 12px #00000026;text-align:center;min-width:100px;max-width:200px}.chart-tooltip[data-v-81ded63a]:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:var(--color-heading)}.tooltip-name[data-v-81ded63a]{font-weight:600;margin-bottom:.25rem;word-break:break-word}.tooltip-amount[data-v-81ded63a]{font-size:.875rem;font-weight:700}.tooltip-count[data-v-81ded63a]{font-size:.6875rem;opacity:.8;margin-top:.125rem}.others-overlay[data-v-81ded63a]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:.75rem;pointer-events:auto;z-index:5}.others-svg[data-v-81ded63a]{width:95%;height:95%;background-color:#0f172ad9;border-radius:16px;padding:.5rem;box-shadow:0 10px 30px #00000040}.fade-enter-active[data-v-81ded63a],.fade-leave-active[data-v-81ded63a]{transition:opacity .2s}.fade-enter-from[data-v-81ded63a],.fade-leave-to[data-v-81ded63a]{opacity:0}@media(max-width:768px){.bubbles-svg[data-v-81ded63a]{min-height:200px}}.transaction-group[data-v-0e37bf2f]{background-color:var(--color-background);border-radius:8px;border:1px solid var(--color-border);overflow:hidden}.group-header[data-v-0e37bf2f]{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.75rem 1rem;background:none;border:none;cursor:pointer;text-align:right;transition:background-color .2s}.group-header[data-v-0e37bf2f]:hover{background-color:var(--color-background-soft)}.header-content[data-v-0e37bf2f]{display:flex;align-items:center;justify-content:space-between;flex:1;gap:1rem}.header-title[data-v-0e37bf2f]{display:flex;flex-direction:column;gap:.125rem}.title-text[data-v-0e37bf2f]{font-size:.875rem;font-weight:600;color:var(--color-heading)}.title-subtitle[data-v-0e37bf2f]{font-size:.75rem;color:var(--color-text);opacity:.7}.header-meta[data-v-0e37bf2f]{display:flex;align-items:center;gap:.75rem}.meta-count[data-v-0e37bf2f]{font-size:.75rem;color:var(--color-heading);background-color:var(--color-background-mute);padding:.125rem .5rem;border-radius:10px;font-weight:500}.meta-total[data-v-0e37bf2f]{font-size:.875rem;font-weight:600;color:var(--color-heading)}.expand-icon[data-v-0e37bf2f]{width:20px;height:20px;color:var(--color-text-light);transition:transform .2s;flex-shrink:0;margin-right:.5rem}.expand-icon--expanded[data-v-0e37bf2f]{transform:rotate(180deg)}.group-content[data-v-0e37bf2f]{border-top:1px solid var(--color-border)}.transaction-row[data-v-0e37bf2f]{display:flex;align-items:center;justify-content:space-between;padding:.625rem 1rem;border-bottom:1px solid var(--color-border);cursor:pointer;transition:background-color .15s}.transaction-row[data-v-0e37bf2f]:last-child{border-bottom:none}.transaction-row[data-v-0e37bf2f]:hover{background-color:var(--color-background-soft)}.transaction-info[data-v-0e37bf2f]{display:flex;flex-direction:column;gap:.125rem;flex:1;min-width:0}.transaction-business[data-v-0e37bf2f]{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:500;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pending-icon[data-v-0e37bf2f]{width:14px;height:14px;color:#f59e0b;flex-shrink:0}.candidate-icon[data-v-0e37bf2f]{width:14px;height:14px;color:#8b5cf6;flex-shrink:0}.repeating-badge[data-v-0e37bf2f]{display:inline-flex;align-items:center;justify-content:center;padding:2px;background-color:#10b98126;border-radius:4px;flex-shrink:0}.repeating-icon[data-v-0e37bf2f]{width:12px;height:12px;color:#10b981}.mark-repeating-btn[data-v-0e37bf2f]{display:flex;align-items:center;justify-content:center;padding:2px;border:none;background:none;cursor:pointer;border-radius:4px;opacity:0;transition:opacity .2s,background-color .2s,transform .2s;flex-shrink:0}.transaction-row:hover .mark-repeating-btn[data-v-0e37bf2f]{opacity:.6}.mark-repeating-btn[data-v-0e37bf2f]:hover{opacity:1!important;background-color:#10b98133;transform:scale(1.1)}.mark-repeating-icon[data-v-0e37bf2f]{width:12px;height:12px;color:#6b7280}.mark-repeating-btn:hover .mark-repeating-icon[data-v-0e37bf2f]{color:#10b981}.pending-icon-btn[data-v-0e37bf2f]{display:flex;align-items:center;justify-content:center;padding:2px;border:none;background:none;cursor:pointer;border-radius:50%;transition:background-color .2s,transform .2s}.pending-icon-btn[data-v-0e37bf2f]:hover{background-color:#f59e0b33;transform:scale(1.1)}.pending-icon--clickable[data-v-0e37bf2f]{width:14px;height:14px;color:#f59e0b}.selected-icon[data-v-0e37bf2f]{width:16px;height:16px;color:#22c55e;flex-shrink:0}.transaction-row--merge-mode[data-v-0e37bf2f]{cursor:pointer}.transaction-row--merge-mode[data-v-0e37bf2f]:hover{background-color:#3b82f61a}.transaction-row--selected[data-v-0e37bf2f]{background-color:#22c55e26!important;border-right:3px solid #22c55e}.transaction-row--pending-source[data-v-0e37bf2f]{background-color:#f59e0b1a;border-right:3px solid #f59e0b}.merge-action-btn[data-v-0e37bf2f]{padding:.25rem .625rem;border:none;border-radius:4px;font-size:.75rem;font-weight:500;cursor:pointer;transition:background-color .2s}.merge-action-btn--confirm[data-v-0e37bf2f]{background-color:#22c55e;color:#fff}.merge-action-btn--confirm[data-v-0e37bf2f]:hover{background-color:#16a34a}.merge-action-btn--cancel[data-v-0e37bf2f]{background-color:transparent;color:var(--color-text-light);border:1px solid var(--color-border)}.merge-action-btn--cancel[data-v-0e37bf2f]:hover{background-color:var(--color-background-soft)}.merge-banner[data-v-0e37bf2f]{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;background-color:#f59e0b26;border-top:1px solid rgba(245,158,11,.3);font-size:.8125rem;color:#b45309}.merge-banner-cancel[data-v-0e37bf2f]{padding:.25rem .5rem;border:1px solid #b45309;border-radius:4px;background:transparent;color:#b45309;font-size:.75rem;cursor:pointer;transition:background-color .2s}.merge-banner-cancel[data-v-0e37bf2f]:hover{background-color:#f59e0b33}.transaction-account[data-v-0e37bf2f]{font-size:.6875rem;color:var(--color-text-light);opacity:.8}.transaction-desc[data-v-0e37bf2f]{font-size:.6875rem;color:var(--color-text-light);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.transaction-meta[data-v-0e37bf2f]{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.currency-badge[data-v-0e37bf2f]{font-size:.625rem;font-weight:600;color:#3b82f6;background-color:#3b82f61a;padding:.125rem .375rem;border-radius:4px;letter-spacing:.02em}.transaction-date[data-v-0e37bf2f]{font-size:.6875rem;color:var(--color-text-light)}.transaction-amount[data-v-0e37bf2f]{font-size:.8125rem;font-weight:500;color:var(--color-text);font-variant-numeric:tabular-nums}@media(max-width:768px){.group-header[data-v-0e37bf2f]{padding:.625rem .75rem}.transaction-row[data-v-0e37bf2f]{padding:.5rem .75rem}.header-meta[data-v-0e37bf2f],.transaction-meta[data-v-0e37bf2f]{gap:.5rem}}.modal-backdrop[data-v-7210fa91]{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content[data-v-7210fa91]{background-color:var(--color-background);border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:100%;max-width:480px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-header[data-v-7210fa91]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--color-border)}.modal-title[data-v-7210fa91]{font-size:1.125rem;font-weight:600;color:var(--color-heading);margin:0}.modal-close[data-v-7210fa91]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;cursor:pointer;border-radius:6px;color:var(--color-text-light);transition:background-color .2s,color .2s}.modal-close[data-v-7210fa91]:hover{background-color:var(--color-background-soft);color:var(--color-text)}.modal-close svg[data-v-7210fa91]{width:20px;height:20px}.modal-body[data-v-7210fa91]{padding:1.25rem;overflow-y:auto;flex:1}.transaction-info[data-v-7210fa91]{background-color:var(--color-background-soft);border-radius:8px;padding:.875rem;margin-bottom:1.25rem}.info-row[data-v-7210fa91]{display:flex;justify-content:space-between;padding:.25rem 0}.info-label[data-v-7210fa91]{font-size:.8125rem;color:var(--color-text-light)}.info-value[data-v-7210fa91]{font-size:.8125rem;font-weight:500;color:var(--color-text)}.form-group[data-v-7210fa91]{margin-bottom:1rem}.checkbox-group[data-v-7210fa91]{margin-bottom:.5rem}.checkbox-label[data-v-7210fa91]{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem;color:var(--color-text)}.form-checkbox[data-v-7210fa91]{width:16px;height:16px;cursor:pointer;accent-color:#3b82f6}.nested-field[data-v-7210fa91]{margin-left:1.5rem;padding-left:.75rem;border-left:2px solid var(--color-border);margin-bottom:1rem}.form-row[data-v-7210fa91]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-label[data-v-7210fa91]{display:block;font-size:.8125rem;font-weight:500;color:var(--color-text);margin-bottom:.375rem}.form-input[data-v-7210fa91],.form-select[data-v-7210fa91]{width:100%;padding:.625rem .75rem;border:1px solid var(--color-border);border-radius:6px;font-size:.875rem;color:var(--color-text);background-color:var(--color-background);transition:border-color .2s,box-shadow .2s}.form-input[data-v-7210fa91]:focus,.form-select[data-v-7210fa91]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-hint[data-v-7210fa91]{font-size:.75rem;color:var(--color-text-light);margin-top:.25rem}.input-with-suffix[data-v-7210fa91]{display:flex;align-items:center;gap:.5rem}.input-with-suffix .form-input[data-v-7210fa91]{flex:1}.input-suffix[data-v-7210fa91]{font-size:.875rem;color:var(--color-text-light);white-space:nowrap}.error-message[data-v-7210fa91]{background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;padding:.75rem;color:#dc2626;font-size:.8125rem;margin-top:1rem}.modal-footer[data-v-7210fa91]{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.25rem;border-top:1px solid var(--color-border);background-color:var(--color-background-soft)}.btn[data-v-7210fa91]{padding:.625rem 1.25rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s,opacity .2s}.btn-primary[data-v-7210fa91]{background-color:#3b82f6;color:#fff;border:none}.btn-primary[data-v-7210fa91]:hover:not(:disabled){background-color:#2563eb}.btn-primary[data-v-7210fa91]:disabled{opacity:.5;cursor:not-allowed}.btn-secondary[data-v-7210fa91]{background-color:transparent;color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary[data-v-7210fa91]:hover{background-color:var(--color-background-soft)}@media(max-width:480px){.modal-content[data-v-7210fa91]{max-height:100vh;border-radius:0}.form-row[data-v-7210fa91]{grid-template-columns:1fr}}.transactions-panel[data-v-fe386ad3]{display:flex;flex-direction:column;height:100%;background-color:var(--color-background-soft);border-radius:12px;border:1px solid var(--color-border);overflow:hidden}.panel-header[data-v-fe386ad3]{padding:1rem;border-bottom:1px solid var(--color-border);background-color:var(--color-background);flex-shrink:0}.header-top[data-v-fe386ad3]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.title-row[data-v-fe386ad3]{display:flex;align-items:center;gap:.5rem}.search-toggle[data-v-fe386ad3]{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;background:none;color:var(--color-text-light);cursor:pointer;border-radius:6px;transition:background-color .2s,color .2s}.search-toggle[data-v-fe386ad3]:hover{background-color:var(--color-background-soft);color:var(--color-text)}.search-toggle svg[data-v-fe386ad3]{width:16px;height:16px}.search-row[data-v-fe386ad3]{margin-bottom:.75rem}.search-input-wrapper[data-v-fe386ad3]{position:relative;display:flex;align-items:center}.search-icon[data-v-fe386ad3]{position:absolute;right:.75rem;width:16px;height:16px;color:var(--color-text-light);pointer-events:none}.search-input[data-v-fe386ad3]{width:100%;padding:.5rem 2.25rem .5rem 2rem;border:1px solid var(--color-border);border-radius:8px;background-color:var(--color-background);font-size:.875rem;color:var(--color-text);direction:rtl;transition:border-color .2s}.search-input[data-v-fe386ad3]::placeholder{color:var(--color-text-light)}.search-input[data-v-fe386ad3]:focus{outline:none;border-color:var(--color-text-light)}.search-clear[data-v-fe386ad3]{position:absolute;left:.5rem;display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;background:none;color:var(--color-text-light);cursor:pointer;border-radius:50%;transition:background-color .2s}.search-clear[data-v-fe386ad3]:hover{background-color:var(--color-background-soft);color:var(--color-text)}.search-clear svg[data-v-fe386ad3]{width:14px;height:14px}.panel-title[data-v-fe386ad3]{margin:0;font-size:1rem;font-weight:600;color:var(--color-heading)}.panel-summary[data-v-fe386ad3]{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.summary-count[data-v-fe386ad3]{color:var(--color-text-light)}.summary-divider[data-v-fe386ad3]{color:var(--color-border)}.summary-amount[data-v-fe386ad3]{font-weight:600;color:var(--color-heading)}.group-toggle[data-v-fe386ad3]{display:inline-flex;background-color:var(--color-background-soft);border-radius:8px;padding:3px}.toggle-btn[data-v-fe386ad3]{padding:.375rem .75rem;border:none;background:transparent;font-size:.8125rem;font-weight:500;color:var(--color-text-light);cursor:pointer;border-radius:6px;transition:all .2s}.toggle-btn[data-v-fe386ad3]:hover{color:var(--color-text)}.toggle-btn--active[data-v-fe386ad3]{background-color:var(--color-background);color:var(--color-heading);box-shadow:0 1px 3px #0000001a}.panel-content[data-v-fe386ad3]{flex:1;overflow-y:auto;padding:.75rem}.loading-state[data-v-fe386ad3],.empty-state[data-v-fe386ad3]{display:flex;align-items:center;justify-content:center;height:100%;min-height:200px;color:var(--color-text-light);font-size:.875rem}.groups-list[data-v-fe386ad3]{display:flex;flex-direction:column;gap:.75rem}@media(max-width:768px){.panel-header[data-v-fe386ad3]{padding:.75rem}.header-top[data-v-fe386ad3]{flex-direction:column;align-items:flex-start;gap:.5rem;margin-bottom:.5rem}.panel-content[data-v-fe386ad3]{padding:.5rem}.groups-list[data-v-fe386ad3]{gap:.5rem}}.timeline-chart[data-v-41c12c1b]{display:flex;flex-direction:column;height:100%}.timeline-controls[data-v-41c12c1b]{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem;flex-wrap:wrap}.period-selector[data-v-41c12c1b]{display:flex;gap:.375rem;flex-wrap:wrap;flex:1 1 auto}.period-btn[data-v-41c12c1b]{padding:.25rem .625rem;font-size:.6875rem;font-weight:500;border:1px solid var(--color-border);border-radius:12px;background-color:var(--color-background);color:var(--color-text);cursor:pointer;transition:all .2s}.period-btn[data-v-41c12c1b]:hover{background-color:var(--color-background-soft);border-color:var(--color-text-light)}.period-btn--active[data-v-41c12c1b]{background-color:#4f46e5;border-color:#4f46e5;color:#fff}.period-btn--active[data-v-41c12c1b]:hover{background-color:#4338ca;border-color:#4338ca}.groups-btn[data-v-41c12c1b]{padding:.25rem .75rem;font-size:.6875rem;font-weight:600;border:1px solid var(--color-border);border-radius:12px;background-color:var(--color-background);color:var(--color-text);cursor:pointer;transition:all .2s;flex-shrink:0}.groups-btn[data-v-41c12c1b]:hover:not(:disabled){background-color:var(--color-background-soft);border-color:var(--color-text-light)}.groups-btn--active[data-v-41c12c1b]{background-color:#111827;border-color:#111827;color:#fff}.groups-btn[data-v-41c12c1b]:disabled{opacity:.5;cursor:not-allowed}.empty-state[data-v-41c12c1b]{display:flex;align-items:center;justify-content:center;flex:1;color:var(--color-text-light);font-size:.875rem}.timeline-svg[data-v-41c12c1b]{flex:1;width:100%;min-height:120px;max-height:100%}.grid-line[data-v-41c12c1b]{stroke:var(--color-border);stroke-dasharray:2,2}.axis-label[data-v-41c12c1b]{font-size:10px;fill:var(--color-text)}.bar[data-v-41c12c1b]{fill:#4f46e5;transition:fill .2s}.bar[data-v-41c12c1b]:hover{fill:#6366f1}.bar--current[data-v-41c12c1b]{fill:#10b981}.bar--current[data-v-41c12c1b]:hover{fill:#34d399}.bar-value[data-v-41c12c1b]{font-size:9px;font-weight:600;fill:var(--color-text)}.timeline-line[data-v-41c12c1b]{pointer-events:stroke;opacity:.85;transition:opacity .2s,stroke-width .2s}.timeline-line--dimmed[data-v-41c12c1b]{opacity:.2}.timeline-line--selected[data-v-41c12c1b],.timeline-line[data-v-41c12c1b]:hover{opacity:1;stroke-width:3.5}.line-point[data-v-41c12c1b]{pointer-events:all;stroke-width:2;opacity:.3;transition:opacity .2s}.line-point--active[data-v-41c12c1b],.line-point[data-v-41c12c1b]:hover{opacity:1}.stats-row[data-v-41c12c1b]{display:flex;justify-content:center;gap:1rem;margin-bottom:.25rem}.stat-item[data-v-41c12c1b]{font-size:.75rem;font-weight:600}.stat-item--avg[data-v-41c12c1b]{color:#dc2626}.stat-item--med[data-v-41c12c1b]{color:#f472b6}.average-line[data-v-41c12c1b]{stroke:#dc2626;stroke-width:2;stroke-dasharray:6,4}.median-line[data-v-41c12c1b]{stroke:#f472b6;stroke-width:2;stroke-dasharray:4,3}.line-tooltip[data-v-41c12c1b]{position:fixed;background-color:var(--color-heading);color:var(--color-background);padding:.3rem .5rem;border-radius:999px;font-size:.6875rem;display:inline-flex;align-items:center;gap:.35rem;pointer-events:none;box-shadow:0 6px 16px #00000026}.line-tooltip__dot[data-v-41c12c1b]{width:.4rem;height:.4rem;border-radius:50%;display:inline-block}.line-tooltip__text[data-v-41c12c1b]{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2}.line-tooltip__text strong[data-v-41c12c1b]{font-weight:600}.line-tooltip__month[data-v-41c12c1b]{font-size:.65rem;opacity:.9}.line-tooltip__amount[data-v-41c12c1b]{font-weight:600}@media(max-width:768px){.timeline-svg[data-v-41c12c1b]{min-height:100px}}.base-modal__overlay[data-v-eb9839cb]{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.base-modal__content[data-v-eb9839cb]{background-color:#1f2937;border-radius:8px;box-shadow:0 20px 25px -5px #0000004d;max-width:500px;width:100%;max-height:90vh;overflow-y:auto}.base-modal__header[data-v-eb9839cb]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid #374151}.base-modal__title[data-v-eb9839cb]{margin:0;font-size:1.25rem;font-weight:600;color:#f9fafb}.base-modal__close[data-v-eb9839cb]{background:none;border:none;font-size:1.5rem;color:#9ca3af;cursor:pointer;padding:0;line-height:1}.base-modal__close[data-v-eb9839cb]:hover{color:#f9fafb}.base-modal__body[data-v-eb9839cb]{padding:1.5rem}.base-modal__footer[data-v-eb9839cb]{padding:1rem 1.5rem;border-top:1px solid #374151;display:flex;justify-content:flex-end;gap:.75rem}.modal-enter-active[data-v-eb9839cb],.modal-leave-active[data-v-eb9839cb]{transition:opacity .2s ease}.modal-enter-from[data-v-eb9839cb],.modal-leave-to[data-v-eb9839cb]{opacity:0}.modal-enter-active .base-modal__content[data-v-eb9839cb],.modal-leave-active .base-modal__content[data-v-eb9839cb]{transition:transform .2s ease}.modal-enter-from .base-modal__content[data-v-eb9839cb],.modal-leave-to .base-modal__content[data-v-eb9839cb]{transform:scale(.95)}.tri-state-button[data-v-10de67d8]{display:inline-flex;align-items:center;justify-content:center;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;border-radius:9999px;border:1px solid var(--color-border);background-color:var(--color-background);color:var(--color-text);cursor:pointer;transition:all .15s ease;white-space:nowrap;-webkit-user-select:none;user-select:none}.tri-state-button[data-v-10de67d8]:hover:not(:disabled){border-color:var(--color-text-light)}.tri-state-button--include[data-v-10de67d8]{background-color:#10b981;border-color:#10b981;color:#fff}.tri-state-button--include[data-v-10de67d8]:hover:not(:disabled){background-color:#059669;border-color:#059669}.tri-state-button--exclude[data-v-10de67d8]{background-color:#ef4444;border-color:#ef4444;color:#fff}.tri-state-button--exclude[data-v-10de67d8]:hover:not(:disabled){background-color:#dc2626;border-color:#dc2626}.tri-state-button--disabled[data-v-10de67d8]{opacity:.5;cursor:not-allowed}.filter-modal[data-v-a149d322]{min-width:400px;max-width:600px}@media(max-width:480px){.filter-modal[data-v-a149d322]{min-width:auto;width:100%;max-width:100%}.preset-controls[data-v-a149d322],.save-input-group[data-v-a149d322]{flex-wrap:wrap}.preset-input[data-v-a149d322]{min-width:120px}.filter-footer[data-v-a149d322]{flex-wrap:wrap}.filter-footer .btn[data-v-a149d322]{flex:1;min-width:100px}}.filter-section[data-v-a149d322]{padding:.75rem 0}.section-divider[data-v-a149d322]{height:1px;background-color:var(--color-border);margin:0}.preset-controls[data-v-a149d322]{display:flex;gap:.75rem;align-items:center}.save-input-group[data-v-a149d322]{display:flex;gap:.5rem;align-items:center;flex:1}.preset-input[data-v-a149d322]{flex:1;padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:6px;background-color:var(--color-background);color:var(--color-text);font-size:.875rem}.preset-input[data-v-a149d322]:focus{outline:none;border-color:#3b82f6}.preset-dropdown[data-v-a149d322]{position:relative}.dropdown-arrow[data-v-a149d322]{font-size:.625rem;margin-right:.25rem}.dropdown-menu[data-v-a149d322]{position:absolute;top:100%;left:0;right:0;min-width:200px;margin-top:.25rem;background-color:var(--color-background-soft);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:100;overflow:hidden}.dropdown-empty[data-v-a149d322]{padding:.75rem;text-align:center;color:var(--color-text-light);font-size:.875rem}.dropdown-item[data-v-a149d322]{display:flex;align-items:center;justify-content:space-between;padding:.625rem .75rem;cursor:pointer;transition:background-color .15s}.dropdown-item[data-v-a149d322]:hover{background-color:var(--color-background-mute)}.preset-name[data-v-a149d322]{font-size:.875rem}.preset-delete[data-v-a149d322]{background:none;border:none;color:var(--color-text-light);font-size:1.125rem;cursor:pointer;padding:0;line-height:1;opacity:.6}.preset-delete[data-v-a149d322]:hover{color:#ef4444;opacity:1}.bulk-actions[data-v-a149d322]{display:flex;gap:.5rem}.bubble-group[data-v-a149d322]{display:flex;flex-wrap:wrap;gap:.5rem}.empty-message[data-v-a149d322]{color:var(--color-text-light);font-size:.875rem;font-style:italic}.filter-footer[data-v-a149d322]{display:flex;justify-content:flex-end;gap:.75rem;padding-top:1rem;margin-top:.5rem;border-top:1px solid var(--color-border)}.btn[data-v-a149d322]{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;border-radius:6px;border:none;cursor:pointer;transition:all .15s}.btn--small[data-v-a149d322]{padding:.375rem .75rem;font-size:.8125rem}.btn--primary[data-v-a149d322]{background-color:#3b82f6;color:#fff}.btn--primary[data-v-a149d322]:hover{background-color:#2563eb}.btn--secondary[data-v-a149d322]{background-color:var(--color-background-mute);color:var(--color-text);border:1px solid var(--color-border)}.btn--secondary[data-v-a149d322]:hover{background-color:var(--color-background-soft)}.dashboard2-view[data-v-43a1bcfa]{display:flex;flex-direction:column;height:calc(100vh - 4rem);gap:1rem;overflow:hidden}.dashboard-header[data-v-43a1bcfa]{display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.header-left[data-v-43a1bcfa]{display:flex;align-items:center}.header-right[data-v-43a1bcfa]{display:flex;align-items:center;gap:1rem}.date-switch[data-v-43a1bcfa]{display:flex;align-items:center;gap:.5rem;cursor:pointer}.date-switch__label[data-v-43a1bcfa]{font-size:.8125rem;color:var(--color-text-light);transition:color .2s;-webkit-user-select:none;user-select:none}.date-switch__label--active[data-v-43a1bcfa]{color:var(--color-heading);font-weight:500}.date-switch__track[data-v-43a1bcfa]{position:relative;width:52px;height:32px;background-color:var(--color-background-mute);border:2px solid var(--color-border);border-radius:16px;cursor:pointer;transition:all .2s ease;padding:0}.date-switch__track[data-v-43a1bcfa]:hover{background-color:var(--color-background-soft)}.date-switch__track--checked[data-v-43a1bcfa]{background-color:#3b82f6;border-color:#3b82f6}.date-switch__track--checked[data-v-43a1bcfa]:hover{background-color:#2563eb;border-color:#2563eb}.date-switch__thumb[data-v-43a1bcfa]{position:absolute;top:50%;left:4px;transform:translateY(-50%);width:20px;height:20px;background-color:#fff;border-radius:50%;transition:all .2s ease;box-shadow:0 1px 3px #0000004d}.date-switch__track--checked .date-switch__thumb[data-v-43a1bcfa]{left:calc(100% - 24px)}.filter-btn[data-v-43a1bcfa]{display:flex;align-items:center;justify-content:center;gap:.5rem;min-width:36px;height:36px;padding:0 .75rem;background-color:var(--color-background-mute);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s ease}.filter-btn[data-v-43a1bcfa]:hover{background-color:var(--color-background-soft);border-color:var(--color-border-hover)}.filter-btn--active[data-v-43a1bcfa]{background-color:#3b82f6;border-color:#3b82f6;color:#fff}.filter-btn--active[data-v-43a1bcfa]:hover{background-color:#2563eb;border-color:#2563eb}.filter-icon[data-v-43a1bcfa]{width:18px;height:18px;color:#fff}.filter-btn .filter-label[data-v-43a1bcfa]{font-size:.8125rem;font-weight:500;white-space:nowrap}.error-banner[data-v-43a1bcfa]{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background-color:#fee2e2;border:1px solid #fca5a5;border-radius:8px;color:#991b1b;flex-shrink:0}.error-dismiss[data-v-43a1bcfa]{background:none;border:none;font-size:1.25rem;cursor:pointer;color:#991b1b;padding:0 .25rem}.error-dismiss[data-v-43a1bcfa]:hover{opacity:.7}.filter-indicators[data-v-43a1bcfa]{display:flex;align-items:center;gap:.375rem;flex-wrap:wrap}.filter-indicator[data-v-43a1bcfa]{display:flex;align-items:center;gap:.375rem;padding:.25rem .5rem;background-color:var(--color-background-soft);border:1px solid var(--color-border);border-radius:12px}.filter-text[data-v-43a1bcfa]{font-size:.75rem;color:var(--color-text)}.filter-clear[data-v-43a1bcfa]{background:none;border:none;color:var(--color-text-light);font-size:.875rem;cursor:pointer;padding:0;line-height:1;display:flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;transition:background-color .2s}.filter-clear[data-v-43a1bcfa]:hover{background-color:var(--color-background-soft);color:var(--color-heading)}.dashboard-content[data-v-43a1bcfa]{display:grid;grid-template-columns:1fr 1fr 400px;grid-template-areas:"donut bubbles transactions" "timeline timeline transactions";grid-template-rows:minmax(0,2fr) minmax(0,1fr);gap:1rem;flex:1;min-height:0;grid-auto-rows:initial}.panel[data-v-43a1bcfa]{background-color:var(--color-background-soft);border-radius:12px;border:1px solid var(--color-border);overflow:hidden;display:flex;flex-direction:column}.panel--timeline-combined[data-v-43a1bcfa]{grid-area:timeline;min-height:220px}.panel--donut[data-v-43a1bcfa]{grid-area:donut}.panel--bubbles[data-v-43a1bcfa]{grid-area:bubbles}.panel--transactions[data-v-43a1bcfa]{grid-area:transactions;padding:0}.panel-title[data-v-43a1bcfa]{margin:0;padding:1rem;font-size:.9375rem;font-weight:600;color:var(--color-heading);border-bottom:1px solid var(--color-border);background-color:var(--color-background);flex-shrink:0}.panel-content[data-v-43a1bcfa]{flex:1;padding:1rem;overflow:hidden;min-height:0}.timeline-panel-content[data-v-43a1bcfa]{display:flex;flex-direction:column;min-height:0}.timeline-panel__charts[data-v-43a1bcfa]{display:flex;flex-direction:row;gap:1rem;flex:1;min-height:0}.timeline-panel__chart[data-v-43a1bcfa]{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0}.timeline-panel__chart[data-v-43a1bcfa]>:first-child{flex:1}.panel--transactions .panel-title[data-v-43a1bcfa]{display:none}.panel--transactions[data-v-43a1bcfa]>.transactions-panel{border:none;border-radius:0}.loading-state[data-v-43a1bcfa]{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-light);font-size:.875rem}@media(max-width:1200px){.dashboard-content[data-v-43a1bcfa]{grid-template-columns:1fr;grid-template-areas:"timeline" "donut" "bubbles" "transactions"}.timeline-panel__charts[data-v-43a1bcfa]{flex-direction:column}.panel--transactions[data-v-43a1bcfa]{max-height:none}}.mobile-tabs[data-v-43a1bcfa]{display:none}@media(max-width:768px){.dashboard2-view[data-v-43a1bcfa]{height:auto;min-height:calc(100vh - 4rem);overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.dashboard-header[data-v-43a1bcfa]{flex-direction:column;gap:.75rem;align-items:stretch}.header-left[data-v-43a1bcfa]{justify-content:center}.header-right[data-v-43a1bcfa]{justify-content:space-between}.date-switch__label[data-v-43a1bcfa]{font-size:.75rem}.date-switch__track[data-v-43a1bcfa]{width:44px;height:28px}.date-switch__thumb[data-v-43a1bcfa]{width:18px;height:18px}.date-switch__track--checked .date-switch__thumb[data-v-43a1bcfa]{left:calc(100% - 22px)}.mobile-tabs[data-v-43a1bcfa]{display:flex;gap:.5rem;padding:0;margin-bottom:.5rem}.mobile-tab[data-v-43a1bcfa]{flex:1;padding:.625rem 1rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-background);color:var(--color-text);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.mobile-tab[data-v-43a1bcfa]:hover{background:var(--color-background-soft)}.mobile-tab--active[data-v-43a1bcfa]{background:linear-gradient(135deg,#667eea,#764ba2);border-color:transparent;color:#fff}.mobile-tab--active[data-v-43a1bcfa]:hover{opacity:.9}.mobile-hidden[data-v-43a1bcfa]{display:none!important}.dashboard-content[data-v-43a1bcfa]{display:flex;flex-direction:column;gap:1rem;flex:1}.panel--donut[data-v-43a1bcfa]{min-height:auto;max-height:240px;overflow:hidden}.panel--donut .panel-title[data-v-43a1bcfa]{padding:.5rem 1rem;font-size:.875rem}.panel--donut .panel-content[data-v-43a1bcfa]{padding:.25rem;max-height:200px;overflow:hidden}.panel--bubbles[data-v-43a1bcfa],.panel--timeline[data-v-43a1bcfa]{min-height:250px}.panel--transactions[data-v-43a1bcfa]{min-height:calc(100vh - 200px);flex:1}}.modal-overlay[data-v-9cdb0895]{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-9cdb0895]{background-color:var(--color-background);border-radius:12px;padding:1.5rem;width:90%;max-width:400px;box-shadow:0 4px 20px #00000026}.modal-header[data-v-9cdb0895]{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.modal-header h2[data-v-9cdb0895]{margin:0;font-size:1.25rem;color:var(--color-heading)}.close-btn[data-v-9cdb0895]{background:none;border:none;font-size:1.5rem;color:var(--color-text);cursor:pointer;padding:0;line-height:1;opacity:.6}.close-btn[data-v-9cdb0895]:hover{opacity:1}.required-notice[data-v-9cdb0895]{padding:.75rem 1rem;background-color:#fef3c7;border:1px solid #fcd34d;border-radius:8px;color:#92400e;font-size:.875rem;margin-bottom:1rem}.error-message[data-v-9cdb0895]{padding:.75rem 1rem;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:.875rem;margin-bottom:1rem}.form-group[data-v-9cdb0895]{margin-bottom:1rem}.form-group label[data-v-9cdb0895]{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:var(--color-text)}.form-group input[data-v-9cdb0895]{width:100%;padding:.625rem .75rem;border:1px solid var(--color-border);border-radius:6px;background-color:var(--color-background);color:var(--color-text);font-size:.875rem}.form-group input[data-v-9cdb0895]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea33}.form-group input[data-v-9cdb0895]:disabled{opacity:.6;cursor:not-allowed}.form-actions[data-v-9cdb0895]{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem}.btn-secondary[data-v-9cdb0895]{padding:.5rem 1rem;background-color:transparent;border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);cursor:pointer;font-size:.875rem}.btn-secondary[data-v-9cdb0895]:hover:not(:disabled){background-color:var(--color-background-soft)}.btn-secondary[data-v-9cdb0895]:disabled{opacity:.6;cursor:not-allowed}.btn-primary[data-v-9cdb0895]{padding:.5rem 1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500}.btn-primary[data-v-9cdb0895]:hover:not(:disabled){opacity:.9}.btn-primary[data-v-9cdb0895]:disabled{opacity:.6;cursor:not-allowed}.btn-logout[data-v-9cdb0895]{padding:.5rem 1rem;background-color:transparent;border:1px solid #ef4444;border-radius:6px;color:#ef4444;cursor:pointer;font-size:.875rem}.btn-logout[data-v-9cdb0895]:hover:not(:disabled){background-color:#fef2f2}.btn-logout[data-v-9cdb0895]:disabled{opacity:.6;cursor:not-allowed}.app-container[data-v-0e6eb9e2]{min-height:100vh;display:flex}.sidebar[data-v-0e6eb9e2]{width:220px;min-width:220px;background-color:var(--color-background-soft);border-right:1px solid var(--color-border);padding:1.5rem 1rem;display:flex;flex-direction:column;position:fixed;top:0;left:0;height:100vh}.logo-link[data-v-0e6eb9e2]{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:var(--color-heading);font-weight:600;font-size:1.25rem;margin-bottom:2rem}.logo-link[data-v-0e6eb9e2]:hover{color:var(--color-heading);background:transparent}.logo-icon[data-v-0e6eb9e2]{width:28px;height:28px;object-fit:contain}.sidebar-nav[data-v-0e6eb9e2]{display:flex;flex-direction:column;gap:.25rem;flex:1}.sidebar-nav a[data-v-0e6eb9e2]{padding:.75rem 1rem;border-radius:6px;text-decoration:none;color:var(--color-text);font-weight:500;transition:background-color .2s,color .2s}.sidebar-nav a[data-v-0e6eb9e2]:hover{background-color:var(--color-background-mute)}.sidebar-nav a.router-link-active[data-v-0e6eb9e2]{background-color:var(--color-background-mute);color:var(--color-heading)}.nav-link-with-badge[data-v-0e6eb9e2]{display:flex;align-items:center;justify-content:space-between}.nav-link-content[data-v-0e6eb9e2]{display:flex;align-items:center;gap:.5rem}.nav-icon[data-v-0e6eb9e2]{font-size:18px;opacity:.7}.nav-badge[data-v-0e6eb9e2]{background:#ef4444;color:#fff;font-size:.7rem;font-weight:600;padding:.1rem .4rem;border-radius:10px;min-width:1.25rem;text-align:center}.sidebar-footer[data-v-0e6eb9e2]{padding-top:1rem;border-top:1px solid var(--color-border)}.user-info[data-v-0e6eb9e2]{display:flex;flex-direction:column;gap:.125rem;margin-bottom:.75rem}.user-name[data-v-0e6eb9e2]{font-weight:500;color:var(--color-heading);font-size:.875rem}.user-email[data-v-0e6eb9e2]{font-size:.75rem;color:var(--color-text);opacity:.7;overflow:hidden;text-overflow:ellipsis}.user-actions[data-v-0e6eb9e2]{display:flex;gap:.5rem;margin-bottom:.75rem}.user-action-btn[data-v-0e6eb9e2]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:var(--color-background-mute);border-radius:6px;cursor:pointer;color:var(--color-text);opacity:.7;transition:opacity .2s,background-color .2s}.user-action-btn[data-v-0e6eb9e2]:hover{opacity:1;background:var(--color-border)}.user-action-btn .material-icons[data-v-0e6eb9e2]{font-size:18px}.nav-link-admin[data-v-0e6eb9e2]{border-top:1px solid var(--color-border);margin-top:.5rem;padding-top:.75rem!important}.app-main[data-v-0e6eb9e2]{flex:1;width:100%;padding:2rem;margin-left:220px;height:100vh;overflow:hidden}.app-main--no-sidebar[data-v-0e6eb9e2]{margin-left:0;padding:0}.app-container--no-sidebar[data-v-0e6eb9e2]{background:transparent}.mobile-header[data-v-0e6eb9e2],.mobile-overlay[data-v-0e6eb9e2],.mobile-drawer[data-v-0e6eb9e2]{display:none}@media(max-width:768px){.sidebar[data-v-0e6eb9e2]{display:none}.app-main[data-v-0e6eb9e2]{margin-left:0;padding:1rem;padding-top:60px;min-height:100vh;height:auto;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.mobile-header[data-v-0e6eb9e2]{display:flex;align-items:center;gap:.75rem;position:fixed;top:0;left:0;right:0;height:50px;background-color:var(--color-background-soft);border-bottom:1px solid var(--color-border);padding:0 1rem;z-index:100}.menu-btn[data-v-0e6eb9e2]{background:none;border:none;padding:.5rem;cursor:pointer;color:var(--color-text);display:flex;align-items:center;justify-content:center}.menu-btn .material-icons[data-v-0e6eb9e2]{font-size:1.5rem}.mobile-header-spacer[data-v-0e6eb9e2]{flex:1}.mobile-logo[data-v-0e6eb9e2]{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:var(--color-heading);font-weight:600;font-size:1.1rem}.mobile-logo[data-v-0e6eb9e2]:hover{background:transparent}.mobile-logo .logo-icon[data-v-0e6eb9e2]{width:24px;height:24px}.mobile-overlay[data-v-0e6eb9e2]{display:block;position:fixed;inset:0;background-color:#00000080;z-index:200}.mobile-drawer[data-v-0e6eb9e2]{display:flex;flex-direction:column;position:fixed;top:0;left:-280px;width:280px;height:100vh;background-color:var(--color-background-soft);z-index:300;transition:left .3s ease;padding:1.5rem 1rem}.mobile-drawer--open[data-v-0e6eb9e2]{left:0}.drawer-header[data-v-0e6eb9e2]{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:1.25rem;margin-bottom:2rem;color:var(--color-heading)}.drawer-nav[data-v-0e6eb9e2]{display:flex;flex-direction:column;gap:.25rem;flex:1}.drawer-nav a[data-v-0e6eb9e2]{padding:.75rem 1rem;border-radius:6px;text-decoration:none;color:var(--color-text);font-weight:500;transition:background-color .2s,color .2s}.drawer-nav a[data-v-0e6eb9e2]:hover{background-color:var(--color-background-mute)}.drawer-nav a.router-link-active[data-v-0e6eb9e2]{background-color:var(--color-background-mute);color:var(--color-heading)}.drawer-footer[data-v-0e6eb9e2]{padding-top:1rem;border-top:1px solid var(--color-border)}.mobile-user-actions[data-v-0e6eb9e2]{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.mobile-action-btn[data-v-0e6eb9e2]{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-background);color:var(--color-text);font-size:.875rem;cursor:pointer;transition:background-color .2s}.mobile-action-btn[data-v-0e6eb9e2]:hover{background:var(--color-background-mute)}.mobile-action-btn .material-icons[data-v-0e6eb9e2]{font-size:1.25rem;opacity:.7}.mobile-action-btn--logout[data-v-0e6eb9e2]{color:#ef4444;border-color:#fecaca}.mobile-action-btn--logout[data-v-0e6eb9e2]:hover{background:#fef2f2}.mobile-action-btn--logout .material-icons[data-v-0e6eb9e2]{color:#ef4444}}
