@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-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:Arial, Helvetica, sans-serif;--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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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:where(:not(iframe)){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{.visible{visibility:visible}.fixed{position:fixed}.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}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.grocery-fieldset{border:0;min-width:0;margin:0;padding:0}.grocery-stack,.grocery-workspace{gap:20px;min-width:0;display:grid}.grocery-workspace [hidden]{display:none}.grocery-workspace .tabs{flex-wrap:wrap;margin-bottom:20px}.grocery-fields{grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));align-items:start;gap:14px;display:grid}.grocery-fields>.field,.grocery-list-row>.field{min-width:0;margin-bottom:0}.grocery-fields>.button,.grocery-list-row>.button{place-self:end start;min-height:41px}.grocery-fields .menu-select-trigger,.grocery-list-row .menu-select-trigger{min-height:41px}.grocery-crop-fields{grid-template-columns:repeat(4,minmax(0,1fr))}.grocery-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.grocery-check{align-items:start;gap:10px;font-size:14px;display:flex}.grocery-check input{accent-color:var(--accent);flex:none;margin-top:3px}.grocery-list-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(140px,1fr) 120px 120px auto;align-items:end;gap:12px;padding-bottom:14px;display:grid}.grocery-result{border:1px solid var(--line);background:var(--surface);border-radius:16px;padding:20px}.grocery-result.winner{border-color:var(--accent)}.grocery-result>header{justify-content:space-between;align-items:start;gap:16px;display:flex}.grocery-result>header>strong{white-space:nowrap;font-size:26px}.grocery-price-lines{margin:16px 0;padding:0;list-style:none}.grocery-price-lines>li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;gap:16px;padding:14px 0;display:flex}.grocery-price-lines>li>div{gap:5px;min-width:0;display:grid}.grocery-price-lines span,.grocery-price-lines small{color:var(--muted);font-size:13px}.grocery-warning{font-size:14px;color:var(--warning,#a45d16)!important}.grocery-photos{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px;display:grid}.grocery-photo,.grocery-review-row,.grocery-history{border:1px solid var(--line);border-radius:12px;min-width:0;padding:16px}.grocery-photo-preview{width:fit-content;max-width:100%;margin:0 auto 16px;position:relative}.grocery-photo canvas{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:460px;display:block}.grocery-crop-box{pointer-events:none;background:#e6a54b1a;border:2px solid #e6a54b;position:absolute}.grocery-review-row>.grocery-check{margin-bottom:16px}.grocery-review-row.excluded{opacity:.65}.grocery-history summary{cursor:pointer;padding:6px 0}@media (max-width:640px){.grocery-list-row{grid-template-columns:1fr 1fr}.grocery-list-row>strong{grid-column:1/-1}.grocery-result>header,.grocery-price-lines>li{flex-wrap:wrap}.grocery-crop-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.grocery-workspace .tabs button{flex:100px}}@media (min-width:1280px){.grocery-scan-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:start}}:root{--bg:#f5f4f0;--surface:#fff;--surface-alt:#f8f9fb;--ink:#1b2941;--muted:#778196;--line:#e5e8ee;--accent:#355fea;--accent-soft:#edf1ff;--positive:#157c68;--positive-soft:#e9f5ef;--negative:#bc4d52;--negative-soft:#fff0ee;--warning:#b27b29;--series-secondary:#b5c4e8;--sidebar:#fff;--shadow:0 8px 32px #1b294108;--move:.18s;--hover:.14s;--ease:cubic-bezier(.2, .8, .2, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#12141a;--surface:#1c2028;--surface-alt:#262b35;--ink:#f3f5f8;--muted:#a3adbd;--line:#3a4250;--accent:#8eabff;--accent-soft:#24345c;--positive:#6bd2b0;--positive-soft:#16362e;--negative:#ff9ca5;--negative-soft:#3d242c;--warning:#edc27c;--warning-soft:#3a2e1c;--series-secondary:#e0b07a;--sidebar:#161922;--shadow:0 10px 28px #0005;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]){--bg:#12141a;--surface:#1c2028;--surface-alt:#262b35;--ink:#f3f5f8;--muted:#a3adbd;--line:#3a4250;--accent:#8eabff;--accent-soft:#24345c;--positive:#6bd2b0;--positive-soft:#16362e;--negative:#ff9ca5;--negative-soft:#3d242c;--warning:#edc27c;--warning-soft:#3a2e1c;--series-secondary:#e0b07a;--sidebar:#161922;--shadow:0 10px 28px #0005;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark] body:before{content:"";z-index:1;pointer-events:none;opacity:.04;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) body:before{content:"";z-index:1;pointer-events:none;opacity:.04;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}}:root[data-theme=dark] .stat:not(.highlight):not(.stat-filled),:root[data-theme=dark] .panel,:root[data-theme=dark] .goal-card:not([data-step="10"]){box-shadow:var(--shadow), inset 0 1px 0 #ffffff12;background-image:linear-gradient(#ffffff0c 0%,#0000 48px)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .stat:not(.highlight):not(.stat-filled),:root:not([data-theme=light]):not([data-theme=dark]) .panel,:root:not([data-theme=light]):not([data-theme=dark]) .goal-card:not([data-step="10"]){box-shadow:var(--shadow), inset 0 1px 0 #ffffff12;background-image:linear-gradient(#ffffff0c 0%,#0000 48px)}}:root[data-theme=dark] .stat-cash,:root[data-theme=dark] .stat.highlight{background:linear-gradient(135deg,#3d63d6 0%,#243e96 100%);border-color:#3d63d6}:root[data-theme=dark] .stat-income{background:linear-gradient(135deg,#1c8f74 0%,#0e5344 100%);border-color:#1c8f74}:root[data-theme=dark] .stat-expense{background:linear-gradient(135deg,#c45c66 0%,#7a333c 100%);border-color:#c45c66}:root[data-theme=dark] .stat-surplus{background:linear-gradient(135deg,#3d86a8 0%,#1d4e66 100%);border-color:#3d86a8}:root[data-theme=dark] .stat-budget{background:linear-gradient(135deg,#d4a24a 0%,#7a5418 100%);border-color:#d4a24a}:root[data-theme=dark] .stat-committed{background:linear-gradient(135deg,#7d74b0 0%,#3d3768 100%);border-color:#7d74b0}:root[data-theme=dark] .stat-invested{background:linear-gradient(135deg,#2ea0b0 0%,#0f5560 100%);border-color:#2ea0b0}:root[data-theme=dark] .stat-wealth{background:linear-gradient(135deg,#6d7ad0 0%,#2a3470 100%);border-color:#6d7ad0}:root[data-theme=dark] .stat-conservative{background:linear-gradient(135deg,#e08a45 0%,#8a4518 100%);border-color:#e08a45}:root[data-theme=dark] .stat-cash:after,:root[data-theme=dark] .stat.highlight:after{border-color:#ffffff12;box-shadow:inset -30px -30px 60px #ffffff14}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .stat-cash,:root:not([data-theme=light]):not([data-theme=dark]) .stat.highlight{background:linear-gradient(135deg,#3d63d6 0%,#243e96 100%);border-color:#3d63d6}:root:not([data-theme=light]):not([data-theme=dark]) .stat-income{background:linear-gradient(135deg,#1c8f74 0%,#0e5344 100%);border-color:#1c8f74}:root:not([data-theme=light]):not([data-theme=dark]) .stat-expense{background:linear-gradient(135deg,#c45c66 0%,#7a333c 100%);border-color:#c45c66}:root:not([data-theme=light]):not([data-theme=dark]) .stat-surplus{background:linear-gradient(135deg,#3d86a8 0%,#1d4e66 100%);border-color:#3d86a8}:root:not([data-theme=light]):not([data-theme=dark]) .stat-budget{background:linear-gradient(135deg,#d4a24a 0%,#7a5418 100%);border-color:#d4a24a}:root:not([data-theme=light]):not([data-theme=dark]) .stat-committed{background:linear-gradient(135deg,#7d74b0 0%,#3d3768 100%);border-color:#7d74b0}:root:not([data-theme=light]):not([data-theme=dark]) .stat-invested{background:linear-gradient(135deg,#2ea0b0 0%,#0f5560 100%);border-color:#2ea0b0}:root:not([data-theme=light]):not([data-theme=dark]) .stat-wealth{background:linear-gradient(135deg,#6d7ad0 0%,#2a3470 100%);border-color:#6d7ad0}:root:not([data-theme=light]):not([data-theme=dark]) .stat-conservative{background:linear-gradient(135deg,#e08a45 0%,#8a4518 100%);border-color:#e08a45}:root:not([data-theme=light]):not([data-theme=dark]) .stat-cash:after,:root:not([data-theme=light]):not([data-theme=dark]) .stat.highlight:after{border-color:#ffffff12;box-shadow:inset -30px -30px 60px #ffffff14}}:root[data-theme=dark] .stat:not(.stat-filled) .stat-icon.tone-positive{background:var(--positive-soft);color:var(--positive)}:root[data-theme=dark] .stat:not(.stat-filled) .stat-icon.tone-negative{background:var(--negative-soft);color:var(--negative)}:root[data-theme=dark] .stat:not(.stat-filled) .stat-icon.tone-warning{background:var(--warning-soft);color:var(--warning)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .stat:not(.stat-filled) .stat-icon.tone-positive{background:var(--positive-soft);color:var(--positive)}:root:not([data-theme=light]):not([data-theme=dark]) .stat:not(.stat-filled) .stat-icon.tone-negative{background:var(--negative-soft);color:var(--negative)}:root:not([data-theme=light]):not([data-theme=dark]) .stat:not(.stat-filled) .stat-icon.tone-warning{background:var(--warning-soft);color:var(--warning)}}:root[data-theme=dark] .row-icon.positive{background:var(--positive-soft);color:var(--positive)}:root[data-theme=dark] .row-icon.negative{background:var(--negative-soft);color:var(--negative)}:root[data-theme=dark] .row-icon:not(.positive):not(.negative){background:var(--accent-soft);color:var(--accent)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .row-icon.positive{background:var(--positive-soft);color:var(--positive)}:root:not([data-theme=light]):not([data-theme=dark]) .row-icon.negative{background:var(--negative-soft);color:var(--negative)}:root:not([data-theme=light]):not([data-theme=dark]) .row-icon:not(.positive):not(.negative){background:var(--accent-soft);color:var(--accent)}}:root[data-theme=dark] .badge.warning{background:var(--warning-soft)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .badge.warning{background:var(--warning-soft)}}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif;font-size:14px;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:3px}input:focus,input:focus-visible,textarea:focus,textarea:focus-visible,select:focus,select:focus-visible{border-color:var(--accent);outline:none}.menu-select-trigger:focus,.menu-select-trigger:focus-visible,.space-trigger:focus,.space-trigger:focus-visible{outline:none}h1,h2,h3,p{margin:0}h1{letter-spacing:-1px;font-size:29px;font-weight:650;line-height:1.25}h2{font-size:15px;font-weight:650}h3{font-size:16px;font-weight:600}.muted,small{color:var(--muted)}small{font-size:12px}.numeric{font-variant-numeric:tabular-nums;white-space:nowrap}.positive{color:var(--positive)}.negative{color:var(--negative)}.eyebrow{letter-spacing:1.5px;color:var(--muted);font-size:10px;font-weight:700}.skip{z-index:99;background:var(--surface);padding:12px;position:fixed;top:-60px;left:10px}.skip:focus{top:10px}.brand{letter-spacing:-1.2px;align-items:center;gap:10px;font-size:24px;font-weight:750;display:inline-flex}.brand-mark{color:#fff;background:#315bea;border-radius:11px;justify-content:center;align-items:center;width:34px;height:36px;font-family:Georgia,serif;font-size:30px;line-height:1;display:flex}.brand-mark span{color:#c1dcff}.brand-dot{color:var(--accent)}.sidebar{background:var(--sidebar);border-right:1px solid var(--line);z-index:20;flex-direction:column;width:230px;padding:30px 18px 18px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar>.brand{margin:0 12px 30px}.space-control{border:1px solid var(--line);background:var(--surface-alt);border-radius:10px;margin-bottom:30px;padding:10px 11px;position:relative}.space-control.open{z-index:30;border-bottom:0;border-radius:10px 10px 0 0}.space-control label{letter-spacing:1px;color:var(--muted);margin-bottom:3px;font-size:10px;font-weight:700;display:block}.space-trigger{width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;padding:0;font-size:13px;font-weight:600;display:flex}.space-trigger svg{color:var(--muted);flex-shrink:0;transform:rotate(90deg)}.menu-select-list,.space-menu{background:var(--surface-alt);border:1px solid var(--line);border-radius:0 0 10px 10px;margin:0;padding:4px;list-style:none}.menu-select-list.category-suggestions{border-radius:10px;max-height:220px;overflow:auto}.space-menu{z-index:30;position:absolute;top:100%;left:-1px;right:-1px}.menu-select-list button,.space-menu button{width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:6px;padding:8px 7px;font-size:13px;font-weight:500;display:block}.space-menu button{font-size:13px;font-weight:600}.menu-select-list button:hover,.menu-select-list button[aria-selected=true],.space-menu button:hover,.space-menu button[aria-selected=true]{background:var(--accent-soft);color:var(--accent)}.menu-select{vertical-align:middle;display:inline-block;position:relative}.menu-select.compact{display:inline-grid}.menu-select.compact .menu-select-trigger,.menu-select.compact .menu-select-sizer{grid-area:1/1}.menu-select-sizer{visibility:hidden;white-space:nowrap;pointer-events:none;padding:10px 32px 10px 11px;font-size:13px;font-weight:600}.menu-select.field{width:100%;max-width:none;display:block}.menu-select-trigger{border:1px solid var(--line);background:var(--surface-alt);width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:10px 11px;font-size:13px;font-weight:600;display:flex}.menu-select.open .menu-select-trigger{z-index:201;border-bottom:0;border-radius:10px 10px 0 0;position:relative}.menu-select-value{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.menu-select-trigger svg{color:var(--muted);flex-shrink:0;transform:rotate(90deg)}.menu-select-trigger:disabled{opacity:.55;cursor:not-allowed}.menu-select-value.is-empty{color:var(--muted);font-weight:500}.menu-select-trigger svg,.space-trigger svg{transition:transform var(--move) var(--ease)}.menu-select.open .menu-select-trigger svg,.space-control.open .space-trigger svg{transform:rotate(-90deg)}.date-picker .menu-select-trigger svg,.date-picker.menu-select.open .menu-select-trigger svg{transform:none}.date-picker.menu-select.open .menu-select-trigger{border-bottom:1px solid var(--line);border-radius:10px}.date-picker-panel{background:var(--surface-alt);border:1px solid var(--line);color:var(--ink);border-radius:10px;padding:12px}.date-picker-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.date-picker-title{color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;font-size:13px;font-weight:650}strong.date-picker-title{cursor:default}.year-nav-prev svg,.date-picker-prev svg{transform:rotate(180deg)}.date-picker-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.date-picker-grid.months{grid-template-columns:repeat(3,1fr);gap:6px}.date-picker-dow{text-align:center;letter-spacing:.4px;color:var(--muted);padding:4px 0 6px;font-size:10px;font-weight:700}.date-picker-grid button{color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;min-height:34px;font-size:12px;font-weight:600}.date-picker-grid button.outside{color:var(--muted);font-weight:500}.date-picker-grid button.today{box-shadow:inset 0 0 0 1px var(--line)}.date-picker-grid button[aria-selected=true]{background:var(--accent);color:#fff}.date-picker-grid button:hover:not(:disabled):not([aria-selected=true]){background:var(--accent-soft);color:var(--accent)}.date-picker-grid button:disabled{opacity:.35;cursor:not-allowed}.date-picker-foot{justify-content:space-between;gap:12px;min-height:18px;margin-top:10px;display:flex}.nav-label{margin:0 12px 10px}.sidebar nav{flex-direction:column;gap:4px;display:flex;position:relative}.nav-indicator{background:var(--accent-soft);pointer-events:none;border-radius:8px;position:absolute;top:0;left:0;right:0}.nav-indicator.motion{transition:transform var(--move) var(--ease)}.nav-indicator:after{content:"";background:var(--accent);border-radius:50%;width:5px;height:5px;position:absolute;top:50%;right:13px;transform:translateY(-50%)}.nav-link{z-index:1;color:var(--muted);border-radius:8px;align-items:center;gap:12px;padding:11px 13px;font-weight:500;display:flex;position:relative}button.nav-link{cursor:pointer;width:100%;font:inherit;text-align:left;background:0 0;border:0}.nav-link:hover{background:var(--surface-alt);color:var(--ink)}.nav-link.active{color:var(--accent);background:var(--accent-soft);font-weight:650}.nav-link.active:after{content:"";background:var(--accent);border-radius:50%;width:5px;height:5px;margin-left:auto}nav:has(.nav-indicator) .nav-link.active{background:0 0}nav:has(.nav-indicator) .nav-link.active:after{content:none}.sidebar-bottom{margin-top:auto}.sidebar-bottom-nav{flex-direction:column;gap:4px;display:flex}.privacy-note{color:var(--muted);border-top:1px solid var(--line);gap:9px;margin-top:20px;padding:16px 12px;font-size:11px;line-height:1.5;display:flex}.privacy-note svg{flex-shrink:0;margin-top:2px}.user-card{border-top:1px solid var(--line);align-items:center;gap:10px;padding:16px 6px 0;display:flex}.avatar{background:var(--accent-soft);width:34px;height:34px;color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.user-card strong{font-size:12px}.user-card small{font-size:10px;display:block}.user-card .icon-button{margin-left:auto}.workspace-main{min-height:100vh;margin-left:230px}.topbar{display:none}.content{max-width:1720px;margin:0 auto;padding:31px 36px 60px}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.page-heading p{color:var(--muted);margin-top:6px;font-size:13px}.heading-actions,.actions{flex-wrap:wrap;align-items:center;gap:9px;display:flex}#planning-actions.planning-actions{display:contents}.button{border:1px solid var(--line);background:var(--surface);color:var(--ink);white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;gap:8px;min-height:37px;padding:9px 14px;font-size:12px;font-weight:600;display:inline-flex}.button:hover{background:var(--surface-alt)}.button.primary{color:#fff;background:#355fea;border-color:#355fea;box-shadow:0 2px 3px #244bcc19}.button.primary:hover{background:#294bc5}.button.danger{color:var(--negative);background:var(--negative-soft);border-color:#0000}.button.small{min-height:30px;padding:5px 10px;font-size:11px}.icon-button{color:var(--muted);background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;min-width:32px;min-height:32px;padding:7px;display:inline-flex}.icon-button:hover{background:var(--surface-alt);color:var(--ink)}.button,.icon-button,.text-button,.nav-link,.toggle,.menu-select-list button,.space-menu button,.menu-select-trigger{transition:background-color var(--hover) var(--ease), color var(--hover) var(--ease), border-color var(--hover) var(--ease), opacity var(--hover) var(--ease)}.text-button{color:var(--accent);background:0 0;border:0;align-items:center;gap:6px;padding:0;font-size:12px;font-weight:600;display:inline-flex}.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}.stat{background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:19px 20px;position:relative;overflow:hidden}.stat-head{color:var(--muted);justify-content:space-between;align-items:center;font-size:12px;display:flex}.stat-icon{background:var(--surface-alt);border-radius:7px;padding:6px;display:flex}.stat strong{letter-spacing:-.8px;margin:13px 0 8px;font-size:26px;font-weight:650;line-height:1.2;display:block}.stat small{font-size:10px}.stat.highlight{color:#fff;background:#294dbb;border-color:#294dbb}.stat.highlight .stat-head,.stat.highlight small{color:#d0ddff}.stat.highlight .stat-icon{background:#ffffff17}.stat.highlight:after{content:"";border:20px solid #ffffff05;border-radius:50%;width:130px;height:130px;position:absolute;bottom:-60px;right:-32px}.stat-filled{color:#fff}.stat-filled .stat-head,.stat-filled small{color:#fffc}.stat-filled .stat-icon{color:#fff;background:#ffffff17}.stat-cash{background:#294dbb;border-color:#294dbb}.stat-cash:after{content:"";border:20px solid #ffffff05;border-radius:50%;width:130px;height:130px;position:absolute;bottom:-60px;right:-32px}.stat-income{background:#157c68;border-color:#157c68}.stat-income .stat-head,.stat-income small{color:#c8f0e4}.stat-income:after{content:"";background:#ffffff14;border-radius:2px;width:9px;height:26px;position:absolute;bottom:16px;right:20px;box-shadow:-15px 10px #ffffff10,-30px 20px #ffffff0a}.stat-expense{background:#a84852;border-color:#a84852}.stat-expense .stat-head,.stat-expense small{color:#ffd8dc}.stat-expense:after{content:"";background:#ffffff10;border-radius:7px;width:110px;height:14px;position:absolute;bottom:22px;right:-28px;transform:rotate(-32deg)}.stat-surplus{background:#2a6f8f;border-color:#2a6f8f}.stat-surplus .stat-head,.stat-surplus small{color:#cce8f5}.stat-surplus:after{content:"";border:2px solid #ffffff14;border-radius:9px;width:38px;height:38px;position:absolute;bottom:14px;right:18px;box-shadow:-20px -16px #ffffff0a}.stat-budget{background:#9a6b24;border-color:#9a6b24}.stat-budget .stat-head,.stat-budget small{color:#f5e6c8}.stat-budget:after{content:"";background:#ffffff16;border-radius:2px;width:10px;height:10px;position:absolute;bottom:18px;right:20px;box-shadow:14px 0 #ffffff12,0 14px #ffffff12,14px 14px #ffffff0a}.stat-committed{background:#5c5488;border-color:#5c5488}.stat-committed .stat-head,.stat-committed small{color:#ddd8f5}.stat-committed:after{content:"";border:2px dashed #ffffff20;border-radius:50%;width:54px;height:54px;position:absolute;bottom:8px;right:12px}.stat-invested{background:#187887;border-color:#187887}.stat-invested .stat-head,.stat-invested small{color:#c8eef4}.stat-invested:after{content:"";border:2px solid #ffffff16;border-radius:50%;width:28px;height:28px;position:absolute;bottom:18px;right:22px;box-shadow:-16px 12px #ffffff0a}.stat-wealth{background:#3f4d96;border-color:#3f4d96}.stat-wealth .stat-head,.stat-wealth small{color:#d8dcff}.stat-wealth:after{content:"";border:2px solid #ffffff14;border-radius:4px;width:34px;height:34px;position:absolute;bottom:16px;right:16px;transform:rotate(18deg)}.stat-conservative{background:#c46a2a;border-color:#c46a2a}.stat-conservative .stat-head,.stat-conservative small{color:#ffe8d4}.stat-conservative:after{content:"";border-top:28px solid #ffffff14;border-left:18px solid #0000;border-right:18px solid #0000;width:0;height:0;position:absolute;bottom:14px;right:24px}.stat-strip{background:var(--accent);border-radius:2px;width:32px;height:3px;margin-top:12px}.dashboard-grid{grid-template-columns:minmax(0,1.75fr) minmax(290px,1fr);align-items:start;gap:22px;display:grid}.panel{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:11px;margin-bottom:22px;overflow:hidden}.panel-heading{justify-content:space-between;align-items:center;gap:15px;padding:19px 21px;display:flex}.panel-heading p{color:var(--muted);margin-top:4px;font-size:11px}.panel-body{padding:0 21px 22px}.panel-footer{border-top:1px solid var(--line);color:var(--muted);padding:13px 21px;font-size:11px}.chart-wrap{height:270px;padding:0 12px 5px}.chart-key{color:var(--muted);justify-content:center;gap:19px;padding:0 15px 18px;font-size:10px;display:flex}.chart-key span{align-items:center;gap:6px;display:inline-flex}.dot{background:var(--accent);border-radius:50%;width:7px;height:7px;display:inline-block}.goal-mini{border-top:1px solid var(--line);padding:17px 21px}.goal-title{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.goal-title strong{font-size:12px}.goal-title small{font-size:10px}.progress{background:var(--line);border-radius:4px;height:5px;margin:9px 0;overflow:hidden}.progress span{background:var(--accent);max-width:100%;height:100%;transition:width .8s var(--ease);border-radius:4px;display:block}.progress.warn span{background:var(--warning)}.goal-caption{color:var(--muted);justify-content:space-between;font-size:10px;display:flex}.insight{background:var(--accent-soft);border:1px solid var(--line);border-radius:10px;align-items:flex-start;gap:12px;margin-bottom:22px;padding:17px 20px;display:flex}.insight svg{color:var(--accent);flex-shrink:0;margin-top:2px}.insight strong{font-size:12px;display:block}.insight p{color:var(--muted);margin-top:4px;font-size:11px;line-height:1.7}.eyebrow-row{justify-content:space-between;align-items:center;margin:27px 0 15px;display:flex}.table-scroll{overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:12px}th{letter-spacing:.3px;color:var(--muted);background:var(--surface-alt);white-space:nowrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 20px;font-size:10px;font-weight:500}td{border-bottom:1px solid var(--line);vertical-align:middle;padding:14px 20px}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--surface-alt)}tbody tr.group td{background:var(--surface-alt);border-top:1px solid var(--line);border-bottom:1px solid var(--line);vertical-align:middle;padding:10px 20px}tbody tr.group td.group-label{color:var(--muted);letter-spacing:1px;text-transform:uppercase;font-size:10px;font-weight:700}tbody tr.group td.group-col{letter-spacing:.3px;color:var(--muted);white-space:nowrap;font-size:10px;font-weight:500}tbody tr.group:hover td{background:var(--surface-alt)}td small{margin-top:2px;font-size:10px;display:block}.right{text-align:right}.row-name{align-items:center;gap:10px;display:flex}.row-icon{background:var(--surface-alt);width:32px;height:32px;color:var(--muted);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.row-icon.positive{background:var(--positive-soft);color:var(--positive)}.row-icon.negative{background:var(--negative-soft);color:var(--negative)}.row-name strong{font-size:12px;font-weight:550}.row-link{color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.row-link:hover{color:var(--accent)}.badge{background:var(--surface-alt);color:var(--muted);white-space:nowrap;border-radius:5px;align-items:center;gap:5px;padding:3px 7px;font-size:10px;display:inline-flex}.badge.good{color:var(--positive);background:var(--positive-soft)}.badge.warning{color:var(--warning);background:var(--surface-alt)}.badge.accent{color:var(--accent);background:var(--accent-soft)}.toolbar{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding:15px 20px;display:flex}.search{border:1px solid var(--line);min-width:160px;max-width:340px;color:var(--muted);border-radius:6px;flex:1;align-items:center;gap:8px;padding:7px 10px;display:flex}.search input{width:100%;color:var(--ink);background:0 0;border:0;outline:none;font-size:12px}.tabs{border-bottom:1px solid var(--line);gap:20px;margin-bottom:22px;display:flex;position:relative;overflow-x:auto}.tabs button{color:var(--muted);white-space:nowrap;transition:color var(--hover) var(--ease);background:0 0;border:0;border-bottom:2px solid #0000;padding:12px 1px;font-size:12px;font-weight:600}.tabs button.active{color:var(--accent)}.tab-indicator{transform-origin:0;background:var(--accent);pointer-events:none;width:1px;height:2px;position:absolute;bottom:0;left:0}.tab-indicator.motion{transition:transform var(--move) var(--ease)}.segmented{background:var(--surface-alt);border:1px solid var(--line);border-radius:6px;gap:3px;padding:3px;display:flex}.segmented button{color:var(--muted);background:0 0;border:0;border-radius:4px;padding:5px 9px;font-size:10px}.segmented button.active{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px #00000010}.empty{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:44px 24px;display:flex}.empty-icon{background:var(--accent-soft);color:var(--accent);border-radius:14px;margin-bottom:3px;padding:13px}.empty h3{font-size:15px}.empty p{color:var(--muted);max-width:340px;font-size:12px;line-height:1.8}.goal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.goal-dev{border:1px dashed var(--line);background:var(--surface);color:var(--muted);border-radius:11px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;padding:10px 14px;font-size:12px;display:flex}.goal-dev strong{color:var(--ink);white-space:nowrap}.goal-dev span{white-space:nowrap;min-width:92px}.goal-dev input[type=range]{min-width:120px;accent-color:var(--accent);flex:1}.goal-dev .button{flex-shrink:0}.goal-card{--motif:var(--accent);background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:23px;position:relative;overflow:hidden}.goal-card[data-step="10"]{--motif:#fff;color:#fff;background:#157c68;border-color:#157c68}.goal-motif{z-index:0;pointer-events:none;width:76px;height:76px;position:absolute;top:56px;right:16px}.goal-motif span{box-sizing:border-box;display:none;position:absolute}.goal-motif span.on{background:var(--motif);border-color:var(--motif);display:block}.goal-motif .frame,.goal-motif .ring{background:0 0}.goal-motif .frame{border:2px solid var(--motif);border-radius:14px;width:58px;height:58px;top:9px;left:9px}.goal-motif .ring{border:2px solid var(--motif);border-radius:50%;width:34px;height:34px;top:21px;left:21px}.goal-motif .diamond{border-radius:2px;width:16px;height:16px;top:30px;left:30px;transform:rotate(45deg)}.goal-motif .stud{border-radius:2px;width:8px;height:8px}.goal-motif .stud.a{top:2px;left:2px}.goal-motif .stud.b{top:2px;right:2px}.goal-motif .stud.c{bottom:2px;left:2px}.goal-motif .stud.d{bottom:2px;right:2px}.goal-motif .pip{border-radius:50%;width:6px;height:6px}.goal-motif .pip.a{top:0;left:35px}.goal-motif .pip.b{bottom:0;left:35px}.goal-motif .disc{border-radius:50%;width:8px;height:8px;top:34px;left:34px}.goal-motif .frame.on,.goal-motif .ring.on{background:0 0}.goal-card>:not(.goal-motif){z-index:1;position:relative}.goal-card .row-icon{background:var(--accent-soft);color:var(--accent)}.goal-card[data-step="10"] small,.goal-card[data-step="10"] .goal-caption,.goal-card[data-step="10"] .goal-detail small{color:#ffffffc4}.goal-card[data-step="10"] h2,.goal-card[data-step="10"] .target,.goal-card[data-step="10"] .goal-caption strong,.goal-card[data-step="10"] .goal-detail strong,.goal-card[data-step="10"] .goal-detail div{color:#fff}.goal-card[data-step="10"] footer{border-top-color:#ffffff28}.goal-card[data-step="10"] .progress{background:#ffffff28}.goal-card[data-step="10"] .progress span{background:#fff}.goal-card[data-step="10"] .row-icon{color:#fff;background:#ffffff1c}.goal-card[data-step="10"] .text-button{color:#fff}.goal-card[data-step="10"] .badge:not(.warn){color:#fff;background:#ffffff1c}.goal-card[data-step="10"] .status-line{color:#ffffffd0}.goal-card[data-step="10"] .status-line.negative{color:#ffd0d4}:root[data-theme=dark] .goal-card[data-step="10"]{box-shadow:var(--shadow), inset 0 1px 0 #fff2;background:linear-gradient(135deg,#1c8f74 0%,#0e5344 100%);border-color:#1c8f74}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .goal-card[data-step="10"]{box-shadow:var(--shadow), inset 0 1px 0 #fff2;background:linear-gradient(135deg,#1c8f74 0%,#0e5344 100%);border-color:#1c8f74}}.goal-card.disabled{opacity:.65}.goal-card h2{margin:20px 0 4px;font-size:17px}.goal-card .target{letter-spacing:-.8px;margin:15px 0;font-size:25px;font-weight:650}.goal-card footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:20px;padding-top:15px;font-size:11px;display:flex}.goal-card .goal-detail{grid-template-columns:1fr 1fr;gap:12px;margin-top:18px;font-size:11px;display:grid}.goal-detail small{margin-bottom:3px;font-size:10px;display:block}.toggle{background:var(--line);border:0;border-radius:20px;flex-shrink:0;align-items:center;width:33px;height:19px;padding:2px;display:inline-flex}.toggle span{width:15px;height:15px;transition:transform var(--move) var(--ease);background:#fff;border-radius:50%;box-shadow:0 1px 2px #0002}.toggle.on{background:var(--accent)}.toggle.on span{transform:translate(14px)}.drawer-root{z-index:100;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer-backdrop{background:#08132665;position:absolute;inset:0}.drawer{background:var(--surface);will-change:transform;flex-direction:column;width:530px;max-width:100%;height:100%;display:flex;position:relative;box-shadow:-10px 0 60px #0002}.drawer>header{border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;padding:24px 26px;display:flex}.drawer>header h2{margin-top:5px;font-size:21px}.drawer form{flex-direction:column;flex:1;min-height:0;display:flex}.form-body{flex:1;padding:25px 26px;overflow-y:auto}.field{flex-direction:column;gap:7px;min-width:0;margin-bottom:17px;display:flex}.field>span{font-size:12px;font-weight:600}.field input,.field textarea{background-color:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:7px;width:100%;min-height:41px;padding:10px 11px}.field input[type=number]{appearance:textfield}.field input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.field input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.field small{font-size:11px;line-height:1.6}.field textarea{resize:vertical;min-height:85px}.form-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-row.three{grid-template-columns:repeat(3,1fr)}.form-section{border-top:1px solid var(--line);margin-top:12px;padding-top:18px}.form-section h3{margin-bottom:16px;font-size:12px}.form-footer{border-top:1px solid var(--line);background:var(--surface);flex-shrink:0;justify-content:flex-end;gap:9px;padding:17px 26px;display:flex}.form-footer .danger{margin-right:auto}.form-note{color:var(--muted);background:var(--surface-alt);border:1px solid var(--line);border-radius:7px;margin-bottom:18px;padding:12px;font-size:11px;line-height:1.8}details summary{cursor:pointer;color:var(--accent);padding:8px 0 17px;font-size:12px;font-weight:600}.error-message{color:var(--negative);background:var(--negative-soft);border:1px solid var(--line);border-radius:7px;margin:12px 0;padding:12px 15px;font-size:12px}.toast{z-index:110;background:var(--ink);color:var(--surface);border-radius:8px;align-items:center;gap:10px;padding:11px 18px;font-size:12px;display:flex;position:fixed;bottom:25px;left:calc(50% + 115px);transform:translate(-50%);box-shadow:0 8px 30px #0002}.settings-grid{grid-template-columns:1fr 1fr;align-items:start;gap:22px;display:grid}.settings-grid .panel{margin:0}.settings-grid .panel-body{padding-top:5px}.settings-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:16px 0;display:flex}.settings-row:last-child{border:0}.settings-row strong{font-size:12px}.settings-row p{color:var(--muted);margin-top:3px;font-size:11px}.settings-row .menu-select{flex-shrink:0;min-width:125px}.file-box{border:1px dashed var(--line);background:var(--surface-alt);border-radius:8px;margin-bottom:18px;padding:22px;display:block}.file-box input{max-width:100%;font-size:12px}.steps{flex-wrap:wrap;gap:7px;margin-bottom:23px;display:flex}.step{background:var(--surface-alt);color:var(--muted);border-radius:5px;padding:5px 9px;font-size:10px}.step.active{color:var(--accent);background:var(--accent-soft)}.mobile-nav,.mobile-brand,.mobile-space-select{display:none}.onboarding{background:var(--accent-soft);border:1px solid var(--line);border-radius:11px;margin-bottom:24px;padding:25px}.onboarding h2{margin-bottom:7px;font-size:18px}.onboarding p{color:var(--muted);max-width:560px;margin-bottom:16px;font-size:12px;line-height:1.8}.onboarding .actions{gap:12px}.login-layout{grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.login-story{color:#fff;background:#172e70;flex-direction:column;padding:54px 64px;display:flex;position:relative;overflow:hidden}.login-story .brand-mark{background:#ffffff16}.login-story .brand-dot{color:#9fbaff}.login-story h1{letter-spacing:-2.3px;max-width:540px;margin:90px 0 25px;font-size:clamp(36px,4vw,60px);line-height:1.1}.login-story p{color:#bac8e9;max-width:400px;font-size:15px;line-height:1.8}.login-story .story-footer{letter-spacing:.7px;color:#bac8e9;margin-top:auto;padding-top:60px;font-size:11px}.story-graphic{align-items:flex-end;gap:12px;max-width:420px;height:140px;margin:50px 0;display:flex}.story-graphic span{background:#89a9ff33;border-top:2px solid #90b2ff88;border-radius:7px 7px 0 0;flex:1}.story-graphic span:nth-child(2n){background:#89a9ff55}.login-form-side{justify-content:center;align-items:center;padding:40px;display:flex}.login-card{width:100%;max-width:370px}.login-card h2{letter-spacing:-.8px;margin:12px 0 8px;font-size:27px}.login-card>p{color:var(--muted);margin-bottom:27px;font-size:13px}.login-card .button.primary{width:100%;min-height:44px;margin-top:8px}.login-meta{justify-content:space-between;gap:12px;margin:20px 0;display:flex}.login-card .brand{display:none}.status-line{color:var(--muted);padding:12px 0;font-size:11px}.recharts-cartesian-axis-tick-value{fill:var(--muted);font-size:10px}.recharts-default-tooltip{font-size:11px;background:var(--surface-alt)!important;border:1px solid var(--line)!important;color:var(--ink)!important;border-radius:8px!important}.recharts-tooltip-label,.recharts-tooltip-item,.recharts-tooltip-item-name,.recharts-tooltip-item-separator,.recharts-tooltip-item-value{color:var(--ink)!important}@media (min-width:1600px){.content{padding-top:40px}.stat strong{font-size:30px}.chart-wrap{height:300px}}@media (max-width:1200px){.sidebar{width:205px;padding-left:12px;padding-right:12px}.workspace-main{margin-left:205px}.content{padding:26px 24px}.stats{gap:12px}.stat{padding:16px}.stat strong{font-size:23px}.dashboard-grid{grid-template-columns:1.5fr 1fr;gap:16px}.goal-grid{grid-template-columns:repeat(2,1fr)}td,th{padding-left:14px;padding-right:14px}}@media (max-width:950px){.dashboard-grid,.settings-grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.login-story{padding:40px}.login-story h1{margin-top:70px;font-size:40px}.page-heading{align-items:flex-start}.heading-actions{justify-content:flex-end}.hide-tablet{display:none}}@media (max-width:700px){body{font-size:14px}.sidebar{display:none}.workspace-main{margin-left:0}.content{padding:23px 17px 105px}.topbar{border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;gap:12px;height:61px;padding:0 17px;display:flex}.mobile-brand{display:block}.mobile-brand .brand{font-size:21px}.mobile-brand .brand-mark{border-radius:9px;width:28px;height:29px;font-size:25px}.mobile-space-select{max-width:125px;margin-left:auto;display:block}.page-heading{flex-wrap:wrap;gap:15px;margin-bottom:22px}.page-heading h1{font-size:26px}.page-heading p{max-width:280px;font-size:12px}.heading-actions{justify-content:flex-start;width:100%}.heading-actions .button.primary{margin-left:auto}.stats{gap:10px;margin-bottom:20px}.stat{padding:14px 13px}.stat strong{margin:13px 0 8px;font-size:22px}.stat-head{font-size:11px}.stat-icon{padding:4px}.stat-head svg{width:15px;height:15px}.stat small{font-size:9px}.panel{border-radius:10px;margin-bottom:17px}.panel-heading{padding:17px}.panel-heading h2{font-size:14px}.panel-body{padding-left:17px;padding-right:17px}.chart-wrap{height:235px;padding:0 3px}.dashboard-grid{gap:0}.hide-mobile{display:none!important}.mobile-nav{z-index:30;background:var(--surface);border-top:1px solid var(--line);padding:8px 10px max(10px, env(safe-area-inset-bottom));justify-content:space-around;display:flex;position:fixed;inset:auto 0 0}.mobile-nav a,.mobile-nav button{color:var(--muted);background:0 0;border:0;flex-direction:column;flex:1;align-items:center;gap:4px;min-height:44px;font-size:10px;display:flex}.mobile-nav .active{color:var(--accent)}.toolbar{gap:8px;padding:13px 14px}.toolbar .search{flex-basis:100%;max-width:100%}.toolbar .menu-select{flex:1;min-width:0;max-width:none}td,th{padding:12px 13px}td{font-size:12px}.goal-grid{grid-template-columns:1fr;gap:14px}.goal-card{padding:21px}.drawer{width:100%}.drawer>header{padding:19px 20px}.form-body{padding:22px 20px}.form-footer{padding:16px 20px max(16px, env(safe-area-inset-bottom))}.field input,.field select,.field textarea{min-height:45px;font-size:16px}.button{min-height:42px}.button.small{min-height:36px}.icon-button{min-width:40px;min-height:40px}.toast{width:max-content;max-width:90vw;bottom:87px;left:50%}.login-layout{grid-template-columns:1fr}.login-story{display:none}.login-form-side{padding:28px 24px}.login-card .brand{margin-bottom:40px;display:inline-flex}.settings-grid{gap:16px}.empty{padding:36px 20px}.table-scroll{max-width:100%}}.section-view{animation:rise var(--move) var(--ease)}.drawer-backdrop{animation:fade-in var(--move) var(--ease)}.drawer{animation:drawer-in var(--move) var(--ease)}.drawer-root.leaving .drawer-backdrop{animation:fade-out var(--move) var(--ease) forwards}.drawer-root.leaving .drawer{animation:drawer-out var(--move) var(--ease) forwards}.menu-select-list,.space-menu,.date-picker-panel{animation:drop var(--move) var(--ease)}.toast{animation:toast-in var(--move) var(--ease), fade-out var(--move) var(--ease) 4s forwards}.story-graphic span{transform-origin:bottom;animation:bar-grow .6s var(--ease) backwards;animation-delay:calc(.12s + var(--i,0) * 45ms)}@keyframes rise{0%{opacity:0;translate:0 6px}}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}@keyframes drawer-in{0%{transform:translate(100%)}}@keyframes drawer-out{to{transform:translate(100%)}}@keyframes drop{0%{opacity:0;translate:0 -4px}}@keyframes toast-in{0%{opacity:0;translate:0 8px}}@keyframes bar-grow{0%{scale:1 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.stat strong,.goal-card .target{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.goal-card{flex-direction:column;min-width:0;display:flex}.goal-card h2,.row-link strong,.goal-mini strong,.breadcrumb{overflow-wrap:anywhere}.goal-card footer{flex-wrap:wrap;gap:12px;margin-top:auto}.goal-card .goal-caption{margin-top:12px}.goal-card .status-line{margin-bottom:12px}.user-card>div{min-width:0}.user-card strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.badge.warn{color:var(--negative);background:var(--negative-soft)}.stat small,.goal-detail small,.goal-caption,.status-line,.panel-footer{font-size:12px}@media (max-width:700px){.panel-heading{flex-wrap:wrap;gap:12px}.stat small{font-size:11px}.goal-detail small{font-size:12px}.goal-caption{flex-wrap:wrap;gap:5px}.stat strong{font-size:clamp(17px,5vw,22px)}}@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-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
