@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}}}@layer theme{:root,:host{--font-sans:-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-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--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,-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}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.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,)}.resize{resize:both}}:root{--bg:#f5f6f3;--surface:#fff;--surface-soft:#f7f8f5;--ink:#26362e;--muted:#7c857f;--line:#e7eae5;--green:#355f4c;--green-soft:#eaf0eb;--gold:#b48d56;--shadow:0 3px 16px #23392d03;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#141b18;--surface:#1e2722;--surface-soft:#26312a;--ink:#e6ede7;--muted:#a4b2a8;--line:#334139;--green:#a1c8af;--green-soft:#2a4033;--gold:#d0ad7a;--shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{font-size:16px}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}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{cursor:default;opacity:.55}button{border:0}a{color:inherit;text-decoration:none}:focus-visible{outline-offset:3px;outline:3px solid #8dae98}h1,h2,h3,p{margin:0}h2{letter-spacing:-.025em;font-size:1.04rem;font-weight:650}p{line-height:1.65}button{color:inherit}svg{flex-shrink:0}.muted{color:var(--muted);font-size:.875rem}.positive{color:var(--green)}.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}.skip-link{background:var(--surface);z-index:100;padding:16px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:16px}.sidebar{background:var(--surface);border-right:1px solid var(--line);z-index:30;flex-direction:column;width:224px;padding:38px 20px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{letter-spacing:-.04em;white-space:nowrap;align-items:center;gap:11px;font-size:1.05rem;font-weight:700;display:flex}.brand-mark{color:#fff;background:#315c47;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.brand small{color:var(--muted);letter-spacing:0;margin-top:5px;font-size:.69rem;font-weight:400;display:block}.nav-caption{letter-spacing:.12em;color:var(--muted);margin:54px 14px 19px;font-size:.65rem;font-weight:600}.sidebar nav{gap:7px;margin-top:36px;display:grid}.nav-link{color:var(--muted);border-radius:9px;align-items:center;gap:12px;padding:13px 14px;font-size:.875rem;transition:background .15s;display:flex}.nav-link:hover{background:var(--surface-soft)}.nav-link.active{background:var(--green-soft);color:var(--green);font-weight:650}.nav-active-dot{background:currentColor;border-radius:50%;width:5px;height:5px;margin-left:auto}.sidebar-bottom{margin-top:auto;padding-top:40px}.privacy{background:var(--surface-soft);border:1px solid var(--line);border-radius:12px;padding:18px}.privacy svg{color:var(--green);margin-bottom:12px}.privacy strong{font-size:.8rem;display:block}.privacy p{color:var(--muted);margin-top:7px;font-size:.75rem;line-height:1.6}.profile-link{align-items:center;gap:11px;padding:23px 3px 0;display:flex}.avatar{color:#7b684c;background:#e8dfd0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.8rem;font-weight:650;display:inline-flex}.profile-link strong{font-size:.8rem;display:block}.profile-link small{color:var(--muted);margin-top:2px;font-size:.72rem;display:block}.profile-link>svg{color:var(--muted);margin-left:auto}.workspace{margin-left:224px}.topbar{border-bottom:1px solid var(--line);background:var(--bg);justify-content:space-between;align-items:center;height:76px;padding:0 42px;display:flex}.topbar-label{align-items:center;gap:13px;font-size:.875rem;font-weight:550;display:flex}.private-badge{color:var(--muted);border:1px solid var(--line);border-radius:20px;align-items:center;gap:4px;padding:5px 9px;font-size:.67rem;font-weight:400;display:flex}.top-avatar{width:31px;height:31px}.mini-logo,.menu-button{display:none!important}main#main-content{max-width:1510px;margin:auto;padding:35px 42px 0}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:29px;display:flex}.eyebrow{letter-spacing:.16em;color:var(--muted);margin-bottom:9px;font-size:.61rem;font-weight:600}h1{letter-spacing:-.055em;font-size:2rem;font-weight:600;line-height:1.3}.heading-dot{color:#88a18e}.page-subtitle{color:var(--muted);margin-top:7px;font-size:.84rem}.button{border-radius:8px;justify-content:center;align-items:center;gap:9px;min-height:44px;padding:11px 17px;font-size:.8rem;font-weight:550;transition:filter .15s,transform .15s;display:inline-flex}.button:hover{filter:brightness(.96)}.button:active{transform:translateY(1px)}.primary{color:#fff;background:#355f4c;box-shadow:0 2px 3px #233c2510}.secondary{border:1px solid var(--line);background:var(--surface);color:var(--ink)}.danger{color:#fff;background:#a94e4e}.full{width:100%}.icon-button{width:40px;min-width:40px;height:40px;color:var(--muted);background:0 0;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover{background:var(--surface-soft);color:var(--ink)}.view-controls{justify-content:space-between;align-items:center;gap:12px;margin-bottom:23px;display:flex}.scope-switch{border:1px solid var(--line);background:#eceedf44;border-radius:9px;gap:2px;padding:4px;display:flex}.scope-switch button{color:var(--muted);background:0 0;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:36px;padding:8px 18px;font-size:.8rem;display:flex}.scope-switch .selected{color:var(--green);background:var(--surface);font-weight:650;box-shadow:0 2px 5px #11231a0c}.month-picker{align-items:center;gap:8px;display:flex}.month-picker label{text-align:center;text-transform:capitalize;min-width:128px;font-size:.82rem;font-weight:550;position:relative}.month-picker input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.month-picker label:focus-within{outline:2px solid #8dae98}.month-picker input::-webkit-calendar-picker-indicator{cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.page-content{gap:23px;animation:.25s appear;display:grid}.panel{background:var(--surface);border:1px solid var(--line);min-width:0;box-shadow:var(--shadow);border-radius:13px;padding:25px}.section-top{justify-content:space-between;align-items:center;gap:14px;margin-bottom:23px;display:flex}.section-top p{margin-top:5px}.section-top>.muted{margin:0}.summary-grid{grid-template-columns:1.12fr 1.05fr .95fr;gap:18px;display:grid}.available-card{color:#fff;background:#355a47;border-radius:13px;flex-direction:column;min-width:0;padding:25px;display:flex}.available-label{color:#e1e9e3;justify-content:space-between;align-items:center;font-size:.87rem;display:flex}.available-icon{border:1px solid #ffffff25;border-radius:9px;justify-content:center;align-items:center;width:33px;height:33px;display:flex}.available-amount{letter-spacing:-.055em;font-variant-numeric:tabular-nums;white-space:nowrap;margin:18px 0 12px;font-size:2.5rem;font-weight:500;line-height:1.2;display:block}.available-bottom{color:#c1d1c5;flex-wrap:wrap;align-items:center;gap:8px;font-size:.61rem;display:flex}.available-change{color:#f0f4e8;background:#ffffff15;border-radius:4px;align-items:center;gap:4px;padding:4px 6px;font-size:.7rem;font-weight:500;display:flex}.available-rule{background:#ffffff20;height:1px;margin:22px 0 15px}.available-foot{color:#c4d4c9;justify-content:space-between;align-items:center;gap:10px;font-size:.74rem;line-height:1.65;display:flex}.available-foot strong{color:#edf2eb;font-weight:400}.available-foot button{color:#ecf2ee;background:#ffffff17;border-radius:50%;justify-content:center;align-items:center;width:35px;height:35px;display:flex}.metrics-stack{gap:12px;display:grid}.metric{align-items:center;gap:12px;padding:17px;display:flex}.metric-icon{border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.green{color:#66856c;background:#edf3ee}.gold{color:#b59462;background:#f7f1e8}.blue{color:#8392a7;background:#eef0f4}.metric-title{color:var(--muted);font-size:.75rem;display:block}.metric strong{letter-spacing:-.035em;white-space:nowrap;margin-top:4px;font-size:1.38rem;font-weight:600;display:block}.metric-change{color:var(--muted);text-align:right;white-space:nowrap;margin-left:auto;font-size:.65rem}.metric-change small{margin-top:6px;font-size:.56rem;display:block}.card-kicker{letter-spacing:.13em;color:var(--muted);font-size:.6rem;font-weight:600}.savings-preview .section-top{margin-bottom:22px}.savings-preview h2{font-size:1.04rem}.savings-preview p{margin-top:6px;font-size:.72rem}.savings-total{letter-spacing:-.04em;margin-top:8px;font-size:1.9rem;font-weight:550;display:block}.savings-mini{align-items:center;gap:13px;margin:18px 0;display:flex}.savings-rate{color:var(--green);background:var(--green-soft);border-radius:8px;padding:9px 12px;font-size:1.3rem;font-weight:600}.savings-rate small{font-size:.7rem}.savings-mini>span:last-child{color:var(--muted);font-size:.67rem;line-height:1.6}.text-link{color:var(--green);background:0 0;align-items:center;gap:8px;min-height:36px;font-size:.77rem;font-weight:550;display:inline-flex}.text-link:hover{text-decoration:underline}.dashboard-grid{grid-template-columns:1.18fr 1fr;gap:21px;display:grid}.small-tag{border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:6px;padding:5px 9px;font-size:.67rem}.distribution{align-items:center;gap:35px;min-height:212px;padding:4px 0 9px;display:flex}.donut{border-radius:50%;flex-shrink:0;width:178px;height:178px;padding:23px;transform:rotate(-90deg)}.donut>div{background:var(--surface);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex;transform:rotate(90deg)}.donut span,.donut small{color:var(--muted);font-size:.65rem}.donut strong{letter-spacing:-.045em;margin:5px 0;font-size:1.4rem;font-weight:600}.distribution-legend{flex:1;gap:12px;display:grid}.distribution-legend>div{align-items:center;gap:9px;font-size:.74rem;display:flex}.legend-dot{border-radius:2px;flex-shrink:0;width:7px;height:7px}.distribution-legend strong{margin-left:auto;font-size:.75rem;font-weight:550}.distribution-legend small{color:var(--muted);font-weight:400}.progress-track{background:var(--line);border-radius:6px;height:6px;overflow:hidden}.progress-track>div{background:#6c8a73;border-radius:6px;height:100%;transition:width .25s}.watch .progress-track>div{background:#c0a06d}.critical .progress-track>div{background:#bf875d}.exceeded .progress-track>div{background:#b76a66}.panel-bottom-link{color:var(--muted);border-top:1px solid var(--line);justify-content:center;align-items:center;gap:8px;margin:22px -25px -12px;padding:13px 0 0;font-size:.73rem;display:flex}.transaction-row{border-bottom:1px solid var(--line);align-items:center;min-width:0;display:flex}.transaction-row:last-child{border:0}.transaction-main{text-align:left;background:0 0;align-items:center;gap:12px;width:100%;min-width:0;padding:13px 0;display:flex}.transaction-main:hover .transaction-description strong{color:var(--green)}.category-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.transaction-description{flex:1;min-width:0}.transaction-description strong{text-overflow:ellipsis;white-space:nowrap;font-size:.79rem;font-weight:550;display:block;overflow:hidden}.transaction-description small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:.67rem;display:block;overflow:hidden}.transaction-date{color:var(--muted);margin:0 4px;font-size:.68rem}.transaction-amount{text-align:right;flex-shrink:0}.transaction-amount strong{white-space:nowrap;font-size:.79rem;font-weight:600}.transaction-amount small{display:none}.chart{width:100%;min-width:0;height:222px}.chart-legend{justify-content:center;gap:17px;margin-top:8px;display:flex}.chart-legend span{color:var(--muted);align-items:center;gap:5px;font-size:.65rem;display:flex}.chart-legend i{border-radius:2px;width:6px;height:6px}.page-footer{color:var(--muted);border-top:1px solid var(--line);align-items:center;gap:7px;margin:24px 0 0;padding:20px 0;font-size:.63rem;display:flex}.page-footer span{margin-left:auto}.mobile-nav{display:none}.empty{text-align:center;color:var(--muted);flex-direction:column;align-items:center;gap:12px;padding:30px 10px;font-size:.9rem;display:flex}.empty-icon{background:var(--surface-soft);border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;display:flex}.loading-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.loading-grid>div{background:var(--line);border-radius:12px;height:260px;animation:1.5s infinite pulse}.loading-grid>div:last-child{grid-column:1/-1;height:350px}.loading-state{text-align:center;color:var(--muted);padding:50px}.toast{z-index:80;color:#fff;background:#294e3a;border-radius:10px;align-items:center;gap:10px;max-width:90vw;padding:14px 22px;font-size:.9rem;display:flex;position:fixed;bottom:28px;left:calc(50% + 112px);transform:translate(-50%);box-shadow:0 5px 30px #0002}.operations-totals{align-items:center;gap:40px;padding:8px 0;display:flex}.operations-totals>div>span{color:var(--muted);margin-bottom:8px;font-size:.875rem;display:block}.operations-totals strong{letter-spacing:-.035em;font-size:1.5rem;font-weight:550}.operations-totals>.button{margin-left:auto}.filter-bar{border-bottom:1px solid var(--line);gap:12px;padding-bottom:23px;display:flex}.filter-bar>select{width:auto;max-width:210px;font-size:.85rem}.search-field{background:var(--surface-soft);border:1px solid var(--line);color:var(--muted);border-radius:8px;flex:1;align-items:center;gap:9px;min-width:0;padding:0 12px;display:flex}.search-field input{width:100%;box-shadow:none;background:0 0;border:0;padding:11px 0}.list-caption{color:var(--muted);justify-content:space-between;margin-top:20px;padding-bottom:7px;font-size:.75rem;display:flex}.pagination{justify-content:center;align-items:center;gap:15px;padding-top:20px;font-size:.875rem;display:flex}.resource-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.row-actions{flex-shrink:0;align-items:center;gap:0;margin-left:auto;display:flex}.savings-account h2{margin-bottom:24px}.key-good{background:#6c8a73}.key-watch{background:#c0a06d}.key-critical{background:#bf875d}.key-exceeded{background:#b76a66}.savings-header{grid-template-columns:1fr 1.35fr;gap:20px;display:grid}.savings-header .card-kicker{color:#c0d3c6;margin-top:15px}.savings-header .available-amount{margin-top:25px}.savings-header .available-card>p{color:#bfd1c4;font-size:.8rem}.savings-capital-foot{border-top:1px solid #ffffff20;gap:28px;margin-top:auto;padding-top:22px;display:flex}.savings-capital-foot>span{color:#c0d3c6;font-size:.7rem}.savings-capital-foot strong{color:#fff;margin-top:7px;font-size:1rem;font-weight:550;display:block}.savings-header .section-top{margin-bottom:12px}.account-balance{letter-spacing:-.04em;margin-bottom:20px;font-size:1.7rem;font-weight:550;display:block}.savings-account p{margin-top:12px}.savings-account small{margin-top:20px;font-size:.75rem;display:block}.settings-grid{grid-template-columns:1fr 1fr;gap:22px;display:grid}.settings-stack{gap:22px;display:grid}.settings-form{gap:18px;margin-top:20px;display:grid}.settings-form>.button{justify-self:start}.theme-switch{gap:10px;margin-top:22px;display:flex}.theme-switch button{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:9px;flex-direction:column;flex:1;align-items:center;gap:10px;padding:15px 10px;font-size:.8rem;display:flex}.theme-switch button.selected{border-color:var(--green);color:var(--green);background:var(--green-soft)}.category-grid{grid-template-columns:1fr 1fr;gap:16px;margin-top:22px;display:grid}.category-group{border:1px solid var(--line);border-radius:10px;padding:8px 12px}.category-setting{align-items:center;gap:10px;display:flex}.category-setting strong{font-size:.875rem;font-weight:550}.subcategory{color:var(--muted);align-items:center;gap:10px;padding-left:48px;font-size:.875rem;display:flex}.account-setting{align-items:center;gap:10px;padding-bottom:18px;display:flex}.account-setting strong{font-size:.875rem;font-weight:500}.logout-button{color:#a6645d;justify-self:start}.settings-types{max-width:460px}input,select,textarea{border:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);background:var(--surface);outline-offset:2px;border-radius:8px;min-width:0;padding:11px 12px;font-size:1rem}input::placeholder{color:var(--muted);opacity:.7}input[type=color]{padding:5px}textarea{resize:vertical}.field{align-content:start;gap:8px;min-width:0;font-size:.875rem;display:grid}.field>span{font-weight:500}.field small{font-size:.75rem;font-weight:400;line-height:1.5}.form-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.modal{border:1px solid var(--line);background:var(--surface);width:min(520px,100% - 32px);color:var(--ink);overscroll-behavior:contain;border-radius:18px;max-height:90dvh;margin:auto;padding:27px;overflow-y:auto;box-shadow:0 20px 90px #0003}.modal::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#13241e73}.modal-head{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:23px;display:flex}.modal-head h2{font-size:1.25rem}.modal-head p{margin-top:8px;font-size:.8rem}.modal-head .icon-button{margin:-9px -10px 0 0}.editor-form{gap:18px;display:grid}.type-switch{background:var(--surface-soft);border-radius:9px;gap:3px;padding:4px;display:flex}.type-switch button{min-height:38px;color:var(--muted);background:0 0;border-radius:6px;flex:1;padding:8px 6px;font-size:.8rem}.type-switch .selected{background:var(--surface);color:var(--green);font-weight:550;box-shadow:0 2px 5px #00000008}.amount-field{text-align:center;padding:8px 0}.amount-field>span{color:var(--muted);font-size:.875rem}.amount-field>div{justify-content:center;align-items:center;display:flex}.amount-field input{text-align:right;letter-spacing:-.05em;background:0 0;border:0;width:75%;padding:8px 10px;font-size:2.7rem;font-weight:550}.amount-field>div>span{color:var(--muted);font-size:2rem}.form-hint{color:var(--muted);align-items:center;gap:9px;padding:5px 0;font-size:.8rem;line-height:1.6;display:flex}.form-details{color:var(--muted);font-size:.875rem}.form-details summary{cursor:pointer;min-height:35px;padding-top:7px}.form-details .field{color:var(--ink);margin-top:12px}.form-error{color:#ac5555;background:#ad585810;border:1px solid #bd62622a;border-radius:9px;padding:12px 15px;font-size:.875rem}.modal-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.password-field{border:1px solid var(--line);border-radius:8px;align-items:center;display:flex}.password-field input{background:0 0;border:0}.password-field .icon-button{margin-right:4px}.delete-button:hover{color:#a75a52}.login-page{grid-template-columns:1fr 1fr;min-height:100dvh;display:grid}.login-story{color:#f3f6ee;background:#315540;flex-direction:column;justify-content:space-between;padding:50px 64px;display:flex}.login-story .brand{font-size:1.25rem}.login-story .brand-mark{background:#ffffff18}.login-story h1{letter-spacing:-.06em;margin:23px 0;font-size:clamp(2.8rem,4.7vw,5.5rem);font-weight:450;line-height:1.12}.login-story h1 em{color:#bacaaf;font-style:normal}.login-story .eyebrow{color:#c4d4bd;font-size:.75rem}.login-story p{color:#c4d4bd;font-size:.95rem}.login-security{color:#c4d4bd;align-items:center;gap:9px;font-size:.8rem;display:flex}.login-content{justify-content:center;align-items:center;padding:40px;display:flex}.login-card{width:100%;max-width:370px}.login-card h2{letter-spacing:-.055em;margin-bottom:12px;font-size:2rem}.login-card .eyebrow{margin-bottom:17px}.login-card form{gap:23px;margin-top:38px;display:grid}.login-card .button{min-height:49px;margin-top:7px;font-size:.9rem}.login-help{color:var(--muted);text-align:center;margin-top:30px;font-size:.75rem}.mobile-brand{display:none}.error-page{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:25px;min-height:100dvh;padding:30px;display:flex}@keyframes appear{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{50%{opacity:.5}}@media (min-width:1600px){main#main-content{padding:40px 55px 0}.summary-grid{gap:24px}.available-card{padding:30px}.available-amount{font-size:3.2rem}.metric{padding:23px}.metric strong{font-size:1.7rem}.metric-title{font-size:.875rem}.metric-change{font-size:.75rem}.metric-change small{font-size:.65rem}.panel{padding:30px}.distribution{gap:50px}.donut{width:205px;height:205px;padding:26px}.distribution-legend>div,.transaction-description strong,.transaction-amount strong{font-size:.875rem}.transaction-description small,.transaction-date{font-size:.75rem}.chart{height:250px}.panel-bottom-link{margin-left:-30px;margin-right:-30px}}@media (max-width:1250px){.sidebar{width:205px;padding-left:14px;padding-right:14px}.workspace{margin-left:205px}.topbar{padding:0 27px}main#main-content{padding:30px 27px 0}.summary-grid{grid-template-columns:1fr 1fr}.savings-preview{grid-column:1/-1;grid-template-columns:1.2fr 1fr 1fr;align-items:center;gap:6px 15px;display:grid}.savings-preview .section-top{grid-column:1;margin:0}.savings-preview .section-top>svg{display:none}.savings-preview h2{grid-area:2/1}.savings-preview>p{grid-area:3/1;margin:0}.savings-total{grid-area:1/2/4;margin:0}.savings-mini{display:none}.savings-preview .text-link{grid-area:1/3/4;justify-content:flex-end}.distribution{flex-wrap:wrap;justify-content:center;gap:20px}.distribution-legend{min-width:140px}.donut{width:156px;height:156px;padding:20px}.dashboard-grid{grid-template-columns:1.1fr 1fr}.panel{padding:22px}.transaction-date{display:none}.transaction-amount small{color:var(--muted);margin-top:5px;font-size:.65rem;display:block}.resource-grid{grid-template-columns:1fr 1fr}.toast{left:calc(50% + 102px)}.category-grid{grid-template-columns:1fr}.filter-bar{flex-wrap:wrap}.search-field{flex-basis:100%}.filter-bar>select{flex:1;max-width:none}}@media (max-width:950px) and (min-width:701px){.sidebar{width:180px}.workspace{margin-left:180px}.brand{gap:7px;font-size:.85rem}.brand small{font-size:.6rem}.brand-mark{width:32px;height:32px}.nav-link{gap:8px;padding:13px 8px;font-size:.8rem}.nav-caption{font-size:.6rem}.privacy{padding:12px}.page-heading{align-items:flex-start}.desktop-add{padding:11px;font-size:0}.desktop-add svg{width:20px}.dashboard-grid{grid-template-columns:1fr}.metric-change{display:none}.available-amount{font-size:2.2rem}.available-card{padding:20px}.metrics-stack{gap:9px}.metric{padding:13px}.savings-preview{grid-template-columns:1fr 1fr}.savings-preview>.text-link{display:none}.distribution{gap:50px}.donut{width:180px;height:180px}.distribution-legend{max-width:260px}.settings-grid,.savings-header{grid-template-columns:1fr}.savings-capital-foot{margin-top:25px}}@media (max-width:700px){.sidebar{display:none}.sidebar-open{width:255px;display:flex;box-shadow:12px 0 48px #10261a30}.workspace{margin-left:0}.topbar{height:66px;padding:0 22px}.topbar-label{gap:9px;font-size:.875rem}.mini-logo{color:var(--green);display:inline-flex!important}.private-badge{display:none}.top-avatar{margin-left:auto;margin-right:4px}.menu-button{width:35px;min-width:35px;display:inline-flex!important}main#main-content{padding:25px 20px 85px}.page-heading{margin-bottom:23px}.eyebrow{letter-spacing:.11em;margin-bottom:8px;font-size:.6rem}h1{font-size:1.85rem}.page-subtitle{margin-top:6px;font-size:.82rem}.desktop-add{display:none}.view-controls{gap:10px;margin-bottom:19px}.scope-switch button{gap:5px;min-height:37px;padding:8px 10px;font-size:.8rem}.month-picker{gap:0}.month-picker label{min-width:105px;font-size:.77rem}.month-picker .icon-button{width:26px;min-width:26px}.summary-grid{flex-direction:column;gap:13px;display:flex}.available-card{padding:23px}.available-label{font-size:.9rem}.available-amount{margin:13px 0 12px;font-size:2.6rem}.available-bottom{font-size:.69rem}.available-rule{margin:17px 0 13px}.available-foot{font-size:.75rem}.available-foot br{display:none}.available-foot strong{margin-left:4px}.available-icon{width:31px;height:31px}.metrics-stack{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.metric{border-radius:11px;flex-direction:column;align-items:flex-start;gap:10px;padding:14px 12px;display:flex}.metric-icon{border-radius:7px;width:28px;height:28px}.metric-icon svg{width:16px}.metric-title{white-space:nowrap;font-size:.76rem}.metric strong{margin-top:7px;font-size:1.16rem}.metric-change{display:none}.savings-preview{grid-template-columns:1fr auto;gap:3px 12px;padding:17px 18px;display:grid}.savings-preview .section-top,.savings-preview>p{display:none}.savings-preview h2{grid-area:1/1;font-size:.84rem}.savings-preview .savings-total{grid-area:2/1;font-size:1.3rem}.savings-preview .text-link{grid-area:1/2/3;font-size:.74rem}.page-content{gap:18px}.dashboard-grid{grid-template-columns:1fr;gap:18px}.panel{border-radius:12px;padding:21px}.section-top{gap:10px;margin-bottom:20px}.section-top h2{font-size:1rem}.section-top p{font-size:.78rem}.distribution{flex-wrap:nowrap;gap:24px;min-height:175px}.donut{width:150px;height:150px;padding:20px}.donut strong{font-size:1.2rem}.distribution-legend{gap:11px;min-width:0}.distribution-legend>div{gap:7px;font-size:.72rem}.distribution-legend strong{font-size:.72rem}.panel-bottom-link{margin-left:-21px;margin-right:-21px}.transaction-main{gap:10px;padding:14px 0}.transaction-description strong{font-size:.86rem}.transaction-description small{font-size:.74rem}.transaction-amount strong{font-size:.86rem}.transaction-amount small{font-size:.68rem}.transaction-date{display:none}.transaction-row .category-icon{width:35px;height:35px}.chart{height:205px}.mobile-nav{z-index:40;background:var(--surface);border-top:1px solid var(--line);padding:9px 9px calc(9px + env(safe-area-inset-bottom));grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;display:grid;position:fixed;inset:auto 0 0;box-shadow:0 -2px 15px #21382b04}.mobile-nav-item{display:contents}.mobile-nav a{color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:45px;font-size:.63rem;display:flex}.mobile-nav a.active{color:var(--green)}.mobile-plus{color:#fff;background:#355f4c;border-radius:15px;justify-content:center;place-self:center;align-items:center;width:47px;height:47px;display:flex;box-shadow:0 3px 8px #315e4933}.page-footer{margin-top:17px;font-size:.63rem}.page-footer span{display:none}.toast{left:50%;bottom:calc(85px + env(safe-area-inset-bottom));width:max-content;max-width:calc(100% - 32px);font-size:.85rem}.operations-totals{flex-wrap:wrap;gap:20px}.operations-totals>div{flex:1}.operations-totals>div>span{font-size:.76rem}.operations-totals strong{font-size:1.35rem}.operations-totals>.button{min-height:40px;padding:8px 12px;font-size:.75rem}.filter-bar{gap:9px}.filter-bar>select{width:calc(50% - 5px);padding:10px 6px;font-size:.78rem}.search-field input{font-size:1rem}.transaction-row>.delete-button{width:30px;min-width:30px}.resource-grid{grid-template-columns:1fr;gap:15px}.page-content>.section-top{flex-wrap:wrap;margin:0}.savings-header{grid-template-columns:1fr}.savings-header .available-amount{font-size:2.4rem}.savings-capital-foot{margin-top:25px}.savings-header .available-card{min-height:245px}.savings-header .card-kicker{font-size:.66rem}.settings-grid{grid-template-columns:1fr;gap:18px}.settings-stack{gap:18px}.category-grid{grid-template-columns:1fr}.category-setting strong{font-size:.85rem}.category-group{padding:8px}.subcategory{padding-left:42px}.row-actions .icon-button{width:35px;min-width:35px;height:44px}.form-grid{gap:10px}.modal{padding:24px 20px calc(24px + env(safe-area-inset-bottom));border-bottom:0;border-radius:20px 20px 0 0;width:100%;max-width:100%;max-height:94dvh;margin:auto 0 0}.modal-head h2{font-size:1.2rem}.field{font-size:.85rem}.editor-form{gap:18px}.type-switch button{min-height:41px}.amount-field input{font-size:2.5rem}.login-page{min-height:100dvh;display:block}.login-story{display:none}.login-content{min-height:100dvh;padding:35px 28px}.mobile-brand{border-radius:15px;width:48px;height:48px;margin-bottom:43px;display:flex}.login-card h2{font-size:1.9rem}.login-card .eyebrow{font-size:.64rem}.login-card form{margin-top:32px}.loading-grid{grid-template-columns:1fr}.loading-grid>div{height:230px}.loading-grid>div:nth-child(2){height:115px}}@media (max-width:370px){main#main-content{padding-left:14px;padding-right:14px}.scope-switch button{padding:8px 7px}.scope-switch svg{display:none}.month-picker label{min-width:100px}.panel{padding:17px}.distribution{gap:16px}.donut{width:129px;height:129px;padding:17px}.donut strong{font-size:1rem}.distribution-legend>div{font-size:.65rem}.metric{padding:13px 9px}.metric-title{font-size:.69rem}.metric strong{font-size:1.07rem}.available-amount{font-size:2.2rem}.category-setting{gap:6px}.category-setting strong{font-size:.8rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.eyebrow,.nav-caption,.card-kicker{letter-spacing:.09em;font-size:.75rem}.brand small,.private-badge,.privacy p,.profile-link small,.metric-change,.metric-change small,.available-bottom,.available-change,.available-foot,.savings-mini>span:last-child,.small-tag,.donut span,.donut small,.chart-legend span,.page-footer{font-size:.75rem}.metric-title,.transaction-description strong,.transaction-amount strong,.distribution-legend>div,.distribution-legend strong,.text-link,.button,.scope-switch button,.month-picker label,.panel-bottom-link{font-size:.875rem}.transaction-description small,.transaction-date,.transaction-amount small,.savings-preview p{font-size:.75rem}.metric-change small{white-space:normal;max-width:76px;font-size:.75rem;line-height:1.4}@media (max-width:1250px){.metric-change{display:none}}@media (max-width:700px){.eyebrow{letter-spacing:.04em;font-size:.75rem}.scope-switch button{min-height:40px;padding:8px}.month-picker label{font-size:.8rem}.month-picker .icon-button{width:30px;min-width:30px;height:44px}.metric-title{font-size:.875rem}.metric strong{font-size:1.125rem}.available-bottom,.available-foot{font-size:.75rem}.available-foot br{display:block}.available-foot strong{margin-left:0}.savings-preview p,.mobile-nav a{font-size:.75rem}.distribution{gap:20px}.distribution-legend>div,.distribution-legend strong{font-size:.75rem}.transaction-description strong,.transaction-amount strong,.text-link,.button,.page-subtitle{font-size:.875rem}}@media (max-width:370px){.metric-title,.scope-switch button{font-size:.8rem}.month-picker label{font-size:.75rem}.distribution{gap:15px}.donut{width:120px;height:120px;padding:16px}.distribution-legend>div{font-size:.75rem}.savings-preview .text-link{text-align:right;max-width:110px}}@media (max-width:700px){.view-controls{gap:8px}.scope-switch button svg{display:none}.month-picker .icon-button{width:28px;min-width:28px}.distribution{grid-template-columns:minmax(110px,44%) minmax(0,1fr);gap:16px;display:grid}.donut{aspect-ratio:1;width:100%;max-width:150px;height:auto;padding:18px}.distribution-legend>div{min-width:0}.distribution-legend>div>span:nth-child(2){overflow-wrap:anywhere;min-width:0}.distribution-legend strong{white-space:nowrap}.available-amount{overflow-wrap:anywhere;white-space:normal}.metrics-stack{min-width:0}.savings-preview .text-link{font-size:.8rem}}.select-trigger{border:1px solid var(--line);background:var(--surface);width:100%;min-width:0;max-width:100%;min-height:46px;color:var(--ink);text-align:left;border-radius:13px;justify-content:space-between;align-items:center;gap:12px;padding:11px 14px;font-size:14px;transition:border-color .16s,background .16s,box-shadow .16s;display:flex}.select-trigger>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.select-trigger:hover{background:var(--surface-soft)}.select-trigger[data-state=open]{border-color:var(--green);box-shadow:0 0 0 3px var(--green-soft)}.select-content{z-index:100;border:1px solid var(--line);background:var(--surface);color:var(--ink);min-width:var(--radix-select-trigger-width);max-width:calc(100vw - 24px);max-height:min(340px, var(--radix-select-content-available-height));border-radius:15px;padding:5px;animation:.14s ease-out menu-in;overflow:hidden;box-shadow:0 14px 42px #16281e24}.select-viewport{padding:2px}.select-item{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:10px;outline:none;justify-content:space-between;align-items:center;gap:18px;min-height:43px;padding:10px 12px;font-size:14px;display:flex}.select-item[data-highlighted]{background:var(--green-soft)}.select-item[data-state=checked]{color:var(--green);font-weight:600}.select-item[data-disabled]{opacity:.45;pointer-events:none}.select-scroll{justify-content:center;padding:4px;display:flex}.wallet-switch{min-width:210px;max-width:340px;font-weight:600}.quick-category{border:1px solid var(--line);background:var(--surface-soft);border-radius:15px;padding:16px;animation:.16s ease-out menu-in}.avatar{flex-shrink:0;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%;display:block}.avatar-large{width:64px;height:64px;font-size:24px}.avatar-settings{flex-wrap:wrap;align-items:center;gap:16px;margin:20px 0;display:flex}.avatar-settings>div{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.avatar-settings label{cursor:pointer;position:relative}.avatar-settings input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.avatar-settings label:focus-within{outline-offset:3px;outline:3px solid #8dae98}.member-list{margin-top:18px}.member-row,.invitation-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:14px 0;display:flex}.member-row>div,.invitation-row>div:first-child{flex:1;min-width:0}.member-row small,.invitation-row small{color:var(--muted);overflow-wrap:anywhere;margin-top:3px;font-size:12px;display:block}.member-row strong{font-size:14px}.wallet-caption{color:var(--muted);margin:12px 0;font-size:13px}.invite-form{margin-top:20px}.invitations{margin-bottom:22px}.text-button{color:var(--green);text-underline-offset:3px;background:0 0;min-height:36px;padding:4px;font-size:13px;text-decoration:underline}.section-transition,.modal[open]{animation:.18s ease-out section-in}.modal[open]::backdrop{animation:.18s ease-out backdrop-in}.button,.nav-link,.transaction-row,.savings-card{transition:background .16s,border-color .16s,box-shadow .16s,transform .16s}@keyframes menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes section-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}@media (max-width:640px){.wallet-switch{flex:1;min-width:0;max-width:100%}.view-controls{flex-wrap:wrap}.select-trigger,.select-item{min-height:48px;font-size:16px}.invitation-row{flex-wrap:wrap}.invitation-row>div:first-child{flex-basis:100%}.invitations .row-actions{justify-content:flex-end;width:100%}.quick-category .modal-actions{flex-wrap:wrap}.quick-category .button{flex:1}.avatar-settings{gap:12px}.wallet-settings .section-top .button{padding:9px 12px}}@media (prefers-reduced-motion:reduce){.section-transition,.modal[open],.modal[open]::backdrop,.select-content,.quick-category{animation:none}.button,.nav-link,.transaction-row,.savings-card,.select-trigger{transition:none}}@media (max-width:640px){.form-grid:has([aria-label=Source]){grid-template-columns:minmax(0,1fr)}}.dashboard-toolbar,.operations-actions,.widget-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.operations-actions{justify-content:flex-start}.dashboard-widgets{grid-template-columns:repeat(6,minmax(0,1fr));gap:20px;display:grid}.widget{min-width:0}.widget-small{grid-column:span 2;min-height:155px}.widget-wide{grid-column:span 3}.widget-value{letter-spacing:-.045em;overflow-wrap:anywhere;margin:16px 0;font-size:clamp(1.6rem,2.4vw,2.5rem);font-weight:550;display:block}.widget-small .text-link{font-size:.8rem}.widget-wide .transaction-date{display:none}.widget-actions{margin-top:20px;font-size:.82rem}.widget-list{gap:8px;margin-bottom:24px;display:grid}.widget-setting{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding:8px 0;display:flex}.check-row{align-items:center;gap:10px;font-size:.83rem;line-height:1.5;display:flex}.check-row input[type=checkbox]{width:18px;min-width:18px;height:18px;accent-color:var(--green);margin:0}.widget .distribution{flex-wrap:wrap;justify-content:center;gap:24px;display:flex}.donut-chart{aspect-ratio:1;flex:none;width:200px;max-width:100%;height:auto;position:relative}.donut-center{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.donut-center strong{letter-spacing:-.035em;margin:4px 0;font-size:1.4rem;font-weight:550}.donut-center span,.donut-center small{color:var(--muted);font-size:.7rem}.distribution-legend{min-width:155px}.modal-wide{width:min(840px,100% - 32px)}.batch-form,.batch-rows,.batch-row{gap:16px;min-width:0;display:grid}.batch-row{border:1px solid var(--line);background:var(--surface-soft);border-radius:12px;margin:0;padding:20px;position:relative}.batch-row-actions{gap:6px;display:flex}.batch-submit{background:var(--surface);padding:4px 0 0}.compact-money{align-items:center;gap:10px;display:flex}.compact-money input{min-width:0}.invalid{border-color:var(--danger,#b7514c)}.extra-filters{border-bottom:1px solid var(--line);margin-bottom:12px;padding:14px 0}.extra-filters summary,.recurring-section summary{cursor:pointer;color:var(--muted);margin-bottom:12px;font-size:.84rem}.warning{color:var(--amber,#a97939)}.danger-text{color:var(--danger,#b7514c)}.recurring-row{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px;padding:12px 0;display:flex}.recurring-row>div:first-child{flex:1;min-width:150px}.recurring-row small{color:var(--muted);margin-top:5px;font-size:.75rem;display:block}.menu-overlay{display:none}@media (max-width:1100px){.widget-wide{grid-column:span 6}.widget-small{grid-column:span 3}}@media (max-width:700px){.dashboard-widgets{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.widget-small{grid-column:span 1;min-height:140px;padding:18px 14px}.widget-small h2{font-size:.85rem}.widget-wide{grid-column:span 2}.widget-value{font-size:1.6rem}.dashboard-toolbar{gap:14px;font-size:.8rem}.operations-actions .button{flex:1;min-width:140px;min-height:48px;font-size:.8rem}.modal-wide{width:calc(100% - 20px)}.batch-row{padding:16px 12px}.batch-row .form-grid,.extra-filters .form-grid{grid-template-columns:1fr 1fr;gap:10px}.sidebar{z-index:81}.sidebar-open{padding-top:26px;animation:.18s ease-out section-in}.sidebar-open .brand{margin-bottom:38px;line-height:1.5}.sidebar-open nav{margin-top:0}.menu-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:80;background:#071b1380;animation:.18s ease-out section-in;display:block;position:fixed;inset:0}.widget .distribution{gap:20px}}@media (max-width:370px){.batch-row .form-grid,.extra-filters .form-grid{grid-template-columns:1fr}.widget-value{font-size:1.35rem}.widget-small{padding:16px 12px}}@media (prefers-reduced-motion:reduce){.sidebar-open,.menu-overlay{animation:none}}.operation-fields{border:0;min-width:0;margin:0;padding:0}.space-switch{background:var(--surface-soft);border-radius:10px;gap:6px;max-width:100%;padding:4px;display:flex;overflow-x:auto}.space-switch button{min-height:44px;color:var(--muted);background:0 0;border-radius:8px;flex:none;padding:10px 16px}.space-switch button.selected{background:var(--surface);color:var(--green);box-shadow:0 2px 5px #0001}.widget-shortcut{transition:background .15s,box-shadow .15s;position:relative}.widget-link:after{content:"";border-radius:14px;position:absolute;inset:0}.widget-shortcut:hover{background:var(--surface-soft);box-shadow:0 3px 16px #0000000d}.widget-shortcut:active{transform:translateY(1px)}.widget-shortcut:focus-within{outline:2px solid var(--green);outline-offset:2px}.widget-shortcut .transaction-list,.widget-shortcut .icon-button,.widget-shortcut .text-link{z-index:1;position:relative}.distribution-legend [role=button]{cursor:pointer;min-height:44px}.editor-form,.form-details,.amount-field,.form-grid{min-width:0}.editor-form input,.editor-form textarea,.batch-form input,.select-trigger{min-width:0;max-width:100%}@media (max-width:700px){.dashboard-toolbar{align-items:stretch}.space-switch{width:100%}.dashboard-widgets{grid-template-columns:minmax(0,1fr)}.dashboard-widgets .widget{grid-column:1}.dashboard-widgets .widget-small{min-height:0;padding:18px}.widget-value{margin:10px 0 0}.modal{max-height:calc(100dvh - 32px - env(safe-area-inset-top));padding:20px 16px calc(20px + env(safe-area-inset-bottom))}.editor-form .form-grid,.batch-row .form-grid{grid-template-columns:minmax(0,1fr);gap:16px}.editor-form input:not([type=checkbox]):not([type=color]),.editor-form textarea,.batch-form input:not([type=checkbox]),.modal .select-trigger{width:100%;min-height:46px;font-size:16px}.editor-form .amount-field input{width:min(80%,280px);font-size:2.4rem}.type-switch button,.modal .icon-button,.form-details summary,.check-row{min-height:44px}.form-details summary{padding:12px 0}}.action-center{gap:10px;display:grid}.action-choice{text-align:left;border:1px solid var(--line);background:var(--surface-soft);width:100%;color:var(--ink);border-radius:12px;align-items:center;gap:14px;padding:17px 14px;transition:background .15s,transform .15s;display:flex}.action-choice:hover{background:var(--green-soft)}.action-choice>span:nth-child(2){flex:1;min-width:0}.action-choice strong,.action-choice small{display:block}.action-choice strong{font-size:.94rem}.action-choice small{color:var(--muted);margin-top:4px;font-size:.75rem}.action-icon{color:var(--green);display:flex}.entry-mode{background:var(--surface-soft);border-radius:10px;gap:4px;padding:4px;display:flex}.entry-mode button{color:var(--muted);background:0 0;border-radius:7px;flex:1;padding:11px 6px;font-size:.8rem}.entry-mode .selected{background:var(--surface);color:var(--ink)}.amount-field>span{margin-bottom:18px;display:block}.amount-field>div{min-width:0;max-width:100%}.amount-field input{max-width:calc(100% - 35px)}.modal{touch-action:pan-y;box-sizing:border-box;pointer-events:auto;max-width:calc(100vw - 20px);overflow-x:hidden}.modal .form-grid,.modal .field,.modal fieldset,.modal .editor-form{min-width:0;max-width:100%}.modal input:not([type=checkbox]),.modal textarea{box-sizing:border-box;min-width:0;max-width:100%}.modal .select-trigger{min-width:0;max-width:100%}body:has(.select-content)>*{pointer-events:auto}.select-content{touch-action:pan-y;overscroll-behavior:contain;max-width:calc(100vw - 28px)}.select-item{overflow-wrap:anywhere;min-width:0}.inactive-balances{margin:20px 0;font-size:.82rem}.inactive-balances summary{cursor:pointer;color:var(--muted)}@media (max-width:700px){.sidebar-open .brand{margin-bottom:48px}.modal{overscroll-behavior-y:contain;max-height:90dvh}.modal .form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media (max-width:370px){.modal .form-grid{grid-template-columns:minmax(0,1fr)}}.modal-entry .modal-head{align-items:center;gap:12px;margin-bottom:24px}.modal-entry .modal-head>div{min-width:0}.modal-entry .modal-head h2{text-wrap:balance;line-height:1.35}.modal-entry .modal-head .icon-button{flex:0 0 44px;width:44px;height:44px;margin:0}.modal-entry .editor-form,.modal-entry .batch-form,.modal-entry .batch-rows{gap:22px}.modal-entry .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.modal-entry .entry-mode,.modal-entry .type-switch{align-items:stretch;min-width:0}.modal-entry .entry-mode button,.modal-entry .type-switch button{min-width:0;min-height:44px;line-height:1.4}.modal-entry .amount-field{padding:12px 0}.modal-entry .amount-field>span{margin-bottom:8px}.modal-entry .amount-field>div{align-items:baseline;gap:8px;width:min(100%,280px);margin:0 auto}.modal-entry .editor-form .amount-field input{text-align:center;font-variant-numeric:tabular-nums;flex:1;width:100%;font-size:2.4rem}.modal-entry .amount-field>div>span{flex:none;font-size:1.6rem}.batch-row{gap:20px}.batch-row-head{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.batch-row-head>span{color:var(--muted);font-size:.8rem;font-weight:500}.batch-row-actions .icon-button{width:44px;min-width:44px;height:44px}.modal-entry .select-content{width:var(--radix-select-trigger-width)}.modal-entry .select-item>span:first-child{white-space:normal;min-width:0}.modal-entry .select-trigger>span:last-child,.action-choice>svg,.action-icon{flex-shrink:0}.dashboard-widgets .widget-small{background:linear-gradient(135deg, var(--green), var(--surface) 65%)}@supports (color:color-mix(in lab, red, red)){.dashboard-widgets .widget-small{background:linear-gradient(135deg, color-mix(in srgb, var(--green) 5%, var(--surface)), var(--surface) 65%)}}.dashboard-widgets .widget-small{border-color:var(--green)}@supports (color:color-mix(in lab, red, red)){.dashboard-widgets .widget-small{border-color:color-mix(in srgb, var(--green) 12%, var(--line))}}.dashboard-widgets .widget-small{box-shadow:inset 0 1px 0 var(--green), var(--shadow)}@supports (color:color-mix(in lab, red, red)){.dashboard-widgets .widget-small{box-shadow:inset 0 1px 0 color-mix(in srgb, var(--green) 8%, transparent), var(--shadow)}}.widget-small .section-top{margin-bottom:0}.widget-small h2{color:var(--muted);font-weight:500}.widget-small .widget-value{font-variant-numeric:tabular-nums;margin:12px 0 0;font-weight:600;line-height:1.2}.widget-small .text-link{align-items:center;gap:6px;margin-top:10px;line-height:1.5;display:inline-flex}@media (max-width:700px){.modal-entry{inset:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);width:calc(100% - 24px - env(safe-area-inset-left) - env(safe-area-inset-right));max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));border:1px solid var(--line);border-radius:18px;margin:auto;padding:20px 16px}.modal-entry .form-grid{grid-template-columns:minmax(0,1fr);gap:20px}.modal-entry .batch-row{padding:12px}.modal-entry input[type=date]{appearance:none;width:100%;min-width:0;display:block}.modal-entry input[type=date]::-webkit-date-and-time-value{text-align:left}.modal-entry .compact-money input{font-variant-numeric:tabular-nums;font-size:1.25rem}.widget-small .widget-value{font-size:clamp(1.65rem,6.5vw,2rem)}}.home-module{min-width:0;max-width:960px;margin:0 auto}.home-household{color:var(--muted);margin:-6px 0 0;font-size:.85rem}.home-sync{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin:12px 0 18px;font-size:.72rem;display:flex}.home-sync .icon-button{flex-shrink:0}.home-tonight{text-align:left;border:1px solid var(--line);background:var(--green-soft);width:100%;color:var(--ink);border-radius:18px;align-items:center;gap:18px;padding:23px;display:flex}.home-tonight>span:nth-child(2){flex:1;min-width:0}.home-tonight small{letter-spacing:.14em;color:var(--muted);margin-bottom:7px;font-size:.66rem;display:block}.home-tonight strong{overflow-wrap:anywhere;font-size:1.2rem;display:block}.home-tonight-icon{color:var(--green)}.home-shortcuts{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.home-shortcuts button{text-align:left;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:15px;flex-direction:column;align-items:flex-start;gap:10px;min-width:0;padding:22px 16px;display:flex}.home-shortcuts svg{color:var(--green)}.home-shortcuts small{color:var(--muted);font-size:.75rem}.home-fridge-note{text-align:center;color:var(--muted);margin:25px 0;font-size:.8rem}.home-subnav{background:var(--surface-soft);border-radius:12px;gap:3px;width:100%;margin:0 0 24px;padding:5px;display:flex}.home-subnav button{color:var(--muted);background:0 0;border-radius:8px;flex:1;min-width:0;padding:11px 4px;font-size:.8rem}.home-subnav button:first-child{flex:0 0 38px;place-items:center;display:grid}.home-subnav button.active{background:var(--surface);color:var(--ink)}.home-section{min-width:0}.home-section h2{font-size:1.25rem}.home-section .section-top{gap:12px}.home-section .section-top>.button{padding:12px;font-size:.78rem}.home-segments{gap:8px;margin:15px 0;display:flex}.home-segments button{min-height:42px;color:var(--muted);background:0 0;border-radius:9px;padding:8px 14px;font-size:.8rem}.home-segments .selected{background:var(--green-soft);color:var(--ink)}.home-empty{color:var(--muted);text-align:center;padding:30px 15px;line-height:1.7}.home-empty>svg{margin:0 auto 20px}.home-list-cards{gap:10px;display:grid}.home-list-card{border:1px solid var(--line);background:var(--surface);border-radius:13px;align-items:center;min-width:0;padding:6px 12px 6px 4px;display:flex}.home-card-open{min-width:0;color:var(--ink);text-align:left;background:0 0;flex:1;padding:16px}.home-card-open strong,.home-card-open small{overflow-wrap:anywhere;display:block}.home-card-open small{color:var(--muted);margin-top:7px;font-size:.75rem}.home-list-title input{padding:10px 0;font-size:1.3rem;font-weight:600}.home-auto-text{flex:1;min-width:0}.home-auto-text input{width:100%;min-width:0;color:var(--ink);box-shadow:none;background:0 0;border:0;border-radius:5px;padding:13px 4px}.home-auto-text input:focus{outline:1px solid var(--green);outline-offset:-1px}.home-auto-text .text-button{color:#c59080;text-align:left;font-size:.7rem}.home-checklist{margin:10px 0}.home-check-row{border-bottom:1px solid var(--line);align-items:center;gap:10px;min-height:56px;display:flex}.home-module input[type=checkbox],.home-preview input[type=checkbox],.home-check-label input{width:24px;height:24px;accent-color:var(--green);cursor:pointer;flex-shrink:0;margin:8px}.home-row-delete{color:var(--muted);opacity:.65;flex-shrink:0}.home-new-row>input:not([type=checkbox]){width:0;min-width:0;color:var(--ink);background:0 0;border:0;flex:1;padding:13px 4px}.home-empty-check{border:1px solid var(--muted);opacity:.5;border-radius:5px;flex-shrink:0;width:24px;height:24px;margin:8px;display:block}.home-taken{color:var(--muted);margin:22px 0}.home-taken summary{cursor:pointer;padding:8px 0;font-size:.82rem}.is-done .home-auto-text input{color:var(--muted);text-decoration:line-through}.home-undo,.home-error{background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin:12px 0;padding:13px 16px;font-size:.8rem;display:flex}.home-error{color:#cf9c8c;overflow-wrap:anywhere}.home-notice{background:var(--green-soft);border-radius:10px;margin:15px 0;padding:14px;font-size:.8rem;line-height:1.6}.home-notice small{margin-top:5px;display:block}.home-notice .text-button{margin-top:8px}.home-task-compose{border:1px solid var(--line);background:var(--surface);border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;margin:20px 0;padding:12px;display:flex}.home-task-compose>input{flex:1 0 100%;width:100%}.home-task-compose .select-trigger{flex:1}.home-task-row{border-bottom:1px solid var(--line);align-items:flex-start;gap:8px;min-width:0;padding:12px 0;display:flex}.home-task-content{flex:1;min-width:0}.home-task-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.home-task-meta .select-trigger{background:var(--surface-soft);width:auto;min-height:40px;padding:8px;font-size:.73rem}.home-task-meta small{color:var(--muted);font-size:.7rem}.home-task-actions{flex-direction:column;display:flex}.home-search{width:100%}.home-recipe-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.home-recipe-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;min-width:0;position:relative;overflow:hidden}.home-recipe-open{width:100%;height:100%;color:var(--ink);text-align:left;background:0 0;display:block}.home-recipe-open img,.home-recipe-placeholder{object-fit:cover;width:100%;height:135px;color:var(--green);background:var(--surface-soft);justify-content:center;align-items:center;display:flex}.home-recipe-open strong{overflow-wrap:anywhere;padding:15px;font-size:.9rem;display:block}.home-favorite{background:var(--surface);border-radius:50%;position:absolute;top:6px;right:6px}.home-favorite.selected{color:#c99685}.home-recipe-photo{object-fit:cover;border-radius:12px;width:100%;max-height:280px}.home-recipe-detail{gap:18px;display:grid}.home-instructions{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.home-ingredients{padding-left:20px;line-height:2}.home-actions{flex-wrap:wrap;gap:10px;display:flex}.home-ingredient-row{grid-template-columns:minmax(0,2fr) minmax(0,.8fr) minmax(0,1fr) 40px;gap:6px;margin:10px 0;display:grid}.home-ingredient-row input{width:100%;min-width:0;padding:10px 7px}.home-ingredient-row .select-trigger{padding:10px 5px;font-size:.75rem}.home-ingredient-row .icon-button{width:40px}.home-check-label,.home-ingredient-checks label,.home-list-choice label{align-items:center;gap:12px;min-height:48px;font-size:.88rem;display:flex}.home-ingredient-checks label{border-bottom:1px solid var(--line)}.home-ingredient-checks span{overflow-wrap:anywhere;min-width:0}.home-list-choice{border:0;gap:5px;margin:12px 0;padding:0;display:grid}.home-list-choice legend{margin-bottom:10px;font-weight:600}.home-list-choice input{width:21px;height:21px;accent-color:var(--green);flex-shrink:0}.home-picker-section{margin-top:22px}.home-picker-section h3{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}.home-picker-recipe{border-bottom:1px solid var(--line);width:100%;min-height:60px;color:var(--ink);text-align:left;background:0 0;align-items:center;gap:12px;padding:10px 0;display:flex}.home-picker-recipe img{object-fit:cover;border-radius:8px;width:48px;height:48px}.home-picker-recipe span{overflow-wrap:anywhere;flex:1;min-width:0}.home-week-actions{flex-wrap:wrap;align-items:center;gap:12px;margin:18px 0;display:flex}.home-week-actions .button{font-size:.8rem}.home-week-actions .text-button{font-size:.75rem}.home-meal-days{gap:12px;display:grid}.home-meal-day{border:1px solid var(--line);background:var(--surface);border-radius:14px;min-width:0;padding:18px}.home-meal-day.is-today{border-color:var(--green)}.home-meal-day h3{text-transform:capitalize;color:var(--muted);justify-content:space-between;align-items:center;margin-bottom:6px;font-size:.83rem;display:flex}.home-meal-day h3 small{color:var(--green);font-size:.67rem}.home-linked-recipe{color:var(--green);align-items:center;gap:8px;font-size:.8rem;display:flex}.home-linked-recipe strong{flex:1}.home-link-recipe{padding:10px 0;font-size:.73rem}.home-meal-options{color:var(--muted);margin-top:10px;font-size:.7rem}.home-meal-options summary{cursor:pointer;padding:8px 0}.home-module input,.home-module textarea{scroll-margin-block:100px}@media (max-width:700px){.home-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.home-shortcuts button{gap:8px;padding:18px 15px}.home-recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.home-recipe-open img,.home-recipe-placeholder{height:110px}.home-module input,.home-module textarea,.home-recipe-form input{font-size:16px}.home-task-meta .select-trigger{font-size:.73rem}.home-tonight{gap:12px;padding:20px 16px}.home-tonight strong{font-size:1.05rem}body:has(.home-module input:focus) .mobile-nav{visibility:hidden}.home-module{padding-bottom:max(30px, env(safe-area-inset-bottom))}.home-section .section-top .button{padding:11px 9px;font-size:.73rem}}.home-check-hit{cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;min-width:44px;min-height:44px;display:flex}.home-module .home-check-hit input{margin:0}.modal .home-list-choice input[type=radio]{flex:0 0 22px;width:22px;max-width:22px;height:22px;min-height:22px}.home-list-choice label{overflow-wrap:anywhere;min-width:0}.back-button{flex:0 0 44px;width:44px;height:44px}.page-heading:has(>.back-button){justify-content:flex-start;gap:12px}:is(.page-heading:has(>.back-button)>div,.modal-head:has(.back-button)>div){flex:1}.home-navigation{align-items:center;gap:8px;min-width:0;margin-bottom:18px;display:flex}.home-navigation .home-subnav{flex-wrap:wrap;flex:1;min-width:0;margin:0}.home-navigation .home-subnav>button:first-child{flex:1;display:block}.home-screen[hidden]{display:none}.home-meal-title{align-items:center;gap:6px;min-width:0;display:flex}.home-meal-title>:last-child{flex:1;min-width:0}.home-meal-day.is-eaten .home-meal-title input:not([type=checkbox]){color:var(--muted)}.home-linked-recipe .home-recipe-link{text-align:left;white-space:normal;flex:1;justify-content:flex-start;align-items:center;gap:8px;min-width:0;min-height:44px;display:inline-flex}.home-recipe-link strong{overflow-wrap:anywhere}.home-tonight .tonight-badge,.home-meal-day h3 .tonight-badge{background:var(--green-soft);color:var(--green);letter-spacing:0;text-transform:none;border-radius:6px;align-items:center;padding:3px 8px;font-size:.72rem;font-weight:500;line-height:1.5;display:inline-flex}.home-tonight .tonight-badge{margin-bottom:7px}.dashboard-toolbar{flex-wrap:nowrap;align-items:center}.dashboard-space{flex:1;min-width:0;max-width:460px}.dashboard-space .select-trigger{min-height:48px;font-size:16px}.dashboard-customize{flex-shrink:0;min-height:48px}.dashboard-widgets .widget-small{text-align:center;background:var(--surface);border-color:var(--line);min-height:0;box-shadow:none;flex-direction:column;justify-content:center;align-self:start;align-items:center;padding:22px 18px;display:flex}.widget-small .section-top{justify-content:center}.widget-small h2{font-size:.83rem;line-height:1.4}.widget-small .widget-value{letter-spacing:-.04em;margin-top:12px;font-size:clamp(1.6rem,2.5vw,2.3rem)}.widget-savings .widget-value{color:var(--green)}.recent-more{justify-content:flex-end;align-items:center;gap:8px;min-height:44px;margin-top:12px;display:flex}.distribution-more{width:100%;min-height:44px;margin-top:8px}.modal-home .modal-head{align-items:center;gap:10px}.modal-home .modal-head>div{min-width:0}.modal-home .modal-head h2{overflow-wrap:anywhere;line-height:1.4}.modal-home .modal-head .icon-button{flex:0 0 44px;width:44px;height:44px;margin:0}@media (max-width:700px){.mobile-nav-home{grid-template-columns:repeat(4,minmax(0,1fr))}.mobile-nav{padding-left:max(9px, env(safe-area-inset-left));padding-right:max(9px, env(safe-area-inset-right))}.dashboard-toolbar{gap:8px}.dashboard-customize{gap:6px;padding:10px;font-size:.75rem}.dashboard-space .select-trigger{padding-inline:12px}.dashboard-widgets{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dashboard-widgets .widget{grid-column:span 2}.dashboard-widgets .widget-small{grid-column:span 1;padding:18px 10px}.dashboard-widgets .widget-savings{grid-column:span 2}.widget-small .widget-value{font-size:clamp(1.12rem,4.5vw,1.4rem)}.widget-small h2{font-size:.76rem}.widget-savings .widget-value{font-size:1.7rem}.home-navigation .home-subnav{gap:2px}.home-navigation .home-subnav button{flex:1;min-height:44px;padding:9px 5px;font-size:.73rem}.home-meal-day h3{flex-wrap:wrap;gap:8px}.modal-home,.modal-entry{inset:calc(var(--modal-viewport-top,0px) + env(safe-area-inset-top)) env(safe-area-inset-right) calc(100dvh - var(--modal-viewport-height,100dvh) - var(--modal-viewport-top,0px) + env(safe-area-inset-bottom)) env(safe-area-inset-left);width:calc(100% - 24px - env(safe-area-inset-left) - env(safe-area-inset-right));max-height:calc(var(--modal-viewport-height,100dvh) - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));border:1px solid var(--line);border-radius:18px;margin:auto;padding:20px 16px}.modal-home .form-grid{grid-template-columns:minmax(0,1fr);gap:18px}.modal-home input:not([type=checkbox]):not([type=radio]),.modal-home textarea{width:100%;font-size:16px}.modal-home input[type=date]{appearance:none;min-width:0}body:has(.home-module textarea:focus) .mobile-nav{visibility:hidden}}body.dialog-scroll-locked{top:var(--modal-scroll-y);width:100%;position:fixed;overflow:hidden}html:has(body.dialog-scroll-locked){overflow:hidden}.topbar-label{min-height:44px;color:var(--ink)}.negative,.status-NOT_EATEN{color:#ac554e}:root[data-theme=dark] .negative,:root[data-theme=dark] .status-NOT_EATEN{color:#e9a098}.status-EATEN{color:var(--green)}.widget-trend{padding-bottom:44px}.widget-trend .chart{height:230px}.chart .recharts-responsive-container{overflow:hidden}.donut-block{flex-direction:column;align-items:center;max-width:100%;display:flex}.donut-detail{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:100%;max-width:280px;height:62px;font-size:.8rem;display:flex}.donut-detail strong{align-items:center;gap:7px;font-weight:550;display:flex}.donut-detail span{color:var(--muted)}.donut-detail .legend-dot{flex:0 0 7px;width:7px;height:7px}.home-meal-day{padding:0;overflow:hidden}.meal-day-toggle{width:100%;min-height:72px;color:var(--ink);text-align:left;background:0 0;align-items:center;gap:10px;padding:14px;display:flex}.meal-day-toggle>span{flex:1;min-width:0}.meal-day-toggle strong{flex-wrap:wrap;align-items:center;gap:8px;font-size:.88rem;font-weight:550;display:flex}.meal-summary{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:.78rem;display:block;overflow:hidden}.meal-status{flex:none;font-size:.68rem}.meal-day-toggle>svg{flex-shrink:0;transition:transform .2s}.rotated{transform:rotate(180deg)}.meal-day-content{border-top:1px solid var(--line);padding:0 14px 16px}.meal-day-content[hidden],.batch-edit[hidden]{display:none}.meal-status-field{align-items:center;gap:12px;padding-top:14px;font-size:.8rem;display:flex}.meal-status-field .select-trigger{width:auto;min-width:145px;max-width:200px;margin-left:auto}.meal-course{gap:10px;margin-top:18px;display:grid}.meal-course h4{color:var(--muted);margin:0;font-size:.8rem}.course-add{align-items:center;gap:6px;min-height:44px;margin-top:5px;display:flex}.recipe-art{object-fit:cover;border-radius:12px;width:100%;height:145px}.recipe-illustration{background:var(--surface-soft);color:var(--gold);justify-content:center;align-items:center;display:flex}.illustration-salad,.illustration-soup{color:var(--green)}.illustration-fish{color:#6b99a8}.illustration-dessert,.illustration-breakfast{color:#bd8a73}.home-linked-recipe .home-recipe-link{text-align:left;flex:1;min-width:0}.home-linked-recipe .home-recipe-link strong{overflow-wrap:anywhere}.home-recipe-link .recipe-art{flex:0 0 54px;width:54px;height:54px}.home-recipe-link .recipe-art svg{width:30px;height:30px}.recipe-art.home-recipe-photo{width:100%;height:200px}.recipe-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.recipe-gallery button{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:12px;min-height:90px;padding:5px;font-size:.7rem}.recipe-gallery button[aria-pressed=true]{border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green)}.recipe-gallery .recipe-art{height:55px}.recipe-gallery .recipe-art svg{width:32px;height:32px}.recipe-folder-filter{align-items:center;gap:10px;display:flex}.recipe-folder-filter .select-trigger{flex:1;min-width:0}.recipe-folder-filter .text-button{flex:none;min-height:44px;font-size:.75rem}.recipe-folder-row{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 0;display:flex}.recipe-folder-row>span{overflow-wrap:anywhere;flex:1;min-width:90px}.recipe-folder-row small{color:var(--muted);display:block}.recipe-folder-row button{min-height:44px;font-size:.75rem}.batch-toggle{text-align:left;min-width:0;min-height:44px;color:var(--ink);background:0 0;flex:1;justify-content:space-between;align-items:center;gap:10px;padding:0;display:flex}.batch-toggle>span{min-width:0;font-size:.75rem;display:block}.batch-toggle strong{margin:5px 0;font-size:1.05rem;display:block}.batch-toggle small{color:var(--muted);overflow-wrap:anywhere;font-size:.72rem;display:block}.batch-toggle .batch-recurring{color:var(--green);align-items:center;gap:5px;margin-top:4px;display:flex}.batch-edit{gap:14px;min-width:0;display:grid}.swipe-row{border-bottom:1px solid var(--line);position:relative;overflow:clip}.swipe-front{background:var(--surface);touch-action:pan-y;border-bottom:0;transition:transform .2s ease-out;position:relative}.swipe-front button{touch-action:pan-y}.swipe-row.dragging .swipe-front{transition:none}.swipe-actions{align-items:stretch;width:160px;display:flex;position:absolute;top:0;bottom:0;right:0}.swipe-actions button,.swipe-actions .delete-button{color:#fff;background:#446b59;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:80px;height:auto;min-height:44px;padding:5px;font-size:.7rem;display:flex}.swipe-actions .delete-button{background:#a6514b}.swipe-menu{flex-shrink:0;min-width:44px}.date-picker{width:100%;min-width:0;display:block}.date-trigger{border:1px solid var(--line);background:var(--surface);width:100%;min-height:46px;color:var(--ink);text-align:left;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;font-size:16px;display:flex}.date-trigger span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.date-trigger svg{color:var(--muted);flex-shrink:0}.modal-calendar{inset:var(--modal-viewport-top,0px) 0 auto;margin:max(12px, calc((var(--modal-viewport-height,100dvh) - 490px) / 2)) auto;width:min(400px, calc(100vw - max(12px, env(safe-area-inset-left)) - max(12px, env(safe-area-inset-right))));max-height:calc(var(--modal-viewport-height,100dvh) - 24px);border-radius:20px;padding:16px 10px;position:fixed;overflow:hidden auto}.modal-calendar .modal-head{margin-bottom:14px;padding:0 6px}.modal-calendar .modal-head .icon-button{min-width:44px;min-height:44px}.calendar-toolbar{grid-template-columns:44px minmax(0,1fr) minmax(75px,.8fr) 44px;align-items:center;gap:4px;display:grid}.calendar-toolbar .select-trigger{padding:8px}.calendar-toolbar .icon-button{width:44px;height:44px}.calendar-weekdays,.calendar-days{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays{text-align:center;color:var(--muted);margin:16px 0 8px;font-size:.75rem}.calendar-days button{min-width:0;height:44px;color:var(--ink);background:0 0;border-radius:50%;font-size:.88rem}.calendar-days .other-month{color:var(--muted)}.calendar-days [aria-current=date]{box-shadow:inset 0 0 0 1px var(--line)}.calendar-days .selected{background:var(--green);color:var(--surface)}.calendar-days button:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}.calendar-actions{justify-content:space-between;margin:12px 8px 0;display:flex}.calendar-actions button{min-height:44px}@media (max-width:600px){.home-meal-days{gap:9px}.recipe-folder-filter{flex-wrap:wrap}.recipe-folder-filter .select-trigger{flex-basis:170px}.batch-row{gap:8px;padding:12px}.batch-row-actions .icon-button{width:44px;height:44px}.widget-result{grid-column:1/-1}.widget-trend .chart{height:235px}.swipe-front .transaction-main{min-width:0}.swipe-front .transaction-description strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.swipe-front .transaction-main{padding-right:0}}@media (prefers-reduced-motion:reduce){.swipe-front,.meal-day-toggle>svg{transition:none}}.dashboard-widgets .widget-result{grid-column:span 2}.month-selector>button{min-width:138px;min-height:44px;color:var(--ink);text-transform:capitalize;background:0 0;border-radius:9px;font-size:.82rem;font-weight:550}.calendar-year{grid-template-columns:44px 1fr 44px;align-items:center;gap:8px;display:grid}.calendar-year .icon-button{width:44px;height:44px}.calendar-months{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:18px;display:grid}.calendar-months button{min-height:48px;color:var(--ink);background:var(--surface-soft);text-transform:capitalize;border-radius:10px;font-size:.85rem}.calendar-months [aria-pressed=true]{background:var(--green);color:var(--surface)}.modal-calendar{inset:calc(var(--modal-viewport-top,0px) + env(safe-area-inset-top)) env(safe-area-inset-right) calc(100dvh - var(--modal-viewport-height,100dvh) - var(--modal-viewport-top,0px) + env(safe-area-inset-bottom)) env(safe-area-inset-left);max-height:calc(var(--modal-viewport-height,100dvh) - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));margin:auto}@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}
