*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:Plus Jakarta Sans,system-ui,-apple-system,sans-serif;line-height:1.5}body{line-height:inherit;margin:0}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;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}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background:200 30% 90%;--foreground:210 25% 14%;--card:200 30% 97%;--card-foreground:210 25% 14%;--popover:0 0% 100%;--popover-foreground:210 25% 14%;--primary:165 40% 38%;--primary-foreground:0 0% 100%;--secondary:200 20% 92%;--secondary-foreground:210 25% 14%;--muted:200 20% 93%;--muted-foreground:210 12% 48%;--accent:200 20% 91%;--accent-foreground:210 25% 14%;--destructive:0 72% 55%;--destructive-foreground:0 0% 100%;--border:200 20% 86%;--input:200 20% 86%;--ring:165 40% 38%;--radius:.75rem;--chart-1:#3d8b7a;--chart-2:#5ba68f;--chart-3:#8bc4a9;--chart-4:#6b9fba;--chart-5:#a3c4d4;--bg-page:#d5e3ed;--bg-card:#eef4f8;--bg-card-hover:#f2f7fa;--bg-elevated:#e4ecf2;--bg-inset:#dbe5ee;--bg-hover:#e8eff5;--text-primary:#1a2e3b;--text-secondary:#4a6572;--text-tertiary:#8aa3b0;--text-inverse:#fff;--color-primary:#3d8b7a;--color-primary-hover:#337a6a;--color-primary-light:#e4f5f0;--color-primary-muted:#7ab8a8;--color-success:#2d9b6e;--color-success-light:#e6f7ef;--color-success-text:#1a6b4a;--color-danger:#d4544a;--color-danger-light:#fdf0ef;--color-danger-text:#8c2f28;--color-warning:#d4943a;--color-warning-light:#fdf6ec;--color-warning-text:#7a5420;--color-info:#5a8db8;--color-info-light:#ecf4fb;--color-info-text:#2d5f82;--border-default:#c5d5e0;--border-subtle:#d8e5ee;--border-strong:#adc0cc;--shadow-card:0 2px 12px #0028500f, 0 1px 4px #0028500a;--shadow-card-hover:0 6px 20px #00285017, 0 2px 6px #0028500d;--shadow-nav:0 1px 4px #0028500f;--shadow-modal:0 20px 60px #00285026, 0 4px 16px #00285014;--radius-card:18px;--radius-input:12px;--radius-button:12px;--radius-pill:999px;--glass-bg:#eef4f8b3;--glass-border:#ffffff80;--glass-blur:16px}.dark{--background:210 18% 22%;--foreground:200 15% 95%;--card:210 16% 27%;--card-foreground:200 15% 95%;--popover:210 16% 27%;--popover-foreground:200 15% 95%;--primary:165 40% 48%;--primary-foreground:0 0% 100%;--secondary:210 14% 30%;--secondary-foreground:200 15% 95%;--muted:210 14% 30%;--muted-foreground:200 15% 82%;--accent:210 14% 34%;--accent-foreground:200 15% 95%;--destructive:0 60% 42%;--destructive-foreground:0 0% 100%;--border:210 14% 36%;--input:210 14% 36%;--ring:165 40% 48%;--chart-1:#5bbaa5;--chart-2:#7dd4b8;--chart-3:#a8e4ca;--chart-4:#7db8d4;--chart-5:#b0d6e4;--bg-page:#2a3845;--bg-card:#344555;--bg-card-hover:#3c5060;--bg-elevated:#304050;--bg-inset:#2e3c4a;--bg-hover:#3c5060;--text-primary:#f2f6f8;--text-secondary:#dce8f0;--text-tertiary:#bdd0dc;--text-inverse:#1a2a38;--color-primary:#5bbaa5;--color-primary-hover:#7ccdb8;--color-primary-light:#283e38;--color-primary-muted:#4a9080;--color-success:#55cc95;--color-success-light:#1a3828;--color-success-text:#80e0b0;--color-danger:#f08080;--color-danger-light:#3a1818;--color-danger-text:#f0a8a8;--color-warning:#f0c060;--color-warning-light:#382e14;--color-warning-text:#f0d890;--color-info:#80b8e0;--color-info-light:#1a2e3e;--color-info-text:#a8d0f0;--border-default:#4a6070;--border-subtle:#405565;--border-strong:#607888;--shadow-card:0 2px 8px #0000002e, 0 1px 3px #0000001a;--shadow-card-hover:0 6px 20px #00000040, 0 2px 6px #00000026;--shadow-nav:0 1px 4px #0000002e;--shadow-modal:0 20px 60px #00000059, 0 4px 16px #0003;--glass-bg:#344555bf;--glass-border:#ffffff1f;--glass-blur:16px}*{box-sizing:border-box;border-color:hsl(var(--border))}html{scroll-behavior:smooth;font-size:15px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:hsl(var(--background));color:hsl(var(--foreground));margin:0;font-family:Plus Jakarta Sans,system-ui,-apple-system,sans-serif;font-weight:400;line-height:1.6}#root{min-height:100vh}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}h1,h2,h3,h4{letter-spacing:-.01em;line-height:1.3}.card-elevated{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);box-shadow:var(--shadow-card);transition:box-shadow .2s,transform .2s}.card-elevated:hover{box-shadow:var(--shadow-card-hover)}.expense-row:nth-child(2n){background-color:#eff3f5}.dark .expense-row:nth-child(2n){background-color:#19242e}.euro-input{background:var(--glass-bg);-webkit-backdrop-filter:blur(8px);border:1px solid var(--border-default);border-radius:var(--radius-input);min-width:0;color:var(--text-primary);outline:none;height:44px;padding:0 12px;font-size:.875rem;transition:all .15s}.euro-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 20%, transparent)}.euro-input.input-error{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-danger) 15%, transparent);border-color:var(--color-danger)!important}.euro-input::placeholder{color:var(--text-tertiary)}.input-error-text{color:var(--color-danger-text);margin-top:2px;font-size:11px}.euro-group{align-items:center;gap:.375rem;display:flex}.euro-group .euro-symbol{color:var(--text-tertiary);-webkit-user-select:none;user-select:none;text-align:right;flex-shrink:0;width:1rem;font-size:.875rem;line-height:1.25rem}.euro-group input{flex:1;min-width:0}.btn-primary{background:var(--color-primary);color:var(--text-inverse);border-radius:var(--radius-button);box-shadow:0 2px 8px color-mix(in srgb, var(--color-primary) 30%, transparent);cursor:pointer;border:none;padding:10px 20px;font-size:.875rem;font-weight:600;transition:all .15s}.btn-primary:hover{background:var(--color-primary-hover);box-shadow:0 4px 14px color-mix(in srgb, var(--color-primary) 35%, transparent);transform:translateY(-1px)}.btn-primary:active{transform:scale(.98)}.btn-secondary{background:var(--glass-bg);-webkit-backdrop-filter:blur(8px);color:var(--text-secondary);border-radius:var(--radius-button);border:1px solid var(--border-default);cursor:pointer;padding:10px 16px;font-size:.875rem;font-weight:500;transition:all .15s}.btn-secondary:hover{background:var(--bg-elevated);border-color:var(--border-strong)}.profile-btn-rename:hover{color:var(--color-warning-text);background:var(--color-warning-light)}.profile-btn-delete:hover{color:var(--color-danger-text);background:var(--color-danger-light)}.paste-modal-item:hover{background:var(--bg-elevated)}select.euro-input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238aa3b0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.bottom-0{bottom:0}.bottom-20{bottom:5rem}.bottom-28{bottom:7rem}.bottom-6{bottom:1.5rem}.left-0{left:0}.left-1\/2{left:50%}.left-1\/4{left:25%}.left-2{left:.5rem}.left-4{left:1rem}.left-full{left:100%}.right-0{right:0}.right-1\.5{right:.375rem}.right-1\/4{right:25%}.right-2{right:.5rem}.right-2\.5{right:.625rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1\.5{top:.375rem}.top-1\/2{top:50%}.top-2{top:.5rem}.top-3{top:.75rem}.top-\[48px\]{top:48px}.top-\[52px\]{top:52px}.top-full{top:100%}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-50{z-index:50}.z-\[10000\]{z-index:10000}.z-\[100\]{z-index:100}.z-\[110\]{z-index:110}.z-\[120\]{z-index:120}.z-\[90\]{z-index:90}.z-\[9999\]{z-index:9999}.col-span-1{grid-column:span 1/span 1}.col-span-2{grid-column:span 2/span 2}.-mx-2{margin-left:-.5rem;margin-right:-.5rem}.-mx-4{margin-left:-1rem;margin-right:-1rem}.mx-1\.5{margin-left:.375rem;margin-right:.375rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-4{margin-top:1rem;margin-bottom:1rem}.-ml-0\.5{margin-left:-.125rem}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-10{margin-bottom:2.5rem}.mb-14{margin-bottom:3.5rem}.mb-2{margin-bottom:.5rem}.mb-20{margin-bottom:5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-0\.5{margin-left:.125rem}.ml-1{margin-left:.25rem}.ml-1\.5{margin-left:.375rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-5{margin-left:1.25rem}.ml-7{margin-left:1.75rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-px{margin-top:1px}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-\[4\/3\]{aspect-ratio:4/3}.h-0\.5{height:.125rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-28{height:7rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-56{height:14rem}.h-6{height:1.5rem}.h-60{height:15rem}.h-7{height:1.75rem}.h-72{height:18rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[18px\]{height:18px}.h-\[2\.5px\]{height:2.5px}.h-\[3px\]{height:3px}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-0{max-height:0}.max-h-40{max-height:10rem}.max-h-48{max-height:12rem}.max-h-72{max-height:18rem}.max-h-\[220px\]{max-height:220px}.max-h-\[240px\]{max-height:240px}.max-h-\[60vh\]{max-height:60vh}.max-h-\[85vh\]{max-height:85vh}.max-h-\[90vh\]{max-height:90vh}.min-h-\[52px\]{min-height:52px}.min-h-\[80vh\]{min-height:80vh}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-32{width:8rem}.w-36{width:9rem}.w-4{width:1rem}.w-40{width:10rem}.w-44{width:11rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-52{width:13rem}.w-56{width:14rem}.w-6{width:1.5rem}.w-60{width:15rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-\[120px\]{width:120px}.w-\[180px\]{width:180px}.w-\[18px\]{width:18px}.w-\[280px\]{width:280px}.w-\[5\.75rem\]{width:5.75rem}.w-\[60px\]{width:60px}.w-\[7rem\]{width:7rem}.w-\[8\.5rem\]{width:8.5rem}.w-\[min\(340px\,calc\(100vw-32px\)\)\]{width:min(340px,100vw - 32px)}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0}.min-w-36{min-width:9rem}.min-w-40{min-width:10rem}.min-w-48{min-width:12rem}.min-w-52{min-width:13rem}.min-w-\[180px\]{min-width:180px}.min-w-\[200px\]{min-width:200px}.min-w-\[300px\]{min-width:300px}.min-w-\[3ch\]{min-width:3ch}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-\[1440px\]{max-width:1440px}.max-w-\[200px\]{max-width:200px}.max-w-\[420px\]{max-width:420px}.max-w-\[500px\]{max-width:500px}.max-w-\[540px\]{max-width:540px}.max-w-\[60\%\]{max-width:60%}.max-w-\[640px\]{max-width:640px}.max-w-\[860px\]{max-width:860px}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1}.shrink-0{flex-shrink:0}.table-fixed{table-layout:fixed}.caption-bottom{caption-side:bottom}.-translate-x-1\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate:180deg;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate:90deg;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-110{--tw-scale-x:1.1;--tw-scale-y:1.1;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:.5s cubic-bezier(.16,1,.3,1) fadeIn}@keyframes pageEnter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.animate-page-enter{animation:.28s cubic-bezier(.16,1,.3,1) pageEnter}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.animate-scale-in{animation:.3s cubic-bezier(.16,1,.3,1) scaleIn}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{animation:.5s cubic-bezier(.16,1,.3,1) slideUp}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.cursor-help{cursor:help}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;user-select:none}.resize-none{resize:none}.resize{resize:both}.appearance-none{appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-\[1fr_80px_80px_80px\]{grid-template-columns:1fr 80px 80px 80px}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-px{gap:1px}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-y-0\.5{row-gap:.125rem}.gap-y-1{row-gap:.25rem}.gap-y-1\.5{row-gap:.375rem}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.625rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-\[var\(--border-subtle\)\]>:not([hidden])~:not([hidden]){border-color:var(--border-subtle)}.self-start{align-self:flex-start}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:var(--radius-input)}.rounded-2xl{border-radius:var(--radius-card)}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:var(--radius-card)}.rounded-b-full{border-bottom-right-radius:9999px;border-bottom-left-radius:9999px}.rounded-t-sm{border-top-left-radius:calc(var(--radius) - 4px);border-top-right-radius:calc(var(--radius) - 4px)}.border{border-width:1px}.border-2{border-width:2px}.border-\[5px\]{border-width:5px}.border-b{border-bottom-width:1px}.border-l-2{border-left-width:2px}.border-l-4{border-left-width:4px}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-\[color-mix\(in_srgb\,var\(--color-danger\)_25\%\,transparent\)\]{border-color:color-mix(in srgb,var(--color-danger) 25%,transparent)}.border-\[color-mix\(in_srgb\,var\(--color-danger\)_30\%\,transparent\)\]{border-color:color-mix(in srgb,var(--color-danger) 30%,transparent)}.border-\[color-mix\(in_srgb\,var\(--color-info\)_25\%\,transparent\)\]{border-color:color-mix(in srgb,var(--color-info) 25%,transparent)}.border-\[color-mix\(in_srgb\,var\(--color-primary\)_10\%\,transparent\)\]{border-color:color-mix(in srgb,var(--color-primary) 10%,transparent)}.border-\[color-mix\(in_srgb\,var\(--color-warning\)_25\%\,transparent\)\]{border-color:color-mix(in srgb,var(--color-warning) 25%,transparent)}.border-\[color-mix\(in_srgb\,var\(--color-warning\)_30\%\,transparent\)\]{border-color:color-mix(in srgb,var(--color-warning) 30%,transparent)}.border-\[rgba\(239\,68\,68\,0\.15\)\]{border-color:#ef444426}.border-\[var\(--border\)\]{border-color:var(--border)}.border-\[var\(--border-default\)\]{border-color:var(--border-default)}.border-\[var\(--border-subtle\)\]{border-color:var(--border-subtle)}.border-\[var\(--color-danger-border\,var\(--border-default\)\)\]{border-color:var(--color-danger-border,var(--border-default))}.border-\[var\(--color-success\)\]{border-color:var(--color-success)}.border-\[var\(--color-warning\)\]{border-color:var(--color-warning)}.border-\[var\(--db-border\)\]{border-color:var(--db-border)}.border-border{border-color:hsl(var(--border))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.border-input{border-color:hsl(var(--input))}.border-transparent{border-color:#0000}.border-b-\[var\(--border-default\)\]{border-bottom-color:var(--border-default)}.border-b-\[var\(--border-subtle\)\]{border-bottom-color:var(--border-subtle)}.border-b-\[var\(--color-primary\)\]{border-bottom-color:var(--color-primary)}.border-l-\[var\(--border-subtle\)\]{border-left-color:var(--border-subtle)}.border-t-\[var\(--border-default\)\]{border-top-color:var(--border-default)}.border-t-\[var\(--border-subtle\)\]{border-top-color:var(--border-subtle)}.bg-\[color-mix\(in_srgb\,var\(--color-warning\)_12\%\,transparent\)\]{background-color:color-mix(in srgb,var(--color-warning) 12%,transparent)}.bg-\[rgba\(239\,68\,68\,0\.08\)\]{background-color:#ef444414}.bg-\[var\(--bg-card\)\]{background-color:var(--bg-card)}.bg-\[var\(--bg-elevated\)\]{background-color:var(--bg-elevated)}.bg-\[var\(--bg-input\)\]{background-color:var(--bg-input)}.bg-\[var\(--bg-inset\)\]{background-color:var(--bg-inset)}.bg-\[var\(--bg-page\)\]{background-color:var(--bg-page)}.bg-\[var\(--bg-page\,\#f8fafc\)\]{background-color:var(--bg-page,#f8fafc)}.bg-\[var\(--border-default\)\]{background-color:var(--border-default)}.bg-\[var\(--color-danger\)\]{background-color:var(--color-danger)}.bg-\[var\(--color-danger-light\)\]{background-color:var(--color-danger-light)}.bg-\[var\(--color-info\)\]{background-color:var(--color-info)}.bg-\[var\(--color-info-light\)\]{background-color:var(--color-info-light)}.bg-\[var\(--color-primary\)\]{background-color:var(--color-primary)}.bg-\[var\(--color-primary-light\)\]{background-color:var(--color-primary-light)}.bg-\[var\(--color-success\)\]{background-color:var(--color-success)}.bg-\[var\(--color-success-light\)\]{background-color:var(--color-success-light)}.bg-\[var\(--color-warning\)\]{background-color:var(--color-warning)}.bg-\[var\(--color-warning-light\)\]{background-color:var(--color-warning-light)}.bg-\[var\(--db-border\)\]{background-color:var(--db-border)}.bg-\[var\(--db-expenses\)\]{background-color:var(--db-expenses)}.bg-\[var\(--db-investing\)\]{background-color:var(--db-investing)}.bg-\[var\(--db-leisure\)\]{background-color:var(--db-leisure)}.bg-\[var\(--db-savings\)\]{background-color:var(--db-savings)}.bg-\[var\(--db-text-muted\)\]{background-color:var(--db-text-muted)}.bg-\[var\(--text-primary\)\]{background-color:var(--text-primary)}.bg-background{background-color:hsl(var(--background))}.bg-black\/40{background-color:#0006}.bg-black\/50{background-color:#00000080}.bg-black\/60{background-color:#0009}.bg-card{background-color:hsl(var(--card))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-foreground{background-color:hsl(var(--foreground))}.bg-muted{background-color:hsl(var(--muted))}.bg-muted\/50{background-color:hsl(var(--muted) / .5)}.bg-primary{background-color:hsl(var(--primary))}.bg-secondary{background-color:hsl(var(--secondary))}.bg-transparent{background-color:#0000}.bg-white\/50{background-color:#ffffff80}.bg-\[linear-gradient\(to_bottom_right\,var\(--color-primary-light\)\,var\(--bg-page\)\,var\(--bg-page\)\)\]{background-image:linear-gradient(to bottom right,var(--color-primary-light),var(--bg-page),var(--bg-page))}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.object-top{-o-object-position:top;object-position:top}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-7{padding:1.75rem}.p-8{padding:2rem}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.px-9{padding-left:2.25rem;padding-right:2.25rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-1{padding-bottom:.25rem}.pb-1\.5{padding-bottom:.375rem}.pb-10{padding-bottom:2.5rem}.pb-16{padding-bottom:4rem}.pb-2{padding-bottom:.5rem}.pb-4{padding-bottom:1rem}.pb-5{padding-bottom:1.25rem}.pb-6{padding-bottom:1.5rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-5{padding-left:1.25rem}.pl-6{padding-left:1.5rem}.pr-3{padding-right:.75rem}.pr-4{padding-right:1rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-1\.5{padding-top:.375rem}.pt-10{padding-top:2.5rem}.pt-14{padding-top:3.5rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[15px\]{font-size:15px}.text-\[2\.2rem\]{font-size:2.2rem}.text-\[26px\]{font-size:26px}.text-\[28px\]{font-size:28px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.normal-case{text-transform:none}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-\[1\.15\]{line-height:1.15}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-\[0\.08em\]{letter-spacing:.08em}.tracking-\[0\.18em\]{letter-spacing:.18em}.tracking-normal{letter-spacing:0}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-\[\#4dbe8a\]{--tw-text-opacity:1;color:rgb(77 190 138/var(--tw-text-opacity,1))}.text-\[\#5bbaa5\]{--tw-text-opacity:1;color:rgb(91 186 165/var(--tw-text-opacity,1))}.text-\[\#d4544a\]{--tw-text-opacity:1;color:rgb(212 84 74/var(--tw-text-opacity,1))}.text-\[\#d4943a\]{--tw-text-opacity:1;color:rgb(212 148 58/var(--tw-text-opacity,1))}.text-\[var\(--bg-page\)\]{color:var(--bg-page)}.text-\[var\(--color-danger\)\]{color:var(--color-danger)}.text-\[var\(--color-danger-text\)\]{color:var(--color-danger-text)}.text-\[var\(--color-info\)\]{color:var(--color-info)}.text-\[var\(--color-info-text\)\]{color:var(--color-info-text)}.text-\[var\(--color-primary\)\]{color:var(--color-primary)}.text-\[var\(--color-success\)\]{color:var(--color-success)}.text-\[var\(--color-success-text\)\]{color:var(--color-success-text)}.text-\[var\(--color-warning\)\]{color:var(--color-warning)}.text-\[var\(--color-warning-text\)\]{color:var(--color-warning-text)}.text-\[var\(--db-expenses\)\]{color:var(--db-expenses)}.text-\[var\(--db-income\)\]{color:var(--db-income)}.text-\[var\(--db-surplus\)\]{color:var(--db-surplus)}.text-\[var\(--db-text\)\]{color:var(--db-text)}.text-\[var\(--db-text-muted\)\]{color:var(--db-text-muted)}.text-\[var\(--db-text-secondary\)\]{color:var(--db-text-secondary)}.text-\[var\(--text-inverse\)\]{color:var(--text-inverse)}.text-\[var\(--text-primary\)\]{color:var(--text-primary)}.text-\[var\(--text-secondary\)\]{color:var(--text-secondary)}.text-\[var\(--text-tertiary\)\]{color:var(--text-tertiary)}.text-amber-300{--tw-text-opacity:1;color:rgb(252 211 77/var(--tw-text-opacity,1))}.text-amber-500{--tw-text-opacity:1;color:rgb(245 158 11/var(--tw-text-opacity,1))}.text-background{color:hsl(var(--background))}.text-card-foreground{color:hsl(var(--card-foreground))}.text-foreground{color:hsl(var(--foreground))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.accent-\[var\(--color-primary\)\]{accent-color:var(--color-primary)}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-25{opacity:.25}.opacity-40{opacity:.4}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.shadow-2xl{--tw-shadow:0 25px 50px -12px #00000040;--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-lg{--tw-shadow:var(--shadow-card-hover);--tw-shadow-colored:var(--shadow-card-hover);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-md,.shadow-sm{--tw-shadow:var(--shadow-card);--tw-shadow-colored:var(--shadow-card);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-xl{--tw-shadow:var(--shadow-card-hover);--tw-shadow-colored:var(--shadow-card-hover);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.outline-none{outline-offset:2px;outline:2px solid #0000}.outline{outline-style:solid}.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.ring-offset-background{--tw-ring-offset-color:hsl(var(--background))}.blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-sm{--tw-drop-shadow:drop-shadow(0 1px 1px #0000000d);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-xl{--tw-backdrop-blur:blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-property:opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-shadow{transition-property:box-shadow;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-property:transform;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-1000{transition-duration:1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.duration-700{transition-duration:.7s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0), var(--tw-enter-translate-y,0), 0) scale3d(var(--tw-enter-scale,1), var(--tw-enter-scale,1), var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0), var(--tw-exit-translate-y,0), 0) scale3d(var(--tw-exit-scale,1), var(--tw-exit-scale,1), var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.duration-1000{animation-duration:1s}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.duration-500{animation-duration:.5s}.duration-700{animation-duration:.7s}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}@media (width<=767px){.expense-row{-webkit-overflow-scrolling:touch;min-width:0;overflow-x:auto}button,[role=button]{min-width:44px;min-height:44px}.expense-row button,nav button{min-width:36px;min-height:36px}.fixed.bottom-6{bottom:4.5rem}}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.report-overlay{z-index:9999;color:#0f172a;-webkit-font-smoothing:antialiased;background:#f1f5f9;font-family:Plus Jakarta Sans,system-ui,-apple-system,sans-serif;position:fixed;inset:0;overflow-y:auto}.report-toolbar{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:10px 24px;display:flex;position:sticky;top:0;box-shadow:0 1px 4px #0000000d}.report-btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:6px;padding:7px 16px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.report-btn-primary{color:#fff;background:#0d9488}.report-btn-primary:hover{background:#0f766e}.report-btn-secondary{color:#475569;background:#f1f5f9;border:1px solid #e2e8f0}.report-btn-secondary:hover{background:#e2e8f0}.report-body{max-width:794px;margin:0 auto;padding:24px 0 80px}.report-page{background:#fff;border-radius:12px;margin:16px;padding:40px 44px;box-shadow:0 1px 4px #0000000f}.report-cover{padding:0;overflow:hidden}.report-cover-header{text-align:center;background:#191919;padding:36px 44px 28px}.report-cover-logo{color:#fff;letter-spacing:-.02em;margin:0 0 6px;font-size:32px;font-weight:800}.report-cover-subtitle{color:#ffffffb3;margin:0;font-size:14px}.report-cover-main{text-align:center;padding:32px 44px 28px}.report-cover-names{color:#2563eb;margin:0 0 4px;font-size:20px;font-weight:700}.report-cover-date{color:#64748b;margin:0 0 24px;font-size:13px}.report-cover-disclaimer{color:#94a3b8;border-top:1px solid #f1f5f9;padding:16px 44px;font-size:10px;line-height:1.6}.report-kpi-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-top:8px;display:grid}.report-kpi-card{text-align:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:14px 10px}.report-kpi-label{color:#64748b;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;font-size:10px;display:block}.report-kpi-value{font-size:16px;font-weight:700}.report-section-title{color:#0f172a;border-bottom:1px solid #f1f5f9;align-items:center;gap:10px;margin:0 0 20px;padding-bottom:12px;font-size:16px;font-weight:700;display:flex}.report-accent-bar{border-radius:2px;flex-shrink:0;width:4px;height:20px;display:block}.report-sub-title{color:#334155;margin:0 0 8px;font-size:13px;font-weight:700}.report-col-title{margin:0 0 12px;font-size:13px;font-weight:700}.report-mini-title{margin:0 0 6px;font-size:12px;font-weight:700}.report-two-col{grid-template-columns:1fr 1fr;align-items:start;gap:32px;display:grid}.report-facts-list{flex-direction:column;gap:2px;display:flex}.report-fact-row{color:#64748b;border-bottom:1px solid #f8fafc;justify-content:space-between;align-items:center;padding:6px 0;font-size:13px;display:flex}.report-detail-list{background:#f8fafc;border-radius:8px;padding:4px 0}.report-detail-row{color:#475569;justify-content:space-between;align-items:center;padding:7px 16px;font-size:12.5px;display:flex}.report-detail-row:nth-child(2n){background:#f1f5f9}.report-detail-total{color:#0f172a;border-top:2px solid #e2e8f0;justify-content:space-between;align-items:center;margin-top:2px;padding:10px 16px;font-size:13px;font-weight:700;display:flex}.report-wealth-total{color:#0f172a;background:#f0f9ff;border:1px solid #bfdbfe;border-radius:8px;justify-content:space-between;align-items:center;margin-top:16px;padding:14px 16px;font-size:15px;font-weight:800;display:flex}.report-score-row{margin-bottom:6px}.report-score-label{color:#475569;justify-content:space-between;margin-bottom:3px;font-size:12px;display:flex}.report-bar-track{background:#e2e8f0;border-radius:3px;height:6px;overflow:hidden}.report-bar-fill{border-radius:3px;height:100%;transition:width .8s}.report-score-explain{color:#94a3b8;margin:2px 0 10px;font-size:11px;line-height:1.4}.report-table{border-collapse:collapse;width:100%;font-size:12.5px}.report-table-compact{font-size:11.5px}.report-th{text-align:left;color:#475569;text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid #e2e8f0;padding:8px 12px;font-size:11px;font-weight:600}.report-th-right{text-align:right}.report-td{vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:8px 12px}.report-td-right{text-align:right}.report-total-row{background:#f8fafc}.report-total-row .report-td{border-top:2px solid #e2e8f0;border-bottom:none}.report-row-danger{background:#fef2f2}.report-badge{white-space:nowrap;border-radius:12px;padding:2px 10px;font-size:11px;font-weight:600;display:inline-block}.report-advice-item{border-radius:4px;margin:3px 0;padding:4px 8px;font-size:12px;line-height:1.4}.report-advice-success{color:#166534;background:#f0fdf4}.report-advice-danger{color:#991b1b;background:#fef2f2}.report-advice-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.report-advice-card{border:1px solid;border-radius:8px;padding:12px 14px}.report-risk-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:10px;padding:18px 20px}.report-risk-title{color:#334155;margin:0 0 12px;font-size:13px;font-weight:700}.report-risk-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.report-risk-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px;font-size:10px;display:block}.report-risk-value{color:#0f172a;font-size:15px;font-weight:700}.report-risk-summary{flex-direction:column;gap:10px;display:flex}.report-risk-item{align-items:flex-start;gap:10px;display:flex}.report-risk-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:4px}.report-chart-container{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin:12px 0;padding:16px 12px}.report-proj-subtitle{color:#94a3b8;margin:0 0 8px;font-size:11px;line-height:1.5}.report-milestones{margin-top:20px}.report-timeline{border-left:2px solid #e2e8f0;flex-direction:column;gap:0;padding-left:12px;display:flex}.report-timeline-item{align-items:center;gap:12px;padding:8px 0;display:flex;position:relative}.report-timeline-dot{border:2px solid #fff;border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-left:-17px}.report-timeline-content{flex:1;justify-content:space-between;align-items:center;display:flex}.report-timeline-label{color:#0f172a;font-size:13px;font-weight:700}.report-timeline-year{color:#64748b;font-size:11px}.report-footnote{color:#94a3b8;margin-top:12px;font-size:11px;font-style:italic;line-height:1.5}.report-toc{flex-direction:column;gap:0;display:flex}.report-toc-row{color:#334155;border-bottom:1px solid #f8fafc;align-items:baseline;gap:6px;padding:5px 0;font-size:13px;display:flex}.report-toc-dots{border-bottom:1px dotted #cbd5e1;flex:1;margin-bottom:3px}.report-checklist{flex-direction:column;gap:8px;display:flex}.report-check-item{background:#f8fafc;border:1px solid #f1f5f9;border-radius:8px;align-items:flex-start;gap:10px;padding:8px 12px;display:flex}.report-check-icon{flex-shrink:0;margin-top:2px;font-size:16px;line-height:1}.report-check-desc{color:#64748b;margin:3px 0 0;font-size:11px;line-height:1.4}.report-waterfall{flex-direction:column;gap:0;display:flex}.report-waterfall-row{color:#334155;border-bottom:1px solid #f8fafc;justify-content:space-between;align-items:center;padding:8px 12px;font-size:13px;display:flex}.report-waterfall-minus{color:#dc2626}.report-waterfall-sub{color:#64748b;padding-left:20px;font-size:12px}.report-waterfall-result{background:#f0fdf4;border:1px solid #bbf7d0;border-bottom:none;border-radius:8px;font-weight:700}.report-action-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.report-action-card{border:1px solid;border-radius:10px;padding:14px 16px}.report-action-card p{margin:0;font-size:12px;line-height:1.5}.report-page-footer{text-align:center;color:#94a3b8;border-top:1px solid #f1f5f9;margin-top:20px;padding-top:12px;font-size:10px}.report-final-footer{text-align:center;color:#94a3b8;padding:24px;font-size:11px}@media print{@page{margin:0;size:A4}body>#root,.no-print{display:none!important}.report-overlay{background:#fff!important;position:static!important;overflow:visible!important}.report-body{max-width:none;margin:0;padding:0}.report-page{box-shadow:none;page-break-before:always;page-break-inside:avoid;border-radius:0;margin:0;padding:15mm}.report-page:first-child{page-break-before:auto}.report-page.report-cover{padding:0}.report-risk-card,.report-advice-card,.report-action-card,.report-kpi-grid,.report-check-item{page-break-inside:avoid}.report-detail-list{page-break-inside:auto}.report-sub-title{page-break-after:avoid}.report-overlay,.report-overlay *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important}.report-chart-container{background:0 0;border:none;padding:0}.report-health-svg{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.report-final-footer{page-break-before:avoid}}.placeholder\:text-\[var\(--text-tertiary\)\]::placeholder{color:var(--text-tertiary)}.first\:rounded-l-lg:first-child{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.last\:mb-0:last-child{margin-bottom:0}.last\:rounded-r-lg:last-child{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.hover\:scale-105:hover{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-\[1\.02\]:hover{--tw-scale-x:1.02;--tw-scale-y:1.02;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-\[1\.03\]:hover{--tw-scale-x:1.03;--tw-scale-y:1.03;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-\[var\(--color-danger\)\]:hover{border-color:var(--color-danger)}.hover\:border-\[var\(--color-primary\)\]:hover{border-color:var(--color-primary)}.hover\:border-\[var\(--color-success\)\]:hover{border-color:var(--color-success)}.hover\:bg-\[var\(--bg-elevated\)\]:hover{background-color:var(--bg-elevated)}.hover\:bg-\[var\(--bg-hover\)\]:hover{background-color:var(--bg-hover)}.hover\:bg-\[var\(--bg-surface\)\]:hover{background-color:var(--bg-surface)}.hover\:bg-\[var\(--color-danger-light\)\]:hover{background-color:var(--color-danger-light)}.hover\:bg-\[var\(--color-success-light\)\]:hover{background-color:var(--color-success-light)}.hover\:bg-\[var\(--color-warning-light\)\]:hover{background-color:var(--color-warning-light)}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-black\/80:hover{background-color:#000c}.hover\:bg-destructive\/80:hover{background-color:hsl(var(--destructive) / .8)}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-muted:hover{background-color:hsl(var(--muted))}.hover\:bg-muted\/50:hover{background-color:hsl(var(--muted) / .5)}.hover\:bg-primary\/80:hover{background-color:hsl(var(--primary) / .8)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:text-\[var\(--color-danger\)\]:hover{color:var(--color-danger)}.hover\:text-\[var\(--color-danger-text\)\]:hover{color:var(--color-danger-text)}.hover\:text-\[var\(--color-primary\)\]:hover{color:var(--color-primary)}.hover\:text-\[var\(--color-primary-dark\)\]:hover{color:var(--color-primary-dark)}.hover\:text-\[var\(--color-primary-hover\)\]:hover{color:var(--color-primary-hover)}.hover\:text-\[var\(--color-success\)\]:hover{color:var(--color-success)}.hover\:text-\[var\(--color-warning-text\)\]:hover{color:var(--color-warning-text)}.hover\:text-\[var\(--db-surplus\)\]:hover{color:var(--db-surplus)}.hover\:text-\[var\(--db-text\)\]:hover{color:var(--db-text)}.hover\:text-\[var\(--text-primary\)\]:hover{color:var(--text-primary)}.hover\:text-\[var\(--text-secondary\)\]:hover{color:var(--text-secondary)}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-amber-200:hover{--tw-text-opacity:1;color:rgb(253 230 138/var(--tw-text-opacity,1))}.hover\:text-destructive:hover{color:hsl(var(--destructive))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-70:hover{opacity:.7}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-md:hover,.hover\:shadow-sm:hover{--tw-shadow:var(--shadow-card);--tw-shadow-colored:var(--shadow-card);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow:var(--shadow-card-hover);--tw-shadow-colored:var(--shadow-card-hover);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.hover\:brightness-110:hover{--tw-brightness:brightness(1.1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.focus\:outline-none:focus{outline-offset:2px;outline:2px solid #0000}.focus\:ring-1:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.focus\:ring-\[var\(--color-warning\)\]:focus{--tw-ring-color:var(--color-warning)}.focus\:ring-ring:focus{--tw-ring-color:hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.focus-visible\:outline-none:focus-visible{outline-offset:2px;outline:2px solid #0000}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:hsl(var(--ring))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.active\:scale-95:active{--tw-scale-x:.95;--tw-scale-y:.95;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:scale-\[0\.97\]:active{--tw-scale-x:.97;--tw-scale-y:.97;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:scale-\[0\.98\]:active{--tw-scale-x:.98;--tw-scale-y:.98;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}.group:hover .group-hover\:text-\[var\(--color-primary\)\]{color:var(--color-primary)}.group:hover .group-hover\:text-\[var\(--text-secondary\)\]{color:var(--text-secondary)}.group:hover .group-hover\:opacity-100{opacity:1}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:hsl(var(--muted))}@media (width>=640px){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:block{display:block}.sm\:inline{display:inline}.sm\:hidden{display:none}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-cols-\[1fr_auto_1fr\]{grid-template-columns:1fr auto 1fr}.sm\:flex-row{flex-direction:row}.sm\:p-6{padding:1.5rem}.sm\:p-7{padding:1.75rem}.sm\:p-8{padding:2rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}}@media (width>=768px){.md\:bottom-16{bottom:4rem}.md\:bottom-6{bottom:1.5rem}.md\:left-auto{left:auto}.md\:right-6{right:1.5rem}.md\:col-span-1{grid-column:span 1/span 1}.md\:-mx-6{margin-left:-1.5rem;margin-right:-1.5rem}.md\:mb-14{margin-bottom:3.5rem}.md\:mb-20{margin-bottom:5rem}.md\:mb-6{margin-bottom:1.5rem}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:h-16{height:4rem}.md\:w-16{width:4rem}.md\:max-w-72{max-width:18rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:flex-col{flex-direction:column}.md\:items-center{align-items:center}.md\:gap-5{gap:1.25rem}.md\:gap-8{gap:2rem}.md\:p-10{padding:2.5rem}.md\:p-6{padding:1.5rem}.md\:p-8{padding:2rem}.md\:px-4{padding-left:1rem;padding-right:1rem}.md\:px-5{padding-left:1.25rem;padding-right:1.25rem}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:px-8{padding-left:2rem;padding-right:2rem}.md\:py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.md\:pb-0{padding-bottom:0}.md\:pb-14{padding-bottom:3.5rem}.md\:pb-8{padding-bottom:2rem}.md\:pt-12{padding-top:3rem}.md\:pt-20{padding-top:5rem}.md\:text-center{text-align:center}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-\[2\.5rem\]{font-size:2.5rem}.md\:text-\[3rem\]{font-size:3rem}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:text-sm{font-size:.875rem;line-height:1.25rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}.md\:text-xs{font-size:.75rem;line-height:1rem}}@media (width>=1024px){.lg\:sticky{position:sticky}.lg\:top-20{top:5rem}.lg\:col-span-2{grid-column:span 2/span 2}.lg\:-mx-10{margin-left:-2.5rem;margin-right:-2.5rem}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:grid-cols-\[1fr_380px\]{grid-template-columns:1fr 380px}.lg\:p-7{padding:1.75rem}.lg\:px-10{padding-left:2.5rem;padding-right:2.5rem}.lg\:px-3\.5{padding-left:.875rem;padding-right:.875rem}.lg\:text-\[13px\]{font-size:13px}}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\&\>tr\]\:last\:border-b-0:last-child>tr{border-bottom-width:0}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-width:0}.\[\&_tr\]\:border-b tr{border-bottom-width:1px}.dashboard{--db-bg:#2a3845;--db-card:#344555cc;--db-card-glass:#34455599;--db-border:#5a82a54d;--db-text:#f2f6f8;--db-text-secondary:#dce8f0;--db-text-muted:#bdd0dc;--db-income:#4dbe8a;--db-income-glow:#4dbe8a26;--db-expenses:#d4544a;--db-expenses-glow:#d4544a26;--db-surplus:#5bbaa5;--db-surplus-glow:#5bbaa526;--db-wealth:#7db8d4;--db-wealth-glow:#7db8d426;--db-savings:#4dbe8a;--db-investing:#5a8db8;--db-leisure:#d4943a;--db-radius:18px;background:var(--db-bg);min-height:100vh;color:var(--db-text);position:relative}.dashboard--light{--db-bg:#d5e3ed;--db-card:#eef4f8bf;--db-card-glass:#eef4f8b3;--db-border:#ffffff80;--db-text:#1a2e3b;--db-text-secondary:#3a5565;--db-text-muted:#5f7f8e}.dashboard:before{content:"";pointer-events:none;z-index:0;background:linear-gradient(#1e50781f 0%,#0000 40%);animation:8s ease-in-out infinite ambientPulse;position:absolute;inset:0}.dashboard--light:before{background:linear-gradient(#3d8b7a0f 0%,#0000 30%);animation:none}@keyframes ambientPulse{0%,to{opacity:.85}50%{opacity:1}}.dashboard>*{z-index:1;position:relative}.db-card{background:var(--db-card-glass);-webkit-backdrop-filter:blur(16px);border:1px solid var(--db-border);border-radius:var(--db-radius);padding:24px;transition:border-color .2s,transform .15s}.dashboard--light .db-card{-webkit-backdrop-filter:blur(16px);box-shadow:0 2px 12px #0028500f,0 1px 4px #0028500a}.db-card:hover{border-color:#5082aa40}.dashboard--light .db-card:hover{box-shadow:0 6px 20px #00285014,0 2px 6px #0028500a}.db-metric{position:relative;overflow:hidden}.db-metric:after{content:"";border-radius:0 0 var(--db-radius) var(--db-radius);height:2px;position:absolute;bottom:0;left:0;right:0}.db-metric--income{background:linear-gradient(to bottom, var(--db-income-glow), var(--db-card-glass))}.db-metric--income:after{background:var(--db-income)}.db-metric--expenses{background:linear-gradient(to bottom, var(--db-expenses-glow), var(--db-card-glass))}.db-metric--expenses:after{background:var(--db-expenses)}.db-metric--surplus{background:linear-gradient(to bottom, var(--db-surplus-glow), var(--db-card-glass))}.db-metric--surplus:after{background:var(--db-surplus)}.db-metric--wealth{background:linear-gradient(to bottom, var(--db-wealth-glow), var(--db-card-glass))}.db-metric--wealth:after{background:var(--db-wealth)}.dashboard--light .db-metric--income,.dashboard--light .db-metric--expenses,.dashboard--light .db-metric--surplus,.dashboard--light .db-metric--wealth{background:var(--db-card-glass);-webkit-backdrop-filter:blur(16px)}.db-metric__label{text-transform:uppercase;letter-spacing:.8px;color:var(--db-text-muted);font-size:12px;font-weight:600}.db-metric__value{color:var(--db-text);margin-top:8px;font-size:32px;font-weight:700;line-height:1.15}.db-metric__sub{color:var(--db-text-secondary);margin-top:4px;font-size:13px}.db-metric__icon{color:var(--db-text-muted);opacity:.5}.db-tooltip{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--db-border);color:var(--db-text);background:#2a3845f2;border-radius:12px;padding:12px 16px;font-size:13px}.dashboard--light .db-tooltip{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#1a2e3b;background:#eef4f8f2;border:1px solid #ffffff80;box-shadow:0 4px 16px #0028501a}.db-person-card{border:1px solid var(--db-border);background:#34455566;border-radius:14px;padding:14px 16px}.dashboard--light .db-person-card{background:#fff6;border:1px solid #ffffff80}.db-person-avatar{color:#5bbaa5;background:#5bbaa533;border-radius:10px;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:700;display:flex}.dashboard--light .db-person-avatar{color:#3d8b7a;background:#e4f5f0}.db-insight{border:1px solid var(--db-border);background:#34455566;border-radius:14px;padding:10px 14px;font-size:12px}.dashboard--light .db-insight{background:#fff6;border:1px solid #ffffff80}.db-advice-banner{border-radius:var(--db-radius);cursor:pointer;background:#5bbaa514;border:1px solid #5bbaa533;padding:14px 20px;transition:background .2s}.db-advice-banner:hover{background:#5bbaa51f}.db-advice-banner--warning{background:#d4943a14;border-color:#d4943a33}.db-advice-banner--warning:hover{background:#d4943a1f}.dashboard--light .db-advice-banner{background:#e4f5f0;border-color:#3d8b7a26}.dashboard--light .db-advice-banner:hover{background:#d4f0e8}.dashboard--light .db-advice-banner--warning{background:#fdf6ec;border-color:#d4943a33}.db-divider{background:var(--db-border);height:1px;margin:12px 0}.db-summary-chip{border-radius:14px;justify-content:space-between;align-items:center;padding:12px 16px;font-size:14px;display:flex}.db-summary-chip--positive{background:#4dbe8a14;border:1px solid #4dbe8a26}.db-summary-chip--negative{background:#d4544a14;border:1px solid #d4544a26}.dashboard--light .db-summary-chip--positive{background:#e6f7ef;border-color:#2d9b6e33}.dashboard--light .db-summary-chip--negative{background:#fdf0ef;border-color:#d4544a33}.db-proj-pill{border:1px solid var(--db-border);background:#34455566;border-radius:14px;padding:10px 14px}.dashboard--light .db-proj-pill{background:#fff6;border:1px solid #ffffff80}@keyframes dbFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.db-animate{opacity:0;animation:.4s cubic-bezier(.16,1,.3,1) forwards dbFadeIn}.db-info-box{color:#5bbaa5;background:#5bbaa514;border:1px solid #5bbaa526;border-radius:14px;padding:12px 16px;font-size:12px}.dashboard--light .db-info-box{color:#3d8b7a;background:#e4f5f0;border-color:#3d8b7a26}.dashboard--light .db-score-circle circle:first-child{stroke:#0028500f}.db-dot{border-radius:3px;flex-shrink:0;width:10px;height:10px}
