@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@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;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--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{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.shrink{flex-shrink:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.overflow-visible{overflow:visible}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.uppercase{text-transform:uppercase}.italic{font-style:italic}.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,)}.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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}:root{--bg:#f4f7fa;--card:#fff;--text:#162437;--muted:#647184;--border:#e2e8ef;--violet:#2b86c5;--violet-dark:#1b648f;--violet-soft:#eaf4fc;--green:#238664;--green-soft:#eaf7f1;--orange:#d98026;--orange-soft:#fff3e7;--blue:#3e75bd;--blue-soft:#eaf2fb;--navy:#1b3048;--danger:#c84852;--danger-soft:#fff0f1;--shadow:0 8px 26px #1d1e360b}*{box-sizing:border-box}html{background:var(--bg);color:var(--text);scroll-behavior:smooth}body{background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--font-geist-sans), Arial, sans-serif;margin:0;font-size:15px;line-height:1.5}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent;color:inherit}input,select,textarea{width:100%;min-height:44px;color:var(--text);background:#fff;border:1px solid #d9d7e1;border-radius:10px;outline:none;padding:10px 12px;transition:border-color .18s,box-shadow .18s}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--violet);box-shadow:0 0 0 3px #2b86c521}button:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #2b86c54d}button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.55}h1,h2,h3,p{margin:0}h1{letter-spacing:-.03em;font-size:24px;line-height:1.2}h2{letter-spacing:-.02em;font-size:18px;line-height:1.3}h3{font-size:16px;line-height:1.35}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.modal-open{overflow:hidden}.app-shell{min-height:100vh}.sidebar{z-index:30;border-right:1px solid var(--border);background:#fff;flex-direction:column;width:238px;padding:24px 16px 18px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:11px;padding:0 9px 25px;display:flex}.brand-mark{flex:none;place-items:center;width:40px;height:40px;display:grid}.brand-mark img{object-fit:contain;width:100%;height:100%;display:block}.brand strong,.brand span{display:block}.brand strong{letter-spacing:-.03em;font-size:18px}.brand span{color:var(--muted);margin-top:1px;font-size:12px}.sidebar nav{gap:9px;display:grid}.nav-section{gap:4px;display:grid}.nav-section-planning{background:#f1faf4;border:1px solid #d9ecdf;border-radius:13px;margin-block:2px;padding:9px}.nav-section-label{color:#247a4a;letter-spacing:.1em;text-transform:uppercase;padding:0 3px 5px;font-size:10px;font-weight:800;display:block}.sidebar nav button{color:#666578;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:11px;width:100%;min-height:44px;padding:10px 12px;transition:background .18s,color .18s;display:flex}.sidebar nav button:hover{color:var(--text);background:#f7f6fb}.sidebar nav button.active{background:var(--violet-soft);color:var(--violet-dark);font-weight:650}.nav-section-planning button:hover{background:#e5f5eb}.nav-section-planning button.active{color:#1f6f43;background:#d9f0e3}.sidebar-footer{gap:10px;margin-top:auto;display:grid}.sidebar-logout{color:#a63d4a;cursor:pointer;text-align:left;background:#fff7f8;border:1px solid #ead8dc;border-radius:10px;align-items:center;gap:11px;width:100%;min-height:44px;padding:10px 12px;font-weight:700;transition:background .18s,border-color .18s,transform .16s;display:flex}.sidebar-logout:hover{background:#fff0f2;border-color:#dfb6be;transform:translateY(-1px)}.sidebar-trust{color:var(--violet-dark);background:#faf9fe;border:1px solid #e7e5f2;border-radius:13px;align-items:center;gap:10px;padding:13px;display:flex}.sidebar-trust strong,.sidebar-trust span{display:block}.sidebar-trust strong{font-size:13px}.sidebar-trust span{color:var(--muted);font-size:12px}.app-main{min-height:100vh;margin-left:238px}.topbar{z-index:20;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffeb;justify-content:space-between;align-items:center;gap:22px;min-height:76px;padding:13px 30px;display:flex;position:sticky;top:0}.topbar-title{align-items:center;gap:10px;display:flex}.eyebrow{color:var(--violet);letter-spacing:.09em;text-transform:uppercase;font-size:11px;font-weight:750;line-height:1.2}.topbar-title .eyebrow{margin-bottom:2px}.mobile-menu-button{border:1px solid var(--border);background:#fff;border-radius:11px;place-items:center;width:44px;height:44px;display:none}.top-actions,.inline-actions{align-items:center;gap:8px;display:flex}.button{cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:9px 13px;font-size:13px;font-weight:650;line-height:1.2;text-decoration:none;transition:transform .16s,background .16s,border-color .16s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button-primary{background:var(--violet);color:#fff;box-shadow:0 6px 14px #2b86c52e}.button-primary:hover:not(:disabled){background:var(--violet-dark)}.button-secondary{color:#444354;background:#fff;border-color:#dedde5}.button-secondary:hover:not(:disabled){background:#fbfbfd;border-color:#c8c6d2}.button-quiet{color:#666578;background:0 0}.button-danger{background:var(--danger);color:#fff}.content{max-width:1550px;margin:0 auto;padding:28px 30px 70px}.page-stack{gap:20px;display:grid}.page-intro{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.page-intro h2{font-size:23px}.page-intro p{color:var(--muted);margin-top:4px}.period-select{color:#5b596b;background:#fff;border:1px solid #dcdbe3;border-radius:10px;align-items:center;min-height:44px;padding:0 10px;display:inline-flex}.period-select select{width:auto;min-height:40px;box-shadow:none;background-color:#0000;border:0;padding:7px 28px 7px 8px;font-weight:600}.metrics-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;display:grid}.metrics-grid .metric-card:nth-child(-n+3){grid-column:span 2}.metrics-grid .metric-card:nth-child(n+4){grid-column:span 3}.metric-card{border:1px solid var(--border);min-height:154px;box-shadow:var(--shadow);background:#fff;border-radius:15px;flex-direction:column;padding:19px;display:flex}.metric-clickable{cursor:pointer;transition:transform .16s,border-color .16s,box-shadow .16s}.metric-clickable:hover{transform:translateY(-2px);box-shadow:0 14px 32px #1d1e3617}.metric-clickable:focus-visible{outline-offset:3px;outline:3px solid #2b86c547}.metric-top{color:var(--muted);justify-content:space-between;align-items:center;font-size:13px;font-weight:620;display:flex}.metric-card>strong{letter-spacing:-.045em;margin-top:18px;font-size:clamp(24px,2.2vw,31px);line-height:1.08;display:block}.metric-note{min-height:28px;color:var(--muted);border-top:1px solid #504c641a;margin-top:auto;padding-top:11px;font-size:12px}.metric-green{background:linear-gradient(#f5fbf7 0%,#fff 100%);border-color:#cfe8d7}.metric-green .metric-top svg,.income{color:var(--green)}.movement{color:#2f5f89}.metric-green .metric-top span,.metric-green>strong{color:#1f6f43}.metric-green .metric-note{border-color:#2f7d511f}.metric-orange{background:linear-gradient(#fff8f2 0%,#fff 100%);border-color:#f0dbca}.metric-orange .metric-top svg{color:var(--orange)}.metric-orange .metric-top span,.metric-orange>strong{color:#9a5517}.metric-orange .metric-note{border-color:#f2a34829}.metric-violet .metric-top svg{color:var(--violet)}.metric-navy{color:#fff;background:linear-gradient(#2a3a52 0%,#24354d 100%);border-color:#2b3d58;box-shadow:0 10px 24px #1d2d4529}.metric-navy .metric-top,.metric-navy .metric-note{color:#d2d8e4}.metric-navy .metric-note{border-color:#ffffff29}.metric-navy .text-link{color:#fff}.text-link{color:var(--violet-dark);cursor:pointer;background:0 0;border:0;align-items:center;gap:3px;padding:0;font-size:13px;font-weight:650;display:inline-flex}.planning-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.planning-summary-card{border:1px solid var(--border);background:#fff;border-radius:16px;padding:18px;position:relative;overflow:hidden}.planning-summary-card:before{content:"";background:#d8dce8;width:4px;position:absolute;inset:0 auto 0 0}.planning-summary-card.personal{background:linear-gradient(#f6fcf7 0%,#fff 100%);border-color:#cfe9d4}.planning-summary-card.personal:before{background:#6ab285}.planning-summary-card.kba{background:linear-gradient(#f5f9ff 0%,#fff 100%);border-color:#cfe0fb}.planning-summary-card.kba:before{background:#78a9e2}.planning-summary-head span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:650}.planning-summary-head h3{letter-spacing:-.04em;margin-top:6px;font-size:28px}.planning-summary-rows{gap:10px;margin-top:18px;display:grid}.planning-summary-rows>div{border-top:1px solid #504c6417;justify-content:space-between;align-items:center;gap:12px;padding-top:10px;display:flex}.planning-summary-rows span{color:var(--muted);font-size:14px}.planning-summary-rows strong{letter-spacing:-.04em;font-size:clamp(22px,2vw,29px);line-height:1}.dashboard-grid{grid-template-columns:minmax(0,1.65fr) minmax(280px,.8fr);gap:16px;display:grid}.panel{border:1px solid var(--border);min-width:0;box-shadow:var(--shadow);background:#fff;border-radius:15px;padding:20px}.panel-head{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:17px;display:flex}.panel-head p{color:var(--muted);margin-top:3px;font-size:13px}.chart-panel{min-height:348px}.chart-wrap{width:100%;height:260px}.donut-layout{grid-template-columns:190px minmax(0,1fr);align-items:center;gap:5px;min-height:260px;display:grid}.donut{width:190px;height:210px}.legend{gap:10px;display:grid}.legend>div{color:var(--muted);grid-template-columns:9px minmax(0,1fr) auto;align-items:center;gap:8px;font-size:12px;display:grid}.legend>div>span:first-child{border-radius:50%;width:9px;height:9px}.legend strong{color:var(--text)}.activity-list{display:grid}.activity-row{border-bottom:1px solid #efedf2;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 0;display:grid}.activity-row:last-child{border-bottom:0}.activity-icon{color:#696778;background:#f1f0f5;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.activity-icon.income{background:var(--green-soft);color:var(--green)}.activity-row>div:nth-child(2) strong,.activity-row>div:nth-child(2) span{display:block}.activity-row>div:nth-child(2) strong{font-size:14px}.activity-row>div:nth-child(2) span{color:var(--muted);margin-top:2px;font-size:12px}.activity-row>strong{font-size:14px}.expense{color:#292a3a}.insight-column{align-content:start;gap:16px;display:grid}.insight-card{color:#fff;min-height:160px;box-shadow:var(--shadow);background:linear-gradient(145deg,#2a3148,#1b2031);border-radius:15px;gap:13px;padding:20px;display:flex}.insight-button{text-align:left;cursor:pointer;border:0;align-items:flex-start;width:100%;transition:transform .18s,box-shadow .18s}.insight-button:hover{transform:translateY(-2px);box-shadow:0 16px 34px #23293e2e}.insight-button:focus-visible{outline-offset:3px;outline:3px solid #2b86c559}.insight-button>svg{color:#d8d9e5;margin-top:4px;margin-left:auto}.insight-icon{color:#cfc9ff;background:#ffffff1c;border-radius:11px;flex:none;place-items:center;width:38px;height:38px;display:grid}.insight-card span{color:#bbbfd0;font-size:12px}.insight-card h3{margin-top:8px;font-size:19px}.insight-card p{color:#cdd0da;margin-top:7px;font-size:13px}.coming-card{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:15px;padding:20px}.coming-row{border-top:1px solid #efedf2;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;display:flex}.coming-row strong,.coming-row span{display:block}.coming-row span{color:var(--muted);font-size:12px}.mini-empty{color:var(--muted);font-size:13px}.mini-empty .text-link{margin-top:8px}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:210px;padding:28px 18px;display:flex}.empty-icon{background:var(--violet-soft);width:48px;height:48px;color:var(--violet);border-radius:14px;place-items:center;display:grid}.empty-state h3{margin-top:13px;font-size:17px}.empty-state p{max-width:390px;color:var(--muted);margin-top:5px;font-size:13px}.empty-state .button{margin-top:17px}.filter-bar{grid-template-columns:minmax(240px,1fr) 180px 180px;gap:10px;margin-bottom:15px;display:grid}.transaction-workbench-controls{z-index:14;background:#fff;margin-bottom:14px;padding-bottom:1px;position:sticky;top:76px}.transaction-filter-bar{grid-template-columns:minmax(220px,1.4fr) repeat(5,minmax(130px,1fr)) auto;align-items:end}.transaction-filter-bar label{gap:5px;min-width:0;display:grid}.transaction-filter-bar label>span:not(.sr-only){color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:750}.search-box{align-items:center;display:flex;position:relative}.search-box svg{color:#858294;position:absolute;left:12px}.search-box input{padding-left:38px}.table-wrap{border:1px solid #eceaf0;border-radius:12px;width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%}th{color:#777485;letter-spacing:.04em;text-align:left;text-transform:uppercase;white-space:nowrap;background:#f8f7fa;padding:10px 12px;font-size:11px;font-weight:700}td{color:#4b4a5a;vertical-align:middle;border-top:1px solid #eeedf2;padding:13px 12px;font-size:13px}.transaction-table{min-width:920px}.transaction-table-wrap{overscroll-behavior:contain;max-height:min(680px,100vh - 360px);overflow:auto}.transaction-table-wrap thead th{z-index:5;position:sticky;top:0;box-shadow:0 1px #eeedf2}.transaction-review-table{min-width:1180px}.transaction-review-table th:first-child,.transaction-review-table td:first-child{text-align:center;width:44px;min-width:44px}.transaction-review-table input[type=checkbox]{width:17px;height:17px;min-height:0;accent-color:var(--violet)}.transaction-table td:first-child{min-width:190px}.transaction-review-table td:first-child{min-width:44px}.transaction-table td:first-child>strong,.transaction-table td:first-child>span{align-items:center;gap:4px;display:flex}.transaction-table td:first-child>strong{color:var(--text);font-size:14px}.transaction-table td:first-child>span{color:var(--muted);margin-top:3px;font-size:12px}.transaction-table td:nth-last-child(2){text-align:right;white-space:nowrap}.transaction-total-bar{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.transaction-total-card{border:1px solid var(--border);background:#fff;border-radius:14px;align-content:center;gap:8px;min-height:86px;padding:18px 20px;display:grid}.transaction-total-card span{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:12px;font-weight:750}.transaction-total-card strong{color:var(--text);font-size:clamp(24px,3vw,34px);line-height:1}.transaction-total-note{color:var(--muted);text-align:right;margin-top:8px;font-size:12px}.sort-header{min-height:32px;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:7px;margin:-6px -8px;padding:6px 8px;display:inline-flex}.sort-header:hover,.sort-header.active{color:var(--violet-dark);background:#eeedf4}.sort-header:focus-visible{outline-offset:2px;outline:2px solid #2b86c561}.sort-mark{min-width:28px;color:var(--violet);letter-spacing:.03em;font-size:9px;font-weight:800}.inline-select{max-width:155px;min-height:38px;color:var(--violet-dark);background:#f4f2fa;border-color:#0000;padding:7px 29px 7px 9px;font-size:12px;font-weight:650}.inline-select:hover{border-color:#dcd8ef}.inline-text,.inline-date{background:#f6f5fa;border-color:#0000;min-height:36px;font-size:12px;font-weight:650}.inline-text{min-width:230px}.inline-date{min-width:145px}.inline-text:focus,.inline-date:focus{background:#fff}.receipt-note{color:var(--muted);align-items:center;gap:4px;margin-top:5px;font-size:11px;display:inline-flex}.tag-row{flex-wrap:wrap;align-items:center;gap:5px;min-width:110px;display:flex}.tag-pill{color:#5e5c6c;cursor:pointer;background:#f0eff4;border:0;border-radius:7px;align-items:center;gap:4px;min-height:28px;padding:4px 7px;font-size:11px;display:inline-flex}.add-tag{width:29px;height:29px;color:var(--violet);cursor:pointer;background:#fff;border:1px dashed #b9b6c5;border-radius:7px;place-items:center;display:grid}.icon-button{color:#686677;cursor:pointer;background:#fff;border:1px solid #e0dee6;border-radius:9px;flex:none;place-items:center;width:38px;height:38px;display:inline-grid}.icon-button:hover{background:#f7f6f9}.danger-icon{color:var(--danger)}.primary-icon{color:var(--violet)}.row-busy{opacity:.55;pointer-events:none}.report-window-toggle{grid-template-columns:repeat(4,minmax(0,1fr));min-width:360px}.report-filter-bar{grid-template-columns:minmax(220px,1.3fr) repeat(6,minmax(120px,1fr)) auto}.report-metrics .metric-card{min-height:136px}.report-metrics .metric-card:nth-child(n){grid-column:span 3}.report-category-list{gap:10px;display:grid}.report-category-row{border:1px solid var(--border);background:#fff;border-radius:14px;grid-template-columns:minmax(0,1fr) 150px 150px;align-items:center;gap:14px;padding:14px 16px;display:grid;position:relative;overflow:hidden}.report-category-row:before{content:"";background:#d8dce8;width:4px;position:absolute;inset:0 auto 0 0}.report-category-row.expense{background:linear-gradient(#fffaf5 0%,#fff 100%);border-color:#f0dbca}.report-category-row.expense:before{background:#e3a15d}.report-category-row.income{background:linear-gradient(#f6fcf8 0%,#fff 100%);border-color:#cfe8d7}.report-category-row.income:before{background:#6ab285}.report-category-main{gap:4px;min-width:0;padding-top:7px;display:grid;position:relative}.report-category-accent{opacity:.78;background:#e3a15d;border-radius:999px;height:3px;position:absolute;inset:0 auto auto 0}.report-category-row.income .report-category-accent{background:#6ab285}.report-category-row strong{color:var(--text);letter-spacing:-.03em;font-size:18px}.report-category-main>strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.report-category-row span{color:var(--muted);font-size:12px;display:block}.report-category-row>div:not(.report-category-main){text-align:right}.report-category-row>div:not(.report-category-main) strong{margin-top:2px;font-size:20px;display:block}.report-category-row.expense>div:not(.report-category-main):last-child strong,.report-category-row.expense>div:not(.report-category-main):nth-child(2) strong{color:#9a5517}.report-category-row.income>div:not(.report-category-main):last-child strong,.report-category-row.income>div:not(.report-category-main):nth-child(2) strong{color:#1f6f43}.status-banner{background:var(--green-soft);color:var(--green);border:1px solid #dbece5;border-radius:14px;justify-content:space-between;align-items:center;gap:15px;padding:15px 18px;display:flex}.status-banner>div{align-items:center;gap:11px;display:flex}.status-dot{background:var(--green);border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 5px #2386641c}.status-banner strong,.status-banner span{display:block}.status-banner strong{font-size:14px}.status-banner span{color:#4f7668;font-size:12px}.commitment-summary{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:15px;grid-template-columns:repeat(3,1fr);display:grid}.commitment-summary>div{border-right:1px solid var(--border);padding:18px 20px}.commitment-summary>div:last-child{border-right:0}.commitment-summary span,.commitment-summary strong{display:block}.commitment-summary span{color:var(--muted);font-size:12px}.commitment-summary strong{letter-spacing:-.03em;margin-top:5px;font-size:21px}.summary-income{background:linear-gradient(#f5fbf7 0%,#fff 100%);border-color:#cfe8d7!important}.summary-income span,.summary-income strong{color:#1f6f43}.summary-expense{background:linear-gradient(#fff8f2 0%,#fff 100%);border-color:#f0dbca!important}.summary-expense span,.summary-expense strong{color:#9a5517}.summary-neutral{background:linear-gradient(#f8fbff 0%,#fff 100%);border-color:#dce3ee!important}.summary-neutral span,.summary-neutral strong{color:#2f5f89}.commitment-summary>.summary-income,.commitment-summary>.summary-expense{position:relative;box-shadow:inset 0 0 0 1px #ffffff73}.commitment-summary>.summary-income:before,.commitment-summary>.summary-expense:before{content:"";width:4px;position:absolute;inset:0 auto 0 0}.commitment-summary>.summary-income:before{background:#6ab285}.commitment-summary>.summary-expense:before{background:#e3a15d}.suggestion-list,.card-list,.rule-list{gap:10px;display:grid}.suggestion-card{background:#fcfbfe;border:1px solid #e9e7ef;border-radius:13px;justify-content:space-between;align-items:center;gap:16px;padding:16px;display:flex}.suggestion-main{gap:12px;min-width:0;display:flex}.suggestion-icon{background:var(--violet-soft);width:40px;height:40px;color:var(--violet);border-radius:11px;flex:none;place-items:center;display:grid}.suggestion-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.suggestion-main p{color:var(--muted);margin-top:2px;font-size:12px}.confidence,.status-chip{text-transform:capitalize;border-radius:999px;align-items:center;width:fit-content;min-height:24px;padding:3px 8px;font-size:10px;font-weight:750;display:inline-flex}.confidence.high,.status-chip.active,.status-chip.stored{background:var(--green-soft);color:var(--green)}.confidence.likely,.status-chip.queued{background:var(--blue-soft);color:var(--blue)}.status-chip.inactive,.status-chip.review{background:var(--orange-soft);color:#a45b16}.suggestion-facts{color:var(--muted);flex-wrap:wrap;gap:13px;margin-top:9px;font-size:11px;display:flex}.suggestion-facts strong{color:var(--text)}.suggestion-actions{align-items:center;gap:6px;display:flex}.manage-card{border:1px solid #e9e7ee;border-radius:12px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:15px;display:grid}.manage-card.commitment-card{grid-template-columns:24px minmax(0,1fr) auto auto;gap:14px;padding:12px 14px}.manage-card h3{margin-top:6px}.manage-card p,.manage-value span{color:var(--muted);font-size:12px}.manage-value{text-align:right}.manage-value strong,.manage-value span{display:block}.commitment-main{gap:6px;min-width:0;display:grid}.commitment-summary-row{gap:2px;min-width:0;display:grid}.commitment-summary-row h3,.commitment-summary-row p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.commitment-summary-row h3{align-items:baseline;gap:8px;margin:0;font-size:15px;line-height:1.25;display:flex}.commitment-name{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;overflow:hidden}.commitment-inline-meta{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);flex:auto;font-size:11px;font-weight:500;overflow:hidden}.commitment-summary-row p{font-size:11px}.commitment-value strong{font-size:16px;line-height:1.1}.commitment-value span{margin-top:2px;font-size:11px}.asset-list{gap:14px;display:grid}.asset-row{background:#fff;border:1px solid #e9e7ee;border-radius:16px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px;padding:18px;display:grid}.asset-main{min-width:0}.asset-main h3{margin-top:8px}.asset-main p{color:var(--muted);margin-top:4px;font-size:13px;line-height:1.45}.asset-value{text-align:right}.asset-value strong,.asset-value span{display:block}.asset-value strong{font-size:24px;line-height:1}.asset-value span{color:var(--muted);margin-top:6px;font-size:12px}.asset-actions{justify-content:flex-end}.row-actions{gap:5px;display:flex}.select-check input{width:18px;height:18px;min-height:0;accent-color:var(--violet)}.commitment-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.commitment-card .status-chip,.commitment-card .owner-pill{min-height:22px;padding:2px 8px;font-size:10px}.owner-pill{color:#5f5a70;text-transform:capitalize;background:#f0eff4;border-radius:999px;align-items:center;min-height:24px;padding:3px 8px;font-size:10px;font-weight:800;display:inline-flex}.owner-pill.owner-kba{color:#1f73b7;background:#dfefff}.owner-pill.owner-ricardo{color:#247a4a;background:#ddf3e5}.owner-pill.owner-nora{color:#b23f72;background:#f9dbe8}.owner-pill.owner-joint{color:#9a7012;background:#f8eab4}.owner-pill.owner-mia{color:#9a6515;background:#f5e2ba}.owner-pill.owner-jamie{color:#1f7c78;background:#d8efee}.bulk-toolbar{background:#fbfafd;border:1px solid #e4e1ec;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;padding:13px;display:flex}.transaction-bulk-toolbar{align-items:flex-end}.bulk-toolbar strong,.bulk-toolbar span{display:block}.bulk-toolbar span{color:var(--muted);margin-top:2px;font-size:11px}.bulk-controls{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.bulk-controls select{width:auto;min-width:130px;min-height:38px;padding-block:7px;font-size:12px;font-weight:650}.bulk-controls input{width:150px;min-height:38px;padding-block:7px;font-size:12px;font-weight:650}.positive-text{color:var(--green)}.negative{color:var(--danger)}.ramp-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:14px;display:grid}.ramp-card{min-width:0;box-shadow:var(--shadow);background:#fff;border:2px solid #d8d4e6;border-radius:16px;flex-direction:column;gap:14px;padding:19px;display:flex}.ramp-window-note{margin-top:4px}.ramp-personal{background:#edf8f1;border-color:#91cfa5}.ramp-kba{background:#eaf3ff;border-color:#92bde9}.ramp-overall{background:#f4f1ff;border-color:#b9afe9}.ramp-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.ramp-card-head span:not(.ramp-status){color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:11px;font-weight:750}.ramp-card h3{margin-top:4px;font-size:19px}.ramp-status{text-transform:uppercase;border-radius:999px;flex:none;min-height:26px;padding:4px 9px;font-size:10px;font-weight:800}.ramp-status.safe,.ramp-status.building{background:var(--green-soft);color:var(--green)}.ramp-status.watch{background:var(--orange-soft);color:#a45b16}.ramp-status.risk{background:var(--danger-soft);color:var(--danger)}.ramp-status.neutral{color:var(--muted);background:#f0eff4}.ramp-hero{gap:8px;display:grid}.ramp-number{letter-spacing:-.06em;font-size:clamp(34px,4vw,48px);line-height:1;display:block}.ramp-hero p{color:var(--muted);font-size:12px}.ramp-meter{background:#ffffffbf;border:1px solid #504c6417;border-radius:999px;height:9px;overflow:hidden}.ramp-meter span{border-radius:inherit;background:linear-gradient(90deg, var(--danger), var(--orange), var(--green));height:100%;display:block}.ramp-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.ramp-facts div{background:#ffffffa3;border-radius:11px;min-width:0;padding:10px}.ramp-facts .summary-income{background:linear-gradient(#f5fbf7f5 0%,#ffffffe6 100%)}.ramp-facts .summary-expense{background:linear-gradient(#fff8f2f5 0%,#ffffffe6 100%)}.ramp-facts .summary-income,.ramp-facts .summary-expense{position:relative;overflow:hidden}.ramp-facts .summary-income:before,.ramp-facts .summary-expense:before{content:"";width:3px;position:absolute;inset:0 auto 0 0}.ramp-facts .summary-income:before{background:#6ab285}.ramp-facts .summary-expense:before{background:#e3a15d}.ramp-facts span,.ramp-facts strong{display:block}.ramp-facts span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:700}.ramp-facts strong{text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:13px;overflow:hidden}.ramp-control-panel{grid-template-columns:minmax(320px,560px) minmax(260px,1fr);align-items:start;gap:16px;display:grid}.ramp-control-panel .segmented{width:100%;min-width:0}.assumption-list{gap:11px;display:grid}.assumption-list>div{background:#fcfbfe;border:1px solid #e9e7ef;border-radius:12px;padding:13px}.assumption-list strong,.assumption-list span{display:block}.assumption-list span{color:var(--muted);margin-top:4px;font-size:12px}.budget-health{background:var(--navy);color:#fff;border-radius:15px;align-items:center;gap:19px;padding:22px;display:flex}.budget-health>div:nth-child(2)>span{color:#b9bfce;font-size:12px}.budget-health h2{margin-top:3px;font-size:23px}.budget-health p{color:#c7cad4;margin-top:5px;font-size:13px}.progress-ring{--progress:0deg;background:conic-gradient(#8b7ff0 var(--progress), #ffffff1f 0);border-radius:50%;flex:none;place-items:center;width:92px;height:92px;display:grid}.progress-ring:before{content:"";background:var(--navy);border-radius:50%;grid-area:1/1;width:70px;height:70px}.progress-ring>div{z-index:1;text-align:center;grid-area:1/1}.progress-ring strong,.progress-ring span{display:block}.progress-ring strong{font-size:20px}.progress-ring span{color:#b9bfce;font-size:10px}.budget-grid,.goals-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.budget-card,.goal-card{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:15px;padding:19px;position:relative}.budget-card{overflow:hidden}.budget-card:before{content:"";background:var(--budget-accent,var(--violet));width:5px;position:absolute;inset:0 auto 0 0}.budget-card.over{border-color:#f0c9cc}.budget-card-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.budget-card-main{align-items:center;gap:14px;min-width:0;display:flex}.budget-icon{background:var(--budget-soft,#f3f0ff);width:60px;height:60px;color:var(--budget-accent,var(--violet));border-radius:18px;flex:none;place-items:center;display:grid}.budget-card-head span,.goal-card>span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.budget-card-head h3{margin-top:3px}.budget-numbers,.goal-numbers{margin-top:22px}.budget-numbers strong,.budget-numbers span,.goal-numbers strong,.goal-numbers span{display:block}.budget-numbers strong,.goal-numbers strong{letter-spacing:-.04em;font-size:23px}.budget-numbers span,.goal-numbers span{color:var(--muted);font-size:12px}.progress{background:#eeedf2;border-radius:999px;height:8px;margin-top:14px;overflow:hidden}.progress span{border-radius:inherit;background:var(--budget-accent,var(--violet));height:100%;display:block}.over .progress span{background:var(--danger)}.budget-foot{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;margin-top:9px;font-size:11px;display:flex}.budget-foot strong{color:var(--text)}.budget-housing{--budget-accent:#6b5ce7;--budget-soft:#f1edff;background:linear-gradient(#fcfbff 0%,#f7f4ff 100%)}.budget-groceries{--budget-accent:#2c8d5f;--budget-soft:#e9f7ef;background:linear-gradient(#fbfffc 0%,#f3fbf6 100%)}.budget-shopping{--budget-accent:#d46f2f;--budget-soft:#fff0e6;background:linear-gradient(#fffdfb 0%,#fff6f0 100%)}.budget-dining{--budget-accent:#c4547f;--budget-soft:#ffeaf1;background:linear-gradient(#fffafb 0%,#fff2f6 100%)}.budget-transportation{--budget-accent:#2778c7;--budget-soft:#e9f3ff;background:linear-gradient(#fbfdff 0%,#f1f7ff 100%)}.budget-utilities{--budget-accent:#14a3a3;--budget-soft:#e7fbfb;background:linear-gradient(#fbffff 0%,#f0fcfc 100%)}.budget-subscriptions{--budget-accent:#7c63d6;--budget-soft:#eee9ff;background:linear-gradient(#fdfcff 0%,#f6f4ff 100%)}.budget-insurance{--budget-accent:#4f6ecf;--budget-soft:#edf1ff;background:linear-gradient(#fcfdff 0%,#f4f6ff 100%)}.budget-health{--budget-accent:#d9506d;--budget-soft:#ffe9ee;background:linear-gradient(#fffafb 0%,#fff2f5 100%)}.budget-entertainment{--budget-accent:#9a4fd1;--budget-soft:#f5eaff;background:linear-gradient(#fefcff 0%,#f8f2ff 100%)}.budget-income{--budget-accent:#24935d;--budget-soft:#e8f8ef;background:linear-gradient(#fbfffd 0%,#f2fbf6 100%)}.budget-other{--budget-accent:#6d7488;--budget-soft:#f1f3f8;background:linear-gradient(#fdfdfe 0%,#f6f8fb 100%)}.goal-card{min-height:250px}.goal-hero{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;padding-right:170px;display:flex}.goal-icon{background:var(--blue-soft);width:42px;height:42px;color:var(--blue);border-radius:12px;place-items:center;margin-bottom:18px;display:grid}.goal-actions{position:absolute;top:15px;right:15px}.goal-card h3{margin-top:4px;font-size:19px}.goal-card>p{min-height:38px;color:var(--muted);margin-top:6px;font-size:12px}.goal-forecast-card{grid-column:1/-1;width:100%;min-height:0}.goal-reach-badge{text-align:center;background:#f8f7fc;border:1px solid #e6e3ef;border-radius:18px;align-content:center;gap:6px;width:116px;min-height:116px;padding:12px;display:grid;box-shadow:inset 0 1px #ffffffb3}.goal-reach-badge span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.goal-reach-badge strong{letter-spacing:-.05em;font-size:31px;line-height:1}.goal-reach-badge.ready{color:#1f7b4a;background:linear-gradient(#f6fcf7 0%,#edf8f0 100%);border-color:#b9e3c7}.goal-reach-badge.pending{color:#5f5d6d;background:linear-gradient(#fbfbfe 0%,#f5f4fa 100%);border-color:#e6e3ef}.goal-forecast-panel{gap:16px;display:grid}.goal-forecast-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.goal-forecast-summary>div,.goal-forecast-point,.goal-forecast-meta>div{background:#fcfbfe;border:1px solid #ebe8f1;border-radius:12px;padding:12px}.goal-forecast-summary .summary-income{background:linear-gradient(#f5fbf7 0%,#fff 100%);border-color:#cfe8d7}.goal-forecast-summary .summary-expense{background:linear-gradient(#fff8f2 0%,#fff 100%);border-color:#f0dbca}.goal-forecast-summary .summary-income,.goal-forecast-summary .summary-expense{position:relative;overflow:hidden}.goal-forecast-summary .summary-income:before,.goal-forecast-summary .summary-expense:before{content:"";width:4px;position:absolute;inset:0 auto 0 0}.goal-forecast-summary .summary-income:before{background:#6ab285}.goal-forecast-summary .summary-expense:before{background:#e3a15d}.goal-forecast-summary span,.goal-forecast-point span,.goal-forecast-meta span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px;display:block}.goal-forecast-summary strong,.goal-forecast-point strong,.goal-forecast-meta strong{letter-spacing:-.03em;margin-top:4px;font-size:18px;display:block}.goal-forecast-summary strong{font-size:20px}.goal-forecast-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.goal-forecast-point.ready{background:#f4fbf6;border-color:#b9e3c7}.goal-forecast-point small{color:var(--muted);margin-top:6px;font-size:12px;line-height:1.4;display:block}.goal-forecast-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.document-cards{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.document-primary{border:1px solid var(--border);min-height:246px;box-shadow:var(--shadow);background:#fff;border-radius:15px;flex-direction:column;align-items:flex-start;padding:22px;display:flex}.big-icon{border-radius:13px;place-items:center;width:46px;height:46px;display:grid}.big-icon.violet{background:var(--violet-soft);color:var(--violet)}.big-icon.blue{background:var(--blue-soft);color:var(--blue)}.document-primary>div:nth-child(2){margin-top:15px}.document-primary>div:nth-child(2)>span:not(.status-chip){color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.document-primary h2{margin-top:3px;font-size:21px}.document-primary p{color:var(--muted);margin-top:5px;font-size:13px}.document-primary>.button,.document-primary>.inline-actions{margin-top:auto}.document-list{display:grid}.document-row{border-top:1px solid #eeedf2;grid-template-columns:42px minmax(0,1fr) auto 100px 38px;align-items:center;gap:12px;padding:12px 0;display:grid}.document-row:first-child{border-top:0}.file-icon{color:#6c697b;background:#f1f0f5;border-radius:10px;place-items:center;width:40px;height:40px;display:grid}.document-row>div:nth-child(2) strong,.document-row>div:nth-child(2) span{display:block}.document-row>div:nth-child(2) span,.document-row>span:nth-last-child(2){color:var(--muted);font-size:12px}.rule-row{border:1px solid #e9e7ee;border-radius:12px;grid-template-columns:46px minmax(0,1fr) 20px minmax(0,1fr) auto;align-items:center;gap:13px;padding:13px;display:grid}.rule-row>div>span,.rule-row>div>strong{display:block}.rule-row>div>span{color:var(--muted);text-transform:uppercase;font-size:11px}.rule-row>div>strong{margin-top:2px;font-size:13px}.toggle{cursor:pointer;background:#cfccd7;border:0;border-radius:999px;width:42px;height:24px;padding:2px;position:relative}.toggle span{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .18s;display:block;box-shadow:0 1px 4px #00000029}.toggle.on{background:var(--violet)}.toggle.on span{transform:translate(18px)}.name-manager{gap:12px;display:grid}.category-manager{gap:14px}.category-manager-summary{background:linear-gradient(135deg,#f7fbff 0%,#f7f5ff 100%);border:1px solid #dce9f7;border-radius:14px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:12px;display:grid}.category-manager-summary>div{width:72px;height:56px;color:var(--violet-dark);background:#fff;border:1px solid #e2e7f0;border-radius:12px;place-items:center;display:grid}.category-manager-summary strong{font-size:21px;line-height:1;display:block}.category-manager-summary span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-top:-8px;font-size:10px;font-weight:700;display:block}.category-manager-summary p{color:var(--muted);margin:0;font-size:12px;line-height:1.45}.name-add{grid-template-columns:minmax(0,1fr) 40px;gap:7px;display:grid}.name-list{flex-wrap:wrap;gap:7px;display:flex}.name-list>div{background:#faf9fc;border:1px solid #e2e0e7;border-radius:10px;align-items:center;gap:5px;min-height:38px;padding:3px 3px 3px 10px;display:inline-flex}.name-list[data-kind=categories]{grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:8px;padding-top:2px;display:grid}.name-list[data-kind=categories]>div{background:#fff;justify-content:space-between;padding-left:12px}.name-list>div>span{font-size:12px;font-weight:600}.name-list small{color:var(--muted);margin-left:6px;font-size:10px;font-weight:500}.name-list .icon-button{background:0 0;border:0;width:30px;height:30px}.name-list>div.name-editing{padding-left:5px}.name-edit-input{border-radius:7px;width:min(170px,42vw);min-height:30px;padding:5px 8px;font-size:12px;font-weight:600}.settings-stack{gap:16px}.settings-tabs{background:#f7f6fb;border:1px solid #e3e0ea;border-radius:12px;gap:4px;width:fit-content;max-width:100%;padding:4px;display:inline-flex;overflow-x:auto}.settings-tabs button{min-height:36px;color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:9px;padding:8px 12px;font-weight:700}.settings-tabs button.active{color:var(--violet-dark);background:#fff;box-shadow:0 2px 8px #1b192d14}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.settings-form{gap:15px;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.field{color:#454453;gap:6px;font-size:12px;font-weight:650;display:grid}.field small{color:var(--muted);font-size:11px;font-weight:450}.money-input{position:relative}.money-input>span{z-index:1;color:var(--muted);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.money-input input{padding-left:30px}.net-preview{background:var(--navy);color:#fff;border-radius:12px;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.net-preview span{color:#bdc2d0;font-size:12px}.net-preview strong{font-size:20px}.settings-form>.button{justify-self:start}.settings-row{align-items:center;gap:13px;display:flex}.settings-icon{background:var(--violet-soft);width:42px;height:42px;color:var(--violet);border-radius:11px;flex:none;place-items:center;display:grid}.settings-icon.danger{background:var(--danger-soft);color:var(--danger)}.settings-row>div:nth-child(2){flex:1;min-width:0}.settings-row p{color:var(--muted);margin-top:3px;font-size:12px}.fx-rate-grid{color:var(--muted);grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px;margin-top:8px;font-size:12px;display:grid}.settings-action{align-items:center;gap:10px;display:flex}.settings-action>span{color:var(--muted);font-size:12px}.settings-message{border-radius:12px;margin-top:12px;padding:11px 13px;font-size:12px;font-weight:650}.settings-message-error{color:#9d3b3b;background:#d65a5a1a}.settings-message-success{color:#246842;background:#2f7d511a}.settings-message-neutral{color:#245d91;background:#377ebe1a}.data-maintenance{gap:16px;display:grid}.data-maintenance .settings-row{align-items:flex-start}.transaction-maintenance-upload{background:#fbfafd;border:1px dashed #d7d3e3;border-radius:14px;padding:14px}.transaction-maintenance-preview{gap:12px;display:grid}.transaction-maintenance-table{min-width:900px}.drive-settings{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.drive-settings>div>span,.drive-settings>div>strong,.drive-settings>div>a{display:block}.drive-settings>div>span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.drive-settings>div>strong,.drive-settings>div>a{margin-top:4px;font-size:13px;font-weight:650}.drive-settings a{color:var(--violet-dark);text-decoration:none}.drive-settings a svg{vertical-align:middle;display:inline}.drive-counts{flex-wrap:wrap;grid-column:1/-1;gap:7px;display:flex}.drive-counts>span{color:#5f5d6d;background:#f2f1f6;border-radius:7px;padding:5px 8px;font-size:11px}.helper-box{color:#46688e;background:linear-gradient(#f6f9fd 0%,#eef5fc 100%);border:1px solid #d9e6f5;border-radius:10px;align-items:center;gap:9px;margin-top:15px;padding:12px;font-size:12px;display:flex}.danger-panel{border-color:#f1d6d8}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#12131f8a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-card{background:#fff;border:1px solid #fff6;border-radius:16px;flex-direction:column;width:min(560px,100vw - 40px);max-height:min(88vh,820px);display:flex;overflow:hidden;box-shadow:0 30px 80px #0f101e40}.modal-wide{width:min(960px,100vw - 40px)}.modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:15px;padding:19px 20px 15px;display:flex}.modal-head h2{margin-top:4px;font-size:21px}.modal-description{color:var(--muted);margin-top:5px;font-size:12px}.modal-body{min-width:0;min-height:0;padding:20px;overflow:hidden auto}.modal-form{gap:15px;min-width:0;display:grid}.modal-actions{justify-content:flex-end;gap:8px;padding-top:5px;display:flex}.segmented{background:#f3f2f7;border:1px solid #ebe8f1;border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:6px;display:grid}.segmented.compact{grid-template-columns:repeat(3,minmax(0,1fr));width:fit-content;min-width:320px}.segmented button{color:#6b7286;cursor:pointer;letter-spacing:-.02em;text-align:center;white-space:nowrap;background:0 0;border:0;border-radius:11px;min-height:52px;padding:0 18px;font-size:17px;font-weight:700;line-height:1.15}.segmented button.active{color:#246a9d;background:#fff;box-shadow:0 6px 16px #1b192d14}.segmented-direction button.expense-active{color:#b54a4a;background:#fff1f1;box-shadow:0 2px 8px #b54a4a1a}.segmented-direction button.income-active{color:#2d8a57;background:#eef9f1;box-shadow:0 2px 8px #2d8a571a}.check-row{cursor:pointer;border:1px solid #e4e2e9;border-radius:10px;align-items:flex-start;gap:10px;min-height:50px;padding:11px;display:flex}.check-row input{width:18px;height:18px;min-height:0;accent-color:var(--violet);margin-top:2px}.check-row strong,.check-row small{display:block}.check-row strong{font-size:13px}.check-row small{color:var(--muted);font-size:11px}.tab-switch{background:#f1f0f5;border-radius:11px;gap:6px;margin-bottom:18px;padding:4px;display:flex}.tab-switch button{min-height:40px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:7px;font-size:13px;font-weight:650;display:flex}.tab-switch button.active{color:var(--violet-dark);background:#fff;box-shadow:0 2px 8px #1b192d14}.mapping-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0;display:grid}.mapping-grid .field{min-width:0}.mapping-grid input[type=file]{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;overflow:hidden}.csv-preview>strong{margin-bottom:7px;font-size:13px;display:block}.csv-preview{min-width:0}.csv-preview .table-wrap{max-height:190px;overflow:auto}.csv-preview table{min-width:620px}.csv-preview td{white-space:nowrap}.import-review-summary{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:9px;min-width:0;display:grid}.import-review-summary>div{background:#fbfafd;border:1px solid #e6e3ee;border-radius:11px;min-width:0;padding:11px;position:relative;overflow:hidden}.import-review-summary>div:before{content:"";background:#cfd7e6;width:3px;position:absolute;inset:0 auto 0 0}.import-review-summary>div:nth-child(3):before,.import-review-summary>div:nth-child(4):before{background:#e3a15d}.import-review-summary>div:nth-child(5):before{background:#78a9e2}.import-review-summary span,.import-review-summary strong{display:block}.import-review-summary span{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:10px;font-weight:750}.import-review-summary strong{text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:13px;overflow:hidden}.review-table{min-width:900px}.planning-review-table{min-width:980px}.review-table input[type=checkbox]{width:18px;height:18px;min-height:0;accent-color:var(--violet)}.review-table td:nth-child(3) strong,.review-table td:nth-child(3) span{display:block}.review-table td:nth-child(3) span{color:var(--muted);font-size:11px}.review-table td:nth-child(5){text-align:right}.planning-review-table td:nth-child(2) strong,.planning-review-table td:nth-child(2) span{display:block}.planning-review-table td:nth-child(2) span{color:var(--muted);font-size:11px}.duplicate-row{opacity:.62;background:snow}.drop-hint,.upload-zone{color:var(--muted);text-align:center;background:#faf9fc;border:1px dashed #c8c4d7;border-radius:12px;padding:25px}.drop-hint svg,.upload-zone svg{color:var(--violet)}.drop-hint p,.upload-zone p{max-width:500px;margin:8px auto 0;font-size:12px}.upload-zone h3{margin-top:8px}.upload-zone input{text-align:left;background:#fff;margin-top:15px}.security-note{background:var(--green-soft);color:#477466;border-radius:10px;gap:9px;min-width:0;padding:12px;font-size:12px;display:flex}.security-note svg{flex:none}.security-note p,.helper-box p{overflow-wrap:anywhere;min-width:0}.import-progress{color:#2c628d;background:#f3f8fd;border:1px solid #cddff0;border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px 11px;margin:-6px 0 14px;padding:12px;display:grid;position:relative;overflow:hidden}.import-progress svg{grid-row:1/span 2}.import-progress strong,.import-progress span{display:block}.import-progress strong{font-size:13px}.import-progress span{color:#5e7791;margin-top:2px;font-size:11px}.progress-track{background:#dbe9f6;border-radius:999px;grid-column:1/-1;height:4px;overflow:hidden}.progress-track span{border-radius:inherit;background:linear-gradient(90deg,#2b86c5,#68aee2);width:42%;height:100%;margin-top:0;animation:1.15s ease-in-out infinite import-progress;display:block}.tag-options{border:0;flex-wrap:wrap;gap:8px;margin:0;padding:0;display:flex}.tag-options legend{color:#454453;width:100%;margin-bottom:4px;font-size:12px;font-weight:650}.tag-options label{cursor:pointer;border:1px solid #e0dee6;border-radius:9px;align-items:center;gap:7px;min-height:38px;padding:6px 9px;font-size:12px;display:inline-flex}.tag-options input{width:16px;height:16px;min-height:0;accent-color:var(--violet)}.drive-modal{gap:17px;display:grid}.drive-hero{align-items:center;gap:13px;display:flex}.drive-hero h3{margin-top:5px}.drive-hero p{color:var(--muted);font-size:12px}.drive-counts.large{grid-template-columns:repeat(4,1fr);display:grid}.drive-counts.large>span{text-align:center}.drive-counts.large strong{color:var(--text);font-size:19px;display:block}.full-button{width:100%}.danger-copy{background:var(--danger-soft);color:var(--danger);border-radius:11px;gap:10px;padding:13px;display:flex}.danger-copy svg{flex:none}.danger-copy p{color:#8b555a;margin-top:4px;font-size:12px}.toast{z-index:150;color:#fff;border-radius:11px;align-items:center;gap:9px;max-width:min(420px,100vw - 44px);min-height:48px;padding:11px 14px;font-size:13px;font-weight:620;animation:.25s ease-out toast-in;display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 12px 38px #15152238}.toast-success{background:#237a5e}.toast-error{background:#b8454e}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes import-progress{0%{transform:translate(-110%)}50%{transform:translate(70%)}to{transform:translate(240%)}}.loading-state{color:var(--muted);align-items:center;gap:10px;display:flex}.initial-load{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:100vh;padding:24px;display:flex}.initial-load p{color:var(--muted)}.mobile-nav{display:none}.scope-select select{min-width:112px;min-height:42px;color:var(--violet-dark);background:#fff;border:1px solid #ddd9e7;border-radius:10px;padding:0 34px 0 12px;font-weight:700}.account-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.account-summary>div{border:1px solid var(--border);background:#fff;border-radius:13px;grid-template-columns:auto 1fr;align-items:center;gap:3px 9px;min-height:96px;padding:16px;display:grid;position:relative;overflow:hidden}.account-summary>div:before{content:"";background:#cfd7e6;width:4px;position:absolute;inset:0 auto 0 0}.account-summary svg{color:var(--violet);grid-row:1/3}.account-summary span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px}.account-summary strong{font-size:18px}.owner-split-panel{gap:14px;display:grid}.owner-split-bar{background:#edf0f4;border-radius:999px;height:18px;display:flex;overflow:hidden}.owner-split-segment{min-width:0;transition:opacity .18s}.owner-split-segment:hover{opacity:.84}.owner-split-legend{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;display:grid}.owner-split-item{background:#fbfcfe;border:1px solid #e4e7ed;border-radius:12px;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:14px;display:grid}.owner-split-item strong,.owner-split-item small{display:block}.owner-split-item strong{font-size:18px;line-height:1}.owner-split-item small{color:var(--text);margin-top:2px;font-size:12px;font-weight:700}.owner-split-item>span:last-of-type{color:var(--text);text-align:right;white-space:nowrap;letter-spacing:-.04em;font-size:22px;font-weight:800}.owner-split-dot{background:#9aa4b2;border-radius:999px;width:12px;height:12px}.owner-split-segment.owner-kba,.owner-split-item.owner-kba .owner-split-dot{background:#1f73b7}.owner-split-segment.owner-ricardo,.owner-split-item.owner-ricardo .owner-split-dot{background:#247a4a}.owner-split-segment.owner-nora,.owner-split-item.owner-nora .owner-split-dot{background:#b23f72}.owner-split-segment.owner-joint,.owner-split-item.owner-joint .owner-split-dot{background:#c49517}.owner-split-segment.owner-mia,.owner-split-item.owner-mia .owner-split-dot{background:#b87816}.owner-split-segment.owner-jamie,.owner-split-item.owner-jamie .owner-split-dot{background:#20817b}.account-filter-panel .panel-head{align-items:center}.account-filters{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.account-filters label{gap:5px;min-width:0;display:grid}.account-filters label span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:750}.account-filters select{width:100%;min-height:38px;color:var(--text);text-transform:capitalize;background:#fff;border:1px solid #dedbe8;border-radius:9px;padding:0 10px;font-weight:650}.account-list{gap:9px;display:grid}.account-card{--owner-card:#f8f7fb;--owner-border:#d4d0df;--owner-accent:#5f5a70;--owner-icon:#eceaf2;border:2px solid var(--owner-border);background:var(--owner-card);min-width:0;box-shadow:inset 4px 0 0 var(--owner-accent);border-radius:12px;padding:15px;position:relative;overflow:hidden}.account-row{border-radius:10px;grid-template-columns:minmax(260px,1fr) auto minmax(170px,auto);align-items:center;gap:14px;padding:12px 14px 12px 17px;display:grid}.account-card[data-owner=kba]{--owner-card:#eaf3ff;--owner-border:#92bde9;--owner-accent:#1f73b7;--owner-icon:#d7eaff}.account-card[data-owner=ricardo]{--owner-card:#edf8f1;--owner-border:#91cfa5;--owner-accent:#247a4a;--owner-icon:#d7efdf}.account-card[data-owner=nora]{--owner-card:#fff0f6;--owner-border:#e59ab6;--owner-accent:#b23f72;--owner-icon:#f8d4e1}.account-card[data-owner=joint]{--owner-card:#fff7db;--owner-border:#d8b852;--owner-accent:#9a7012;--owner-icon:#f6e7aa}.account-card[data-owner=mia]{--owner-card:#fff4df;--owner-border:#ddbb75;--owner-accent:#9a6515;--owner-icon:#f5e2ba}.account-card[data-owner=jamie]{--owner-card:#e7f7f6;--owner-border:#86c9c5;--owner-accent:#1f7c78;--owner-icon:#d2edeb}.account-card>.account-card-head .settings-icon{background:var(--owner-icon);color:var(--owner-accent)}.account-card-head{align-items:center;gap:10px;display:flex}.account-card-head>div:last-child{min-width:0}.account-card-head span{color:var(--owner-accent);text-transform:capitalize;font-size:11px;font-weight:650}.account-card-head h3{text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:14px;overflow:hidden}.account-card-head p{color:var(--muted);text-transform:capitalize;margin-top:4px;font-size:11px}.account-card-head small{color:#7b7b8d;margin-top:4px;font-size:10px;display:block}.account-balance{color:var(--text);text-align:right;white-space:nowrap;font-size:28px;line-height:1;display:block}.account-actions{justify-content:flex-end;gap:8px;min-width:max-content;display:flex}.account-actions .button{min-height:36px;padding-inline:10px;font-size:11px}.transaction-kind{color:var(--muted);text-transform:capitalize;margin-top:3px;font-size:10px;display:block}.icloud-sync{gap:15px;display:grid}.icloud-paths{background:#faf9fc;border:1px solid #dcd9e7;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.icloud-paths>div{align-items:center;gap:11px;min-width:0;display:flex}.icloud-paths svg{color:#4f83d1;flex:none}.icloud-paths strong,.icloud-paths span{display:block}.icloud-paths strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.icloud-paths span{color:var(--muted);margin-top:2px;font-size:11px}.sync-file-summary{grid-template-columns:repeat(2,1fr);gap:9px;display:grid}.sync-file-summary span{color:var(--muted);text-align:center;background:#fbfafd;border:1px solid #e6e3ee;border-radius:10px;padding:12px;font-size:12px;position:relative;overflow:hidden}.sync-file-summary span:before{content:"";background:#78a9e2;width:3px;position:absolute;inset:0 auto 0 0}.sync-file-summary strong{color:var(--violet-dark);font-size:20px;display:block}.sync-file-summary span:last-child:before{background:#6ab285}.sync-files{gap:9px;display:grid}.sync-files h3{font-size:14px}.sync-file{border:1px solid #e3e0e9;border-radius:11px;grid-template-columns:40px minmax(0,1fr) minmax(180px,230px);align-items:center;gap:10px;padding:11px;display:grid}.sync-file.compact{grid-template-columns:40px minmax(0,1fr)}.sync-file-error{background:#fff9f9;border-color:#efc4c7}.sync-file-main{min-width:0}.sync-file strong,.sync-file span{display:block}.sync-file-main>strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.sync-file span{color:var(--muted);margin-top:2px;font-size:10px}.preview-facts{flex-wrap:wrap;gap:4px 9px;margin-top:5px;display:flex}.preview-facts span{margin:0}.preview-facts .duplicate-warning{color:var(--danger);font-weight:700}.sync-file select{min-width:0;font-size:11px}@media (max-width:1180px){.account-grid,.account-summary,.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.planning-dashboard-grid,.ramp-grid,.ramp-control,.ramp-control .segmented,.ramp-control-panel{grid-template-columns:1fr}.budget-grid,.goals-grid,.goal-forecast-summary,.drive-settings{grid-template-columns:repeat(2,minmax(0,1fr))}.top-actions .button{padding-inline:10px}}@media (max-width:900px){.sidebar{transition:transform .22s;transform:translate(-100%);box-shadow:12px 0 40px #14142226}.sidebar-open{transform:translate(0)}.app-main{margin-left:0}.mobile-menu-button{display:grid}.topbar{padding:12px 18px}.content{padding:22px 18px 90px}.dashboard-grid,.document-cards{grid-template-columns:1fr}.top-actions .button-secondary:first-child{display:none}.filter-bar{grid-template-columns:minmax(0,1fr) 150px 150px}.transaction-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.transaction-filter-bar .search-box{grid-column:1/-1}.report-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.report-filter-bar .search-box{grid-column:1/-1}.report-category-row{grid-template-columns:minmax(0,1fr) 130px 130px}.mobile-nav{z-index:40;padding:7px 10px calc(7px + env(safe-area-inset-bottom));border-top:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);scrollbar-width:thin;background:#fffffff5;gap:4px;display:flex;position:fixed;inset:auto 0 0;overflow-x:auto}.mobile-nav button{color:#737082;cursor:pointer;background:0 0;border:0;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:78px;min-height:50px;font-size:10px;display:flex}.mobile-nav button[data-planning=true]{color:#2f7d51;background:#f1faf4}.mobile-nav button.active{background:var(--violet-soft);color:var(--violet-dark);font-weight:700}.mobile-nav button[data-planning=true].active{color:#1f6f43;background:#d9f0e3}.toast{bottom:78px}}@media (max-width:700px){body{font-size:14px}.topbar{align-items:flex-start;gap:10px}.topbar-title h1{font-size:19px}.topbar-title .eyebrow{display:none}.top-actions{gap:5px}.top-actions .button{width:42px;min-height:42px;padding:0;font-size:0}.top-actions .button svg{width:18px;height:18px}.page-intro{flex-direction:column;align-items:flex-start}.page-intro .inline-actions{justify-content:space-between;width:100%}.segmented.compact{width:100%;min-width:0}.segmented button{white-space:normal;min-height:48px;padding-inline:14px;font-size:15px}.metrics-grid{grid-template-columns:1fr}.metric-card{min-height:142px}.planning-summary-head h3,.planning-summary-rows strong{font-size:24px}.panel{padding:16px}.donut-layout{grid-template-columns:1fr}.donut{margin:0 auto}.filter-bar{grid-template-columns:1fr}.transaction-workbench-controls{position:static}.transaction-table-wrap{max-height:none;overflow-x:auto}.transaction-filter-bar{grid-template-columns:1fr}.transaction-filter-bar .search-box{grid-column:auto}.report-filter-bar{grid-template-columns:1fr}.report-category-row{grid-template-columns:1fr;gap:9px}.report-category-row>div:not(.report-category-main){text-align:left;justify-content:space-between;align-items:center;display:flex}.report-category-row>div:not(.report-category-main) strong{margin-top:0;font-size:18px}.transaction-total-bar{grid-template-columns:1fr}.transaction-total-note{text-align:left}.filter-bar select{width:100%}.commitment-summary{grid-template-columns:1fr}.commitment-summary>div{border-right:0;border-bottom:1px solid var(--border)}.commitment-summary>div:last-child{border-bottom:0}.suggestion-card{flex-direction:column;align-items:stretch}.suggestion-actions{justify-content:flex-end}.manage-card{grid-template-columns:minmax(0,1fr) auto}.manage-card.commitment-card{grid-template-columns:24px minmax(0,1fr)}.manage-value{text-align:left;grid-column:1}.manage-card.commitment-card .manage-value{text-align:left;grid-column:2}.manage-card .row-actions{grid-area:1/2/3}.manage-card.commitment-card .row-actions{grid-area:auto/2;justify-content:flex-start}.commitment-summary-row h3{display:block}.commitment-name,.commitment-inline-meta{white-space:normal;display:inline}.commitment-inline-meta:before{content:" - "}.commitment-summary-row p{white-space:nowrap}.asset-row{grid-template-columns:1fr;align-items:flex-start}.asset-value{text-align:left}.asset-actions{justify-content:flex-start}.bulk-toolbar{flex-direction:column;align-items:stretch}.bulk-controls{justify-content:flex-start}.bulk-controls select,.bulk-controls .button{width:100%}.budget-grid,.goals-grid,.settings-grid,.goal-forecast-summary,.goal-forecast-grid,.goal-forecast-meta{grid-template-columns:1fr}.budget-health{align-items:flex-start}.budget-icon{border-radius:15px;width:52px;height:52px}.goal-hero{align-items:center;padding-right:0}.goal-reach-badge{width:96px;min-height:96px}.document-row{grid-template-columns:40px minmax(0,1fr) auto}.document-row>span:nth-last-child(2){display:none}.document-row>.status-chip{grid-column:2;width:fit-content}.document-row>.icon-button{grid-area:1/3/3}.rule-row{grid-template-columns:44px minmax(0,1fr) auto}.rule-row>svg{display:none}.rule-row>div:nth-of-type(2){grid-column:2}.rule-row>.row-actions{grid-area:1/3/3}.settings-row{flex-wrap:wrap;align-items:flex-start}.settings-action{justify-content:space-between;width:100%;padding-left:55px}.drive-settings,.form-grid,.mapping-grid{grid-template-columns:1fr}.modal-backdrop{align-items:end;padding:0}.modal-card{border-radius:17px 17px 0 0;width:100%;max-height:94vh}.modal-body{padding:17px}.drive-counts.large{grid-template-columns:repeat(2,1fr)}.scope-select select{width:98px;min-width:98px;padding-inline:8px}.account-summary,.account-filters,.owner-split-legend{grid-template-columns:1fr}.owner-split-item{grid-template-columns:12px minmax(0,1fr) auto;gap:8px;padding:12px}.owner-split-item>span:last-of-type{text-align:right;white-space:nowrap;grid-column:3}.account-row{grid-template-columns:minmax(0,1fr);align-items:stretch}.account-balance{text-align:left}.account-actions{justify-content:space-between;min-width:0}.sync-file{grid-template-columns:36px minmax(0,1fr)}.sync-file select{grid-column:2;width:100%}}@media (max-width:420px){.topbar,.content{padding-inline:12px}.page-intro h2{font-size:21px}.activity-row{grid-template-columns:36px minmax(0,1fr)}.activity-row>strong{text-align:left;grid-column:2}.budget-health,.budget-card-head{flex-direction:column}.budget-card-main{width:100%}.budget-card .row-actions{align-self:flex-end}.goal-hero{flex-direction:column;align-items:flex-start}.inline-actions{flex-wrap:wrap}.period-select{flex:1}.period-select select{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.auth-shell{background:radial-gradient(circle at top,#377ebe1f,#0000 34%),linear-gradient(#f7f9ff 0%,#eef4fb 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:#fffffff0;border:1px solid #4054761f;border-radius:36px;width:min(100%,760px);padding:32px 40px 36px;box-shadow:0 28px 80px #2130491f}.auth-loading-card{text-align:center;color:#5f6d86;place-items:center;gap:14px;width:min(100%,360px);min-height:220px;display:grid}.auth-loading-card svg{color:#3780c0}.auth-brand{justify-content:center;align-items:center;gap:18px;width:fit-content;margin:0 auto 22px;display:flex}.auth-logo{object-fit:contain;width:72px;height:72px}.auth-brand h1{color:#14233b;letter-spacing:-.03em;margin:0;font-size:clamp(24px,3vw,34px);line-height:1.04}.auth-brand p{color:#5e6d87;margin:6px 0 0;font-size:clamp(16px,2vw,20px);font-weight:600}.auth-eyebrow{color:#3780c0;letter-spacing:.12em;text-transform:uppercase;text-align:center;margin:0 0 12px;font-size:13px;font-weight:700}.auth-title{color:#182742;letter-spacing:-.06em;text-align:center;max-width:420px;margin:0 auto;font-size:clamp(28px,4vw,40px);line-height:1.02}.auth-subtitle{color:#64738d;text-align:center;max-width:430px;margin:14px auto 20px;font-size:clamp(15px,1.5vw,18px);line-height:1.4}.auth-avatars{justify-content:center;align-items:center;margin:8px auto 20px;display:flex}.auth-avatar-frame{background:#edf3fb;border:2px solid #fffffff5;border-radius:999px;flex:0 0 80px;width:80px;height:80px;display:block;position:relative;overflow:hidden;box-shadow:0 8px 18px #1d2d4a1f}.auth-avatar-frame+.auth-avatar-frame{margin-left:-14px}.auth-avatar{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.auth-avatar-nora{object-fit:cover;width:170%;max-width:none;height:170%;max-height:none;position:absolute;inset:-14% 0 0 -35%}.auth-message{border-radius:16px;margin-bottom:20px;padding:14px 18px;font-size:15px;font-weight:600}.auth-message-error{color:#9d3b3b;background:#d65a5a1a}.auth-message-success{color:#246842;background:#2f7d511a}.auth-message-neutral{color:#245d91;background:#377ebe1a}.auth-primary,.auth-secondary,.auth-link-button{cursor:pointer;border:0;width:100%}.auth-primary{color:#fff;background:linear-gradient(135deg,#3780c0 0%,#2f74b4 100%);border-radius:20px;justify-content:center;align-items:center;gap:12px;width:min(100%,430px);min-height:58px;margin:0 auto;padding:14px 20px;font-size:16px;font-weight:800;display:flex;box-shadow:0 18px 40px #377ebe38}.auth-primary:hover,.auth-secondary:hover,.auth-link-button:hover{transform:translateY(-1px)}.auth-primary:disabled,.auth-secondary:disabled,.auth-link-button:disabled{opacity:.65;cursor:wait;transform:none}.auth-divider{grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;max-width:430px;margin:22px auto 18px;display:grid}.auth-divider span{background:#5c6c892e;height:1px}.auth-divider p{color:#677690;letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:14px;font-weight:700}.auth-form{gap:14px;max-width:430px;margin:0 auto;display:grid}.auth-form label{gap:10px;display:grid}.auth-form label span{color:#30384a;font-size:14px;font-weight:700}.auth-form input{color:#162742;background:#fff;border:1px solid #56658333;border-radius:20px;outline:none;min-height:56px;padding:0 18px;font-size:16px;font-weight:600}.auth-form input::placeholder{color:#98a2b3}.auth-form input:focus{border-color:#377ebe73;box-shadow:0 0 0 4px #377ebe1a}.auth-secondary{color:#42445d;background:#fff;border:1px solid #56658333;border-radius:20px;justify-content:center;align-items:center;gap:12px;min-height:56px;padding:14px 20px;font-size:16px;font-weight:800;display:flex}.auth-link-button{color:#7a8192;background:0 0;justify-content:center;align-items:center;gap:10px;min-height:44px;margin-top:8px;padding:0 12px;font-size:14px;font-weight:700;display:inline-flex}.auth-note{color:#65758f;align-items:flex-start;gap:12px;max-width:430px;margin:18px auto 0;font-size:13px;line-height:1.45;display:flex}.auth-note svg{color:#2f8e64;flex:none;margin-top:1px}.auth-note p{margin:0}.spin{animation:1s linear infinite spin}@media (max-width:700px){.auth-shell{padding:14px}.auth-card{border-radius:28px;padding:28px 22px 30px}.auth-brand{gap:16px;margin-bottom:24px}.auth-logo{width:62px;height:62px}.auth-title{max-width:100%;font-size:clamp(28px,10vw,38px)}.auth-subtitle{max-width:100%;margin-top:16px;font-size:16px}.auth-avatars{margin-top:4px;margin-bottom:18px}.auth-avatar-frame{flex-basis:64px;width:64px;height:64px}.auth-form input,.auth-primary,.auth-secondary{min-height:56px;font-size:16px}.auth-note{max-width:100%;font-size:13px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
