/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.start{inset-inline-start:var(--spacing)}.table{display:table}}:root{--ink:#171722;--muted:#777785;--line:#e8e8ef;--surface:#fff;--bg:#f7f7fa;--primary:#2525e8;--teal:#159c9c}[data-theme=dark]{--ink:#f1f1f5;--muted:#a3a3b1;--line:#30303b;--surface:#202028;--bg:#15151b;--primary:#77f;--teal:#40c7c7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--font-geist-sans), Arial, sans-serif;margin:0;transition:background .2s,color .2s}button,input,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{color:inherit}.app-shell{min-height:100vh}.sidebar{z-index:30;border-right:1px solid var(--line);background:#fff;flex-direction:column;width:236px;padding:28px 18px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{letter-spacing:-.5px;align-items:center;gap:11px;padding:0 10px 30px;font-size:21px;font-weight:780;display:flex}.brand-mark{color:#fff;background:var(--primary);border-radius:10px;place-items:center;width:34px;height:34px;display:grid;transform:rotate(-4deg)}.brand-mark svg{transform:rotate(4deg)}.nav-menu{gap:5px;display:grid}.nav-menu a,.sidebar-bottom>a{color:#696976;border-radius:10px;align-items:center;gap:12px;min-height:43px;padding:0 12px;font-size:14px;font-weight:550;text-decoration:none;transition:all .2s;display:flex}.nav-menu a:hover,.sidebar-bottom>a:hover{color:var(--ink);background:#f5f5fb}.nav-menu a.active{color:var(--primary);background:#eef;font-weight:680}.sidebar-bottom{gap:17px;margin-top:auto;display:grid}.profile-card{border-top:1px solid var(--line);grid-template-columns:36px 1fr auto;align-items:center;gap:10px;padding:18px 8px 0;display:grid}.avatar{color:#5840b3;background:#e9e4ff;border-radius:50%;place-items:center;width:36px;height:36px;font-size:12px;font-weight:750;display:grid}.profile-card strong,.profile-card span{display:block}.profile-card strong{font-size:12px}.profile-card span{color:#9999a5;margin-top:2px;font-size:10px}.profile-card svg{color:#9999a5}.sidebar-close,.menu-button{display:none}main{min-height:100vh;margin-left:236px}.topbar{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);background:#ffffffeb;align-items:center;gap:14px;height:72px;padding:0 clamp(20px,3vw,42px);display:flex;position:sticky;top:0}.search-box{color:#9999a5;align-items:center;gap:9px;width:min(350px,35vw);display:flex}.search-box input{background:0 0;border:0;outline:0;width:100%;font-size:13px}.icon-button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;place-items:center;width:38px;height:38px;transition:background .2s,border-color .2s,transform .2s;display:grid;position:relative}.icon-button:hover{transform:translateY(-1px)}.theme-button{margin-left:auto}.notification-dot{background:#f25a5a;border:2px solid #fff;border-radius:50%;width:6px;height:6px;position:absolute;top:7px;right:8px}.primary-button{background:var(--primary);color:#fff;cursor:pointer;border:0;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 16px;font-size:13px;font-weight:650;transition:all .2s;display:inline-flex;box-shadow:0 5px 15px #2525e82e}.primary-button:hover{background:#1717c7;transform:translateY(-1px)}.mobile-brand{display:none}.content{max-width:1500px;margin:0 auto;padding:31px clamp(20px,3vw,42px) 46px}.page-heading{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:27px;display:flex}.page-heading h1{letter-spacing:-.9px;margin:3px 0 5px;font-size:clamp(25px,2.5vw,32px)}.page-heading h1 span{font-size:24px}.page-heading p{color:var(--muted);margin:0;font-size:13px}.page-heading .eyebrow{color:var(--primary);letter-spacing:1.5px;font-size:9px;font-weight:760}.filters{gap:9px;display:flex}.filters label{border:1px solid var(--line);background:#fff;border-radius:9px;min-width:136px;padding:7px 28px 7px 11px;position:relative}.filters label:nth-child(2){min-width:180px}.filters label>span{color:#aaaab5;text-transform:uppercase;letter-spacing:.7px;font-size:8px;display:block}.filters select{appearance:none;color:#3e3e49;background:0 0;border:0;outline:0;width:100%;padding:1px 0 0;font-size:11px;font-weight:650}.filters svg{color:#898995;pointer-events:none;position:absolute;top:16px;right:10px}.summary-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:14px;display:grid}.metric-card,.panel{background:var(--surface);border:1px solid var(--line);border-radius:13px}.metric-card{min-width:0;padding:16px}.balance-card{color:#fff;background:linear-gradient(138deg,#2424da 0%,#3b35e9 65%,#5248f0 100%);border-color:#0000;box-shadow:0 10px 30px #2525e826}.metric-top{justify-content:space-between;align-items:center;height:31px;margin-bottom:12px;display:flex}.metric-top button,.panel-heading button{color:inherit;cursor:pointer;background:0 0;border:0}.metric-icon{border-radius:9px;place-items:center;width:32px;height:32px;display:grid}.metric-icon.balance{background:#ffffff29}.metric-icon.income{color:#128f76;background:#e5f8f2}.metric-icon.expense{color:#dd6e51;background:#fff0eb}.metric-icon.saved{color:#6d4dd2;background:#eee8ff}.metric-card>span{color:#777785;font-size:11px;display:block}.balance-card>span,.balance-card small{color:#ffffffb8}.metric-card>strong{letter-spacing:-.6px;white-space:nowrap;margin:4px 0 11px;font-size:clamp(18px,1.55vw,23px);display:block}.metric-card small{color:#92929d;white-space:nowrap;text-overflow:ellipsis;font-size:9.5px;display:block;overflow:hidden}.metric-card small b{color:#7ee0bd}.tag{border-radius:999px;padding:4px 7px;font-size:9px;font-weight:700}.tag.positive{color:#16866e;background:#eaf8f4}.tag.negative{color:#c55b43;background:#fff0eb}.charts-grid{grid-template-columns:minmax(0,1.65fr) minmax(300px,.85fr);gap:14px;margin-bottom:14px;display:grid}.panel{min-width:0;padding:18px}.panel-heading{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.panel h2{letter-spacing:-.15px;margin:0 0 3px;font-size:14px}.panel p{color:#9696a2;margin:0;font-size:10px}.legend{color:#777785;gap:13px;font-size:9.5px;display:flex}.legend span{align-items:center;gap:5px;display:flex}.legend i,.category-list i{border-radius:50%;width:7px;height:7px;display:inline-block}.income-dot{background:var(--primary)}.expense-dot{background:var(--teal)}.chart-wrap{height:220px;margin-top:8px}.chart-tooltip{color:#fff;background:#171722;border-radius:9px;gap:6px;padding:10px 12px;font-size:10px;display:grid;box-shadow:0 8px 22px #0000002e}.chart-tooltip strong{margin-bottom:1px}.chart-tooltip span{color:#d6d6dd;align-items:center;gap:6px;display:flex}.chart-tooltip i{border-radius:50%;width:6px;height:6px}.donut-layout{align-items:center;min-height:220px;display:flex}.donut-chart{flex:0 0 52%;height:175px;position:relative}.donut-center{text-align:center;pointer-events:none;place-content:center;display:grid;position:absolute;inset:0}.donut-center strong{letter-spacing:-.5px;font-size:18px}.donut-center span{color:#9999a5;font-size:9px}.category-list{flex:1;gap:12px;display:grid}.category-list div{justify-content:space-between;align-items:center;gap:8px;font-size:9.5px;display:flex}.category-list span{color:#777785;align-items:center;gap:7px;display:flex}.category-list strong{font-size:10px}.bottom-grid{grid-template-columns:minmax(0,1.65fr) minmax(300px,.85fr);gap:14px;display:grid}.text-button{font-size:10px;font-weight:650;color:var(--primary)!important}.transaction-list{margin-top:11px;display:grid}.transaction{border-top:1px solid #f0f0f4;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:9px 0;display:grid}.transaction-icon{border-radius:9px;place-items:center;width:32px;height:32px;font-size:9px;font-weight:760;display:grid}.transaction-icon.green{color:#16866e;background:#e6f7f1}.transaction-icon.orange{color:#c37220;background:#fff0dc}.transaction-icon.purple{color:#6546c3;background:#eee8ff}.transaction-icon.blue{color:#285bb2;background:#e7efff}.transaction-icon.red{color:#ca4250;background:#ffe7e9}.transaction>div strong,.transaction>div span{display:block}.transaction>div strong{margin-bottom:3px;font-size:10.5px}.transaction>div span{color:#9999a5;font-size:8.5px}.transaction>strong{font-size:10.5px}.transaction>strong.income{color:#16866e}.transaction>strong.expense{color:#373743}.empty-state{color:#9999a5;text-align:center;padding:34px;font-size:12px}.goal-badge{color:#6d4dd2;background:#eee8ff;border-radius:6px;padding:4px 7px;font-size:9px;font-weight:700}.goal-amount{justify-content:space-between;align-items:baseline;margin:28px 0 12px;display:flex}.goal-amount strong{letter-spacing:-.6px;font-size:22px}.goal-amount span{color:#9999a5;font-size:9px}.progress-track{background:#eeeef4;border-radius:99px;height:7px;overflow:hidden}.progress-track span{background:linear-gradient(90deg, var(--primary), #7857ff);border-radius:inherit;width:62%;height:100%;display:block}.goal-meta{color:#92929d;justify-content:space-between;margin-top:8px;font-size:9px;display:flex}.goal-meta b{color:#555561}.monthly-progress{background:#f6f5ff;border-radius:10px;margin-top:26px;padding:12px}.monthly-progress div{color:#6347c5;align-items:center;gap:8px;font-size:9.5px;display:flex}.monthly-progress div b{color:#353540}.monthly-progress>span{color:#9999a5;margin-top:3px;padding-left:26px;font-size:8.5px;display:block}.backdrop{display:none}.modal-backdrop{z-index:60;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1414207a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:16px;width:min(440px,100%);padding:24px;box-shadow:0 25px 70px #0f0f284d}.modal-header{justify-content:space-between;margin-bottom:22px;display:flex}.modal-header h2{margin:0 0 4px;font-size:20px}.modal-header p{color:#8c8c98;margin:0;font-size:12px}.modal-header button{cursor:pointer;background:0 0;border:0}.modal>label{color:#555561;gap:7px;margin:13px 0;font-size:11px;font-weight:650;display:grid}.modal input,.modal select{border:1px solid #dddde7;border-radius:9px;outline:0;width:100%;height:42px;padding:0 12px}.modal input:focus,.modal select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2525e814}.modal-actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.secondary-button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:9px;padding:0 15px;font-size:12px}[data-theme=dark] .sidebar{background:#1b1b22}[data-theme=dark] .topbar{background:#1b1b22eb}[data-theme=dark] .search-box input{color:var(--ink)}[data-theme=dark] .search-box input::placeholder{color:#777787}[data-theme=dark] .icon-button,[data-theme=dark] .filters label,[data-theme=dark] .secondary-button{background:#25252e}[data-theme=dark] .nav-menu a,[data-theme=dark] .sidebar-bottom>a{color:#aaaaba}[data-theme=dark] .nav-menu a:hover,[data-theme=dark] .sidebar-bottom>a:hover{color:#fff;background:#282832}[data-theme=dark] .nav-menu a.active{color:#a9a9ff;background:#2b2b50}[data-theme=dark] .avatar{color:#c2b4ff;background:#34304a}[data-theme=dark] .filters select{color:#e4e4eb}[data-theme=dark] .filters select option,[data-theme=dark] .modal select option{color:#f1f1f5;background:#25252e}[data-theme=dark] .metric-card>span,[data-theme=dark] .legend,[data-theme=dark] .category-list span{color:#a4a4b3}[data-theme=dark] .metric-card small,[data-theme=dark] .panel p,[data-theme=dark] .transaction>div span,[data-theme=dark] .goal-amount span,[data-theme=dark] .goal-meta{color:#8f8f9e}[data-theme=dark] .metric-icon.income{color:#5fe0bd;background:#183e38}[data-theme=dark] .metric-icon.expense{color:#ff967b;background:#472c2a}[data-theme=dark] .metric-icon.saved{color:#c4adff;background:#39304f}[data-theme=dark] .tag.positive{color:#68dfbd;background:#183e38}[data-theme=dark] .tag.negative{color:#ff9c84;background:#472c2a}[data-theme=dark] .transaction{border-color:#30303b}[data-theme=dark] .transaction>strong.expense{color:#e6e6ec}[data-theme=dark] .transaction-icon.green{color:#68dfbd;background:#183e38}[data-theme=dark] .transaction-icon.orange{color:#ffc078;background:#463725}[data-theme=dark] .transaction-icon.purple{color:#c4adff;background:#39304f}[data-theme=dark] .transaction-icon.blue{color:#8db6ff;background:#25344c}[data-theme=dark] .transaction-icon.red{color:#ff929c;background:#492a31}[data-theme=dark] .progress-track{background:#353540}[data-theme=dark] .goal-meta b{color:#d7d7df}[data-theme=dark] .monthly-progress{background:#2c2941}[data-theme=dark] .monthly-progress div{color:#b9a5ff}[data-theme=dark] .monthly-progress div b{color:#f1f1f5}[data-theme=dark] .goal-badge{color:#c4adff;background:#39304f}[data-theme=dark] .modal{background:#202028}[data-theme=dark] .modal>label{color:#c4c4ce}[data-theme=dark] .modal input,[data-theme=dark] .modal select{color:#f1f1f5;background:#292932;border-color:#3a3a46}[data-theme=dark] .modal input::placeholder{color:#737382}[data-theme=dark] .chart-tooltip{color:#171722;background:#f2f2f6}[data-theme=dark] .chart-tooltip span{color:#4f4f5b}[data-theme=dark] .sidebar-close{color:#f1f1f5;background:#2b2b34}@media (width<=1100px){.summary-grid{grid-template-columns:repeat(2,1fr)}.charts-grid,.bottom-grid{grid-template-columns:1fr}.expenses-panel{min-height:auto}.donut-layout{width:100%;max-width:520px;margin:0 auto}}@media (width<=760px){.sidebar{transition:transform .25s;transform:translate(-102%);box-shadow:15px 0 50px #0000001a}.sidebar.open{transform:translate(0)}.sidebar-close{background:#f4f4f8;border:0;border-radius:9px;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:25px;right:17px}main{margin-left:0}.topbar{height:64px;padding:0 16px}.menu-button{background:0 0;border:0;place-items:center;padding:5px;display:grid}.mobile-brand{font-weight:760;display:block}.search-box{width:auto;margin-left:auto}.search-box input{display:none}.icon-button{border:0;margin-left:0}.topbar .primary-button{width:38px;padding:0;font-size:0}.topbar .primary-button svg{width:19px;height:19px}.content{padding:23px 15px 35px}.page-heading{display:block}.filters{margin-top:18px;overflow-x:auto}.filters label{flex:1;min-width:140px}.filters label:nth-child(2){min-width:175px}.summary-grid{scroll-snap-type:x mandatory;padding-bottom:3px;display:flex;overflow-x:auto}.metric-card{scroll-snap-align:start;flex:0 0 80%}.metric-card>strong{font-size:22px}.panel{padding:16px}.legend{display:none}.chart-wrap{height:210px}.donut-layout{flex-direction:column}.donut-chart{flex:none;width:220px}.category-list{grid-template-columns:1fr 1fr;width:100%}.transaction{grid-template-columns:34px minmax(0,1fr) auto}.transaction>div{min-width:0}.transaction>div strong,.transaction>div span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.transaction>strong{font-size:9.5px}.backdrop{z-index:25;background:#14141e59;border:0;display:block;position:fixed;inset:0}}@media (width<=390px){.category-list{grid-template-columns:1fr}.metric-card{flex-basis:88%}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
