.driver-popover{all:unset;font-family:var(--driver-popover-font-family,"Helvetica Neue", Inter, ui-sans-serif, "Apple Color Emoji", Helvetica, Arial, sans-serif);box-sizing:border-box;color:#2d2d2d;z-index:1000000000;background-color:#fff;border-radius:5px;min-width:250px;max-width:300px;margin:0;padding:15px;position:fixed;top:0;right:0;box-shadow:0 1px 10px #0006}.driver-popover-title{zoom:1;margin:0;font-size:19px;font-weight:700;line-height:1.5;display:block;position:relative}.driver-popover-close-btn{all:unset;cursor:pointer;color:#d2d2d2;z-index:1;text-align:center;width:32px;height:28px;font-size:18px;font-weight:500;transition:color .2s;position:absolute;top:0;right:0}.driver-popover-close-btn:hover,.driver-popover-close-btn:focus-visible{color:#2d2d2d}.driver-popover-title[style*=block]+.driver-popover-description{margin-top:5px}.driver-popover-description{zoom:1;margin-bottom:0;font-size:14px;font-weight:400;line-height:1.5}.driver-popover-footer{text-align:right;zoom:1;justify-content:space-between;align-items:center;margin-top:15px;display:flex}.driver-popover-progress-text{color:#727272;zoom:1;font-size:13px;font-weight:400}.driver-popover-footer-btn{all:unset;box-sizing:border-box;color:#2d2d2d;cursor:pointer;zoom:1;background-color:#fff;border:1px solid #ccc;border-radius:3px;outline:0;padding:3px 7px;font-size:12px;line-height:1.3;text-decoration:none;display:inline-block}.driver-popover-footer .driver-popover-btn-disabled{opacity:.5;pointer-events:none}.driver-popover-footer-btn:hover,.driver-popover-footer-btn:focus{background-color:#f7f7f7}.driver-popover-navigation-btns{flex-grow:1;justify-content:flex-end;display:flex}.driver-popover-navigation-btns button+button{margin-left:4px}.driver-popover-arrow{content:"";border:5px solid #fff;position:absolute}.driver-popover-arrow-side-over{display:none}.driver-popover-arrow-side-left{border-top-color:#0000;border-bottom-color:#0000;border-right-color:#0000;left:100%}.driver-popover-arrow-side-right{border-top-color:#0000;border-bottom-color:#0000;border-left-color:#0000;right:100%}.driver-popover-arrow-side-top{border-bottom-color:#0000;border-left-color:#0000;border-right-color:#0000;top:100%}.driver-popover-arrow-side-bottom{border-top-color:#0000;border-left-color:#0000;border-right-color:#0000;bottom:100%}.driver-popover-arrow-side-center,.driver-popover-arrow-none{display:none}.driver-active .driver-overlay{pointer-events:none}.driver-active.driver-no-scroll{overflow:hidden}.driver-active *{pointer-events:none}.driver-active .driver-active-element,.driver-active .driver-active-element *,.driver-popover,.driver-popover *{pointer-events:auto}@keyframes animate-fade-in{0%{opacity:0}to{opacity:1}}.driver-fade .driver-overlay{animation:animate-fade-in var(--driver-animation-duration,.4s) ease-in-out}.driver-fade .driver-popover{animation:animate-fade-in var(--driver-animation-duration,.4s)}.driver-active-element-parent-no-scroll{overflow:hidden!important}.driver-no-interaction,.driver-no-interaction *{pointer-events:none!important}@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-border-style:solid;--tw-font-weight:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-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-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;--color-white:#fff;--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-semibold:600;--radius-lg:.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-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}.block{display:block}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.h-11{height:calc(var(--spacing) * 11)}.min-h-11{min-height:calc(var(--spacing) * 11)}.w-11{width:calc(var(--spacing) * 11)}.w-full{width:100%}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-input{border-color:var(--border-strong)}.bg-background{background-color:var(--surface)}.bg-destructive{background-color:var(--error)}.bg-primary{background-color:var(--brand)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.text-right{text-align:right}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.whitespace-nowrap{white-space:nowrap}.text-primary-foreground{color:#fff}.text-white{color:var(--color-white)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){.hover\:bg-accent:hover{background-color:var(--surface-selected)}.hover\:bg-destructive\/90:hover{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab, var(--error) 90%, transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--brand)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab, var(--brand) 90%, transparent)}}}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + 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)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:var(--brand)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-40:disabled{opacity:.4}.\[\&_svg\]\:size-4 svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}}.subscriptions-panel{margin-top:24px}.card-ceiling-usage{gap:5px;min-width:0;max-width:260px;margin-top:8px;display:grid}.card-ceiling-usage>span:first-child{color:var(--text-secondary);font-size:10px}.card-ceiling-track{background:var(--border);border-radius:4px;width:100%;height:4px;display:block;overflow:hidden}.card-ceiling-track>span{background:currentColor;height:100%;display:block}.card-ceiling-usage>small{font-size:10px}.commitment-invoice-row:has(.card-ceiling-usage){flex-wrap:wrap}.commitment-invoice-row>.card-ceiling-usage{flex-basis:100%;max-width:none;margin-top:4px}.ceiling-within{color:var(--brand)}.ceiling-near,.ceiling-reached{color:var(--warning)}.ceiling-above{color:var(--error)}.commitment-invoice-row .card-ceiling-usage.ceiling-within{color:var(--brand)}.commitment-invoice-row .card-ceiling-usage.ceiling-near,.commitment-invoice-row .card-ceiling-usage.ceiling-reached{color:var(--warning)}.commitment-invoice-row .card-ceiling-usage.ceiling-above{color:var(--error)}.card-ceiling-history{border-top:1px solid var(--border);padding-top:12px}.card-ceiling-history summary{cursor:pointer;color:var(--text-secondary);font-size:12px}.card-ceiling-history-row{border-bottom:1px solid var(--border);align-items:center;gap:8px;min-height:52px;padding-block:8px;display:flex}.card-ceiling-history-row>span{flex:1;min-width:0;font-size:12px}.card-ceiling-history-row small{color:var(--text-secondary);margin-top:4px;display:block}.card-ceiling-history-pages{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.card-ceiling-undo{color:var(--brand);min-height:44px;text-decoration:underline}.ceiling-purchase-warning{background:var(--warning-bg);color:var(--warning);border:1px solid #e1caa6;border-radius:8px;padding:16px;font-size:12px}.ceiling-purchase-warning p{margin-top:8px}.ceiling-purchase-warning small{margin-top:12px;display:block}.commitment-chart-panel .panel-heading:has(.ceiling-chart-view){flex-wrap:wrap}.ceiling-chart-view{flex-shrink:0}.ceiling-chart-view button{white-space:nowrap;min-height:44px;padding-inline:12px;font-size:12px}.commitment-chart.ceiling-comparison{height:310px}.ceiling-comparison .commitment-bars{align-items:start}.ceiling-chart-marker{border-top:2px dashed var(--warning);z-index:1;position:absolute;left:12%;right:12%}.ceiling-chart-caption{text-align:center;align-content:start;gap:3px;min-height:56px;margin-top:8px;font-size:9px;line-height:1.45;display:grid}.ceiling-chart-caption small{color:var(--text-secondary);font-size:9px}.ceiling-chart-caption b{font-weight:600}.subscriptions-panel>.empty-small{padding:20px 24px}.subscription-list{display:grid}.subscription-row{border-top:1px solid var(--border);text-align:left;align-items:center;gap:12px;width:100%;padding:12px 24px;display:flex}.subscription-row:hover{background:var(--surface-selected)}.subscription-row>svg{color:var(--text-secondary);flex-shrink:0}.subscription-description{flex:1;gap:2px;min-width:0;display:grid}.subscription-description strong,.subscription-description small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.subscription-description small{color:var(--text-secondary);font-size:12px}.subscription-amount{letter-spacing:-.02em;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:14px;font-weight:750}.subscription-preview{border:1px solid var(--border);background:var(--surface-subtle);border-radius:8px;padding:16px}.subscription-preview p{margin-top:12px}.subscription-preview small{color:var(--text-secondary);margin-top:4px;display:block}.subscription-form{margin-top:16px}@media (width<=767px){.subscriptions-panel>.panel-heading{flex-direction:column;align-items:flex-start;gap:12px}.subscription-row{padding:12px 16px}}@font-face{font-family:Manrope;src:url(/fonts/manrope-variable.ttf)format("truetype");font-weight:200 800;font-style:normal;font-display:swap}:root{font-synthesis:none;color:var(--text);background:var(--canvas);-webkit-font-smoothing:antialiased;--brand:#174e40;--brand-hover:#103b31;--canvas:#f5f7f7;--surface:#fff;--surface-subtle:#f8faf9;--surface-selected:#eaf3ee;--text:#20332d;--text-secondary:#607169;--border:#e1e8e4;--border-strong:#c9d5ce;--income:#21734f;--income-bg:#ecf6ef;--expense:#a34c32;--expense-bg:#fcf0e9;--invoice:#7255a0;--invoice-bg:#f3eff9;--error:#b13e45;--error-bg:#fff1f1;--warning:#8d601b;--warning-bg:#fff8eb;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--radius-control:8px;--radius-panel:12px;--radius-dialog:16px;--sidebar-width:288px;--z-nav:20;--z-overlay:50;--z-dialog:51;font-family:Manrope,Segoe UI,sans-serif;font-size:16px;font-weight:400}*{box-sizing:border-box}html{scrollbar-gutter:stable}body{margin:0;font-size:14px;line-height:1.5}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}input,select{min-width:0;caret-color:var(--brand)}svg{stroke-width:1.75px;flex-shrink:0}::selection{color:var(--brand-hover);background:#cde5d8}:focus-visible{outline:2px solid var(--brand);outline-offset:4px}main:focus{outline:none}input::placeholder{color:var(--text-secondary);opacity:1}button,a,input,select{transition:background-color .16s,border-color .16s,color .16s}.skip-link{color:#fff;background:var(--brand);z-index:60;border-radius:8px;padding:12px 20px;position:fixed;top:-100px;left:16px}.skip-link:focus{top:16px}.select-trigger{border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--surface);width:100%;min-width:0;height:48px;color:var(--text);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:0 12px;font-size:14px;display:inline-flex}.select-trigger:hover:not(:disabled){border-color:#91ad9d}.select-trigger[data-state=open],.select-trigger:focus-visible{border-color:var(--brand);outline-offset:1px;outline:2px solid #174e4020}.select-trigger:disabled{background:var(--surface-subtle);color:var(--text-secondary);cursor:not-allowed}.select-trigger[aria-invalid=true]{border-color:var(--error)}.select-value{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.select-value:has(.account-option){text-overflow:clip;display:flex}.account-option{justify-content:space-between;align-items:baseline;gap:12px;width:100%;min-width:0;display:flex}.account-option>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.account-option>b{font-variant-numeric:tabular-nums;color:var(--text-secondary);flex-shrink:0;font-size:12px;font-weight:700}.select-option:has(.account-option){align-items:baseline}.select-option[data-state=checked]:has(.account-option){padding-right:36px}.select-option[data-state=checked]:has(.account-option) .select-selection-label{display:none}.select-chevron{color:var(--text-secondary);transition:transform .16s}.select-trigger[data-state=open] .select-chevron{transform:rotate(180deg)}.select-content{z-index:60;min-width:var(--radix-select-trigger-width);max-width:calc(100vw - 24px);max-height:min(340px, var(--radix-select-content-available-height));border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;font-family:Manrope,Segoe UI,sans-serif;font-size:13px;overflow:hidden;box-shadow:0 8px 24px #10281f1a}.select-viewport{padding:5px}.select-option{cursor:pointer;-webkit-user-select:none;user-select:none;overflow-wrap:anywhere;border-radius:6px;outline:none;justify-content:space-between;align-items:center;gap:20px;min-height:42px;padding:10px 36px 10px 12px;line-height:1.5;display:flex;position:relative}.select-option[data-state=checked]{color:var(--brand);background:var(--surface-selected);padding-right:112px;font-weight:650}.select-option[data-highlighted]{color:var(--brand-hover);background:#dcece2}.select-option[data-disabled]{color:var(--text-secondary);opacity:.5;cursor:not-allowed}.select-check{color:var(--brand);align-items:center;gap:6px;display:inline-flex;position:absolute;right:12px}.select-selection-label{font-size:10px;font-weight:650}.select-scroll{background:var(--surface);height:28px;color:var(--text-secondary);justify-content:center;align-items:center;display:flex}.period-control{grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;width:100%;min-width:0;display:grid}.period-control>.ui-button{color:var(--text-secondary);padding:0}.period-control>.select-trigger,.period-control>input{width:100%;min-width:0}.main-period-control{width:288px}.main-period-control .select-trigger{background:var(--surface);border-color:var(--border-strong);height:44px;padding:8px 12px;font-size:14px;font-weight:700}.main-period-control>.ui-button{border-color:var(--border-strong);background:var(--surface-subtle)}.main-period-control>.ui-button:hover:not(:disabled){background:var(--surface-selected)}.commitment-month-panel .panel-heading>.period-control{flex-basis:100%}.month-input>input{height:48px}.app-shell{min-height:100dvh}.sidebar{width:var(--sidebar-width);background:var(--surface);border-right:1px solid var(--border);z-index:var(--z-nav);flex-direction:column;padding:32px 16px 0;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:10px;width:fit-content;padding:0 12px;display:flex}.brand-symbol{color:#fff;background:var(--brand);border-radius:10px 10px 10px 2px;place-items:center;width:36px;height:38px;display:grid}.brand-name{letter-spacing:-.04em;font-size:29px;font-weight:800;line-height:1.2}.brand-dot{color:#4b9271}.workspace-label{color:var(--text-secondary);margin:40px 16px 12px;font-size:12px;font-weight:600}.sidebar nav{gap:6px;display:grid}.nav-item{border-radius:var(--radius-control);min-height:48px;color:var(--text-secondary);align-items:center;gap:12px;padding:12px 16px;font-weight:500;display:flex}.nav-short{display:none}.nav-item:hover{background:var(--surface-subtle);color:var(--brand)}.nav-item.active{background:var(--surface-selected);color:var(--brand);font-weight:700}.nav-chevron{opacity:0;margin-left:auto}.nav-item.active .nav-chevron{opacity:1}.sidebar-bottom{margin-top:auto;padding-top:40px}.sidebar-tip{background:var(--surface-subtle);border-radius:var(--radius-panel);margin-bottom:16px;padding:20px 16px}.sidebar-tip>svg{color:var(--brand);margin-bottom:14px}.sidebar-tip strong{font-size:13px;font-weight:700;line-height:1.6;display:block}.sidebar-tip p{color:var(--text-secondary);margin-top:8px;font-size:12px;line-height:1.75}.tip-link{min-height:44px;color:var(--brand);justify-content:space-between;align-items:center;margin-top:8px;font-size:12px;font-weight:700;display:flex}.sidebar-help{text-align:left;width:100%;min-height:44px;color:var(--text-secondary);background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:12px;display:flex}.sidebar-help:hover{background:var(--surface-selected);color:var(--brand)}.sidebar-help:disabled,.sidebar-help:disabled:hover{color:var(--text-secondary);opacity:.45;background:0 0}.profile{border-top:1px solid var(--border);align-items:center;gap:10px;margin-top:16px;padding:20px 0;display:flex}.avatar,.topbar-avatar{background:var(--surface-selected);width:36px;height:36px;color:var(--brand);border-radius:50%;flex-shrink:0;place-items:center;font-size:11px;font-weight:700;display:grid}.profile div{gap:3px;display:grid}.profile strong{font-size:12px;font-weight:700}.profile div span{color:var(--text-secondary);font-size:10px}.profile>svg{color:var(--brand);margin-left:auto}.main-shell{margin-left:var(--sidebar-width);min-width:0}.topbar{z-index:30;border-bottom:1px solid var(--border);background:var(--surface);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:16px;min-height:72px;padding:12px 40px;display:grid;position:sticky;top:0}.breadcrumb{min-width:0;color:var(--text-secondary);align-items:center;gap:12px;font-size:12px;display:flex}.breadcrumb span{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.topbar-period{align-items:center;gap:8px;min-width:0;display:flex}.topbar-right{justify-self:end;align-items:center;gap:16px;display:flex}.footer-dot{background:#5c8a70;border-radius:50%;flex-shrink:0;width:6px;height:6px}.main-shell main{max-width:1440px;margin:auto;padding:24px 28px 20px}.page-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}h1{letter-spacing:-.035em;font-size:30px;font-weight:750;line-height:1.25}.page-heading p{color:var(--text-secondary);margin-top:6px;line-height:1.6}.page-heading>.ui-button{flex-shrink:0}.ui-button{font-size:13px;line-height:1.4}.ui-button.bg-primary,.ui-button.bg-destructive{color:#fff}.ui-button.bg-primary:hover{background:var(--brand-hover)}.ui-button:active:not(:disabled){transform:translateY(1px)}.ui-button:focus-visible{outline:2px solid var(--brand);outline-offset:3px}.toolbar-separator{background:var(--border);flex-shrink:0;width:1px;height:24px;margin:0 4px}.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.stat-card{border-radius:var(--radius-panel);background:var(--surface);border:1px solid var(--border);min-width:0;padding:16px}.stat-top{color:var(--text-secondary);justify-content:space-between;align-items:center;gap:8px;font-size:12px;font-weight:500;display:flex}.stat-icon{background:var(--surface-subtle);width:32px;height:32px;color:var(--text-secondary);border-radius:8px;place-items:center;display:grid}.stat-card>strong{letter-spacing:-.035em;font-variant-numeric:tabular-nums;white-space:nowrap;margin-top:12px;font-size:26px;font-weight:750;line-height:1.4;display:block}.stat-caption{color:var(--text-secondary);align-items:center;gap:6px;min-height:16px;margin-top:8px;font-size:10px;line-height:1.5;display:flex}.balance-stat{background:var(--brand);border-color:var(--brand);color:#fff}.balance-stat .stat-top,.balance-stat .stat-caption{color:#d1e6db}.balance-stat .stat-icon{color:#d1e6db;background:#2d6052}.balance-stat .stat-caption{flex-wrap:wrap}.balance-stat .stat-caption svg{flex-shrink:0}.balance-stat .stat-caption.down{color:#ffd4d4}.balance-stat>strong.negative{color:#ffd4d4!important}.income-icon{background:var(--income-bg);color:var(--income)}.expense-icon{background:var(--expense-bg);color:var(--expense)}.legend-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.green{background:var(--income)}.orange{background:var(--expense)}.purple{background:var(--invoice)}.calendar-panel,.table-panel,.invoice-panel,.chart-panel,.category-panel,.commitment-chart-panel,.commitment-month-panel,.installment-endings{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-panel);min-width:0;overflow:hidden}.panel-heading{justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}h2,h3{letter-spacing:-.02em;font-size:16px;font-weight:750;line-height:1.4}.panel-subtitle{color:var(--text-secondary);margin-top:5px;font-size:12px;line-height:1.6;display:block}.calendar-panel-actions{align-items:center;gap:24px;display:flex}.calendar-legend{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:14px;font-size:11px;display:flex}.calendar-legend>span{align-items:center;gap:6px;display:flex}.view-switch{background:var(--surface-subtle);border:1px solid var(--border);border-radius:8px;gap:4px;padding:4px;display:flex}.view-switch button{min-height:36px;color:var(--text-secondary);background:0 0;border:0;border-radius:5px;justify-content:center;align-items:center;gap:6px;padding:7px 10px;font-size:12px;display:flex}.view-switch button[aria-pressed=true]{color:var(--brand);background:var(--surface);font-weight:700;box-shadow:0 1px 3px #174e4014}.view-switch button:hover{color:var(--brand)}.weekdays{text-align:center;color:var(--text-secondary);background:var(--surface-subtle);border-block:1px solid var(--border);grid-template-columns:repeat(7,minmax(0,1fr));padding:12px 0;font-size:11px;font-weight:600;display:grid}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-cell{text-align:left;border:0;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface);flex-direction:column;min-width:0;min-height:152px;padding:10px;display:flex;position:relative}.calendar-cell:nth-child(7n){border-right:0}.calendar-cell:nth-last-child(-n+7){border-bottom:0}.calendar-cell:focus-visible{z-index:1;outline-offset:-3px}.calendar-cell.outside{background:var(--surface-subtle);color:#89998f;padding:14px;font-size:12px}.day-top{align-items:center;gap:6px;height:28px;margin-bottom:8px;display:flex}.day-number{width:26px;height:26px;color:var(--text-secondary);place-items:center;font-size:12px;font-weight:600;display:grid}.is-today .day-number{background:var(--brand);color:#fff;border-radius:50%}.today-label{color:var(--brand);font-size:10px;font-weight:600}.day-add{opacity:0;color:var(--brand);margin-left:auto}.calendar-cell:hover .day-add,.calendar-cell:focus-visible .day-add{opacity:1}.day-events{flex-direction:column;gap:4px;margin:0 -3px 12px;display:flex}.calendar-event{border-radius:4px;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;padding:5px 7px;font-size:10px;line-height:1.4;display:flex}.event-description{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-weight:600;overflow:hidden}.calendar-event>span:last-child{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:10px;font-weight:600}.calendar-event.income{background:var(--income-bg);color:var(--income)}.calendar-event.expense{background:var(--expense-bg);color:var(--expense)}.calendar-event.invoice{background:var(--invoice-bg);color:var(--invoice)}.more-events{color:var(--text-secondary);padding:3px 5px;font-size:10px}.day-balance{gap:2px;margin-top:auto;display:grid}.day-balance small{color:var(--text-secondary);font-size:9px}.day-balance strong{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px;font-weight:650}.is-negative .day-balance strong,.negative{color:var(--error)!important}.calendar-cell.is-negative{background:#fff8f7}.mobile-agenda,.view-agenda .weekdays,.view-agenda .calendar-grid{display:none}.view-agenda .mobile-agenda{display:block}.agenda-toolbar{background:var(--surface-subtle);border-block:1px solid var(--border);color:var(--text-secondary);justify-content:space-between;align-items:center;gap:16px;padding:12px 24px;font-size:11px;display:flex}.agenda-toolbar .check-row{font-size:11px}.agenda-day{text-align:left;background:var(--surface);border:0;border-bottom:1px solid var(--border);gap:20px;width:100%;padding:20px 24px;display:flex}.agenda-day:last-child{border-bottom:0}.agenda-day:hover{background:var(--surface-subtle)}.agenda-day.is-today{background:#f1f7f3}.agenda-date{width:40px;color:var(--text-secondary);flex-direction:column;flex-shrink:0;align-items:center;gap:2px;display:flex}.agenda-date strong{color:var(--text);letter-spacing:-.03em;font-size:22px;font-weight:700}.agenda-date span{font-size:11px}.agenda-day.is-today .agenda-date strong{color:var(--brand)}.agenda-movements{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.agenda-movements>div:not(.agenda-balance){justify-content:space-between;align-items:baseline;gap:12px;font-size:13px;display:flex}.agenda-movements strong{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:650}.agenda-movements>.muted{font-size:12px}.agenda-balance{color:var(--text-secondary);justify-content:space-between;gap:12px;margin-top:3px;font-size:11px;display:flex}.agenda-balance strong{color:var(--text);font-size:12px}.agenda-balance.negative strong{color:var(--error)}.calendar-bottom{color:var(--text-secondary);justify-content:space-between;align-items:center;gap:16px;margin:16px 0 0;font-size:10px;line-height:1.6;display:flex}.calendar-bottom>span:first-child{align-items:center;gap:7px;display:flex}.page-footer{border-top:1px solid var(--border);color:var(--text-secondary);justify-content:space-between;align-items:center;gap:16px;margin-top:32px;padding-top:16px;font-size:10px;display:flex}.page-footer>span,.page-footer button{align-items:center;gap:8px;display:flex}.page-footer button{background:0 0;border:0;border-radius:8px;min-height:44px;padding:8px;font-size:10px}.page-footer button:hover{background:var(--surface-selected);color:var(--brand)}.warning,.negative-notice{color:var(--warning);background:var(--warning-bg);border:1px solid #ead8b8;border-radius:8px;align-items:flex-start;gap:12px;margin-bottom:24px;padding:16px 20px;font-size:13px;line-height:1.6;display:flex}.negative-notice{margin:24px 0 0}.negative-notice>svg{margin-top:2px}.negative-notice p{margin-top:4px;font-size:12px}.income-text{color:var(--income)!important}.expense-text{color:var(--expense)}.invoice-text{color:var(--invoice)}.muted{color:var(--text-secondary)}.dialog-overlay{z-index:var(--z-overlay);background:#12281f70;animation:.16s ease-out fade;position:fixed;inset:0}.dialog-content{overscroll-behavior:contain;background:var(--surface);border-radius:var(--radius-dialog);width:calc(100% - 40px);max-width:540px;max-height:90dvh;z-index:var(--z-dialog);animation:.16s ease-out fade;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 24px 80px #10281f30}.dialog-wide{max-width:740px}.dialog-header{border-bottom:1px solid var(--border);padding:28px 64px 24px 28px}.dialog-title{letter-spacing:-.03em;font-size:22px;font-weight:750;line-height:1.35}.dialog-description{color:var(--text-secondary);margin-top:8px;font-size:13px;line-height:1.7}.dialog-body{padding:24px 28px 28px}.dialog-close{width:44px;height:44px;color:var(--text-secondary);background:0 0;border:0;border-radius:8px;place-items:center;display:grid;position:absolute;top:20px;right:16px}.dialog-close:hover{background:var(--surface-selected);color:var(--brand)}.form-stack{flex-direction:column;gap:20px;display:flex}.form-stack fieldset{border:0;min-width:0;margin:0;padding:0}.field{flex-direction:column;flex:1;gap:8px;min-width:0;font-size:13px;display:flex}.field>label,.field>span{color:var(--text);font-size:12px;font-weight:650;line-height:1.5}.field input,.field .select-trigger,.filters .select-trigger,.commitment-month-panel .select-trigger{border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--surface);width:100%;height:48px;color:var(--text);padding:0 12px;font-size:14px}.field input:hover,.field .select-trigger:hover{border-color:#91ad9d}.field input:focus,.field .select-trigger:focus{border-color:var(--brand);outline-offset:1px;outline:2px solid #174e4020}.field input[aria-invalid=true],.field .select-trigger[aria-invalid=true]{border-color:var(--error)}.field input:disabled,.field .select-trigger:disabled{background:var(--surface-subtle);color:var(--text-secondary);cursor:not-allowed}.money-input{width:100%;min-width:0;position:relative}.money-input-prefix{color:var(--text-secondary);pointer-events:none;inset-inline-start:13px;font-size:14px;position:absolute;top:50%;transform:translateY(-50%)}.field .money-input input,.reserve-setup .money-input input{font-variant-numeric:tabular-nums;padding-inline-start:42px}.money-input:has(input:disabled) .money-input-prefix{opacity:.6}.field-error{color:var(--error);font-size:12px;line-height:1.6}.form-row{gap:16px;display:flex}.form-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:12px;margin-top:4px;padding-top:20px;display:flex}.dialog-body>.form-actions:only-child{border-top:0;margin-top:0;padding-top:0}.segmented{background:var(--surface-subtle);border:1px solid var(--border);border-radius:10px;gap:4px;padding:4px;display:flex}.segmented button{min-height:44px;color:var(--text-secondary);background:0 0;border:0;border-radius:7px;flex:1;justify-content:center;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.segmented button:hover{color:var(--text)}.segmented button.active{background:var(--surface);color:var(--expense);box-shadow:0 1px 4px #174e4012}.segmented button.active.income{color:var(--income)}.segmented button.active.card-mode{color:var(--invoice)}.check-row{min-height:28px;color:var(--text);cursor:pointer;align-items:center;gap:10px;font-size:13px;display:flex}.check-row input{width:18px;height:18px;accent-color:var(--brand);flex-shrink:0}.note{color:var(--text-secondary);font-size:12px;line-height:1.75}.danger{font-size:12px;line-height:1.7;color:var(--error)!important}.invoice-preview{background:var(--surface-selected);color:var(--brand);border-radius:8px;align-items:center;gap:12px;padding:16px;display:flex}.invoice-preview>div{flex:1;gap:5px;min-width:0;display:grid}.invoice-preview strong{font-size:13px}.invoice-preview span{font-size:12px;line-height:1.6}.recurrence-option{border:1px solid var(--border);background:var(--surface-subtle);border-radius:8px;padding:16px}.recurrence-option.enabled{border-color:var(--border-strong);background:#f5f9f6}.recurrence-option strong{font-weight:650}.recurrence-option p{color:var(--text-secondary);margin-top:6px;font-size:12px;line-height:1.7}.recurrence-option>.field,.recurrence-frequency{margin-top:16px}.recurrence-frequency>.field{margin-bottom:16px}.recurrence-preview{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.recurrence-preview>span{background:var(--surface);border:1px solid var(--border);border-radius:6px;gap:3px;padding:8px 10px;display:grid}.recurrence-preview strong{font-size:11px;font-weight:650}.recurrence-preview small{color:var(--text-secondary);font-size:10px}.installment-option{border:1px solid var(--border);background:var(--surface-subtle);border-radius:8px;flex-wrap:wrap;align-items:flex-start;gap:16px;padding:16px;display:flex}.installment-option>.field:first-child{flex-basis:60%}.installment-option>.note,.installment-option[data-billing=recurring]>.field:first-child{flex-basis:100%}.installment-option:not(:has(input))>.field:first-child{flex-basis:100%}.installment-option>.form-stack{flex-basis:100%;width:100%;min-width:0}.detail-balance{background:var(--surface-selected);border-radius:10px;gap:8px;padding:20px;display:grid}.detail-balance>span{color:var(--text-secondary);font-size:12px}.detail-balance>strong{letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--brand);font-size:30px;font-weight:750}.day-detail-list{margin:12px 0 20px}.detail-event{border:0;border-bottom:1px solid var(--border);text-align:left;background:0 0;align-items:center;gap:12px;width:100%;padding:16px 0;display:flex}.detail-event:hover{background:var(--surface-subtle)}.detail-event>div:nth-child(2){flex:1;min-width:0}.detail-event strong{font-size:13px;font-weight:650;display:block}.detail-event>div>span{color:var(--text-secondary);margin-top:4px;font-size:11px;display:block}.detail-event-right{text-align:right}.detail-event-right .status{margin-top:6px;display:inline-flex}.movement-icon{background:var(--expense-bg);width:38px;height:38px;color:var(--expense);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.movement-icon.in{background:var(--income-bg);color:var(--income)}.movement-icon.credit{background:var(--invoice-bg);color:var(--invoice)}.status{min-height:24px;color:var(--text-secondary);white-space:nowrap;background:#f0f3f1;border-radius:5px;align-items:center;gap:5px;padding:3px 8px;font-size:10px;font-weight:600;display:inline-flex}.status-dot{background:currentColor;border-radius:50%;width:4px;height:4px}.status.done{color:var(--income);background:var(--income-bg)}.status.pending{color:var(--warning);background:var(--warning-bg)}.credit-status{color:var(--invoice);background:var(--invoice-bg)}.filters{align-items:center;gap:12px;padding:0 24px 24px;display:flex}.search-field{border:1px solid var(--border-strong);min-width:160px;height:44px;color:var(--text-secondary);background:var(--surface);border-radius:8px;flex:1;align-items:center;gap:10px;padding:0 12px;display:flex}.search-field:focus-within{border-color:var(--brand);outline:2px solid #174e4020}.search-field input{background:0 0;border:0;outline:none;width:100%;height:100%;font-size:13px}.filters>.select-trigger{flex-shrink:0;width:200px;max-width:none;height:44px;font-size:13px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:12px}thead{background:var(--surface-subtle);color:var(--text-secondary)}th{white-space:nowrap;border-block:1px solid var(--border);height:44px;font-size:11px;font-weight:600}th,td{padding:16px}th:first-child,td:first-child{padding-left:24px}th:last-child,td:last-child{padding-right:24px}td{border-bottom:1px solid var(--border)}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--surface-subtle)}.transaction-description{text-align:left;background:0 0;border:0;align-items:center;gap:12px;min-height:44px;padding:0;display:flex}.transaction-description>span:last-child{gap:5px;display:grid}.transaction-description strong{font-size:13px;font-weight:650}.transaction-description small{color:var(--text-secondary);align-items:center;gap:4px;font-size:10px;display:flex}.text-right{text-align:right}.amount{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px;font-weight:650}.category-tag{color:var(--text-secondary);background:var(--surface-subtle);border:1px solid var(--border);white-space:nowrap;border-radius:5px;padding:3px 8px;font-size:10px;display:inline-block}.actions-column{vertical-align:middle;width:132px}.row-actions{grid-template-columns:44px 44px;align-items:center;gap:4px;width:92px;margin-left:auto;display:grid}.row-actions .ui-button{color:var(--text-secondary)}.row-actions .ui-button:hover{color:var(--brand)}.row-actions .row-action-delete:hover{color:var(--error)}.row-actions svg{width:15px;height:15px}.table-note{color:var(--text-secondary);background:var(--surface-subtle);border-top:1px solid var(--border);align-items:flex-start;gap:8px;padding:16px 24px;font-size:11px;line-height:1.7;display:flex}.table-note svg{margin-top:2px}.count-badge{background:var(--surface-selected);min-width:24px;height:24px;color:var(--brand);vertical-align:middle;border-radius:6px;place-items:center;margin-left:6px;padding:0 6px;font-size:11px;font-weight:700;display:inline-grid}.section-title{justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;display:flex}.section-title h3{font-size:14px}.cards-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:40px;display:grid}.bank-card{text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-panel);flex-direction:column;min-height:208px;padding:24px;display:flex;position:relative;overflow:hidden}.bank-card:hover{border-color:var(--brand);background:#f8fbf9}.bank-card.selected{background:var(--brand);color:#fff;border-color:var(--brand)}.bank-card-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.bank-logo{color:var(--card-color,var(--brand));letter-spacing:-.04em;font-size:24px;font-weight:800;line-height:1}.selected .bank-logo{color:#d6eadf}.bank-card-top>svg{opacity:.7}.bank-card-name{align-items:center;gap:8px;margin-top:12px;font-size:14px;font-weight:700;display:flex}.bank-card-name>span{opacity:.8;border:1px solid;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:500}.bank-card-bottom{justify-content:space-between;align-items:flex-end;gap:12px;margin-top:auto;padding-top:24px;display:flex}.bank-card-bottom>div{gap:4px;display:grid}.bank-card-bottom>div>span{opacity:.85;font-size:11px}.bank-card-bottom strong{letter-spacing:-.03em;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:23px;font-weight:700}.card-dates{text-align:right;opacity:.8;white-space:nowrap;font-size:10px;line-height:1.8}.add-card-tile{border:1px dashed var(--border-strong);border-radius:var(--radius-panel);text-align:center;min-height:208px;color:var(--text-secondary);background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:24px;display:flex}.add-card-tile:hover{background:var(--surface-selected);border-color:var(--brand);color:var(--brand)}.add-card-tile>span{width:40px;height:40px;color:var(--brand);background:var(--surface-selected);border-radius:50%;place-items:center;margin-bottom:4px;display:grid}.add-card-tile strong{font-size:13px;font-weight:700}.add-card-tile small{font-size:11px}.invoice-panel{margin-top:32px;scroll-margin-top:24px}.invoice-layout{border-top:1px solid var(--border);grid-template-columns:310px minmax(0,1fr);display:grid}.invoice-sidebar{background:var(--surface-subtle);border-right:1px solid var(--border);padding:24px}.invoice-sidebar .select-trigger{font-size:12px}.invoice-sidebar .period-control .select-trigger{height:auto;min-height:52px;padding-block:8px}.invoice-sidebar .select-value{white-space:normal;line-height:1.6}.invoice-total{gap:6px;margin:24px 0;display:grid}.invoice-total>span:first-child{color:var(--text-secondary);font-size:12px}.invoice-total strong{letter-spacing:-.035em;font-variant-numeric:tabular-nums;font-size:32px;font-weight:750}.invoice-total>span:last-child{color:var(--text-secondary);font-size:11px}.invoice-dates{justify-content:space-between;gap:16px;margin-bottom:24px;display:flex}.invoice-dates>span{color:var(--text-secondary);gap:8px;font-size:11px;display:grid}.invoice-dates strong{color:var(--text);font-weight:600}.future-commitment{border-top:1px solid var(--border);gap:5px;margin-top:24px;padding-top:20px;display:grid}.future-commitment span,.future-commitment small{color:var(--text-secondary);font-size:11px}.future-commitment strong{font-variant-numeric:tabular-nums;font-size:20px;font-weight:700}.invoice-heading-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.invoice-composition-trigger{width:auto;margin:0}.invoice-composition-trigger .count-badge{min-width:20px;height:20px;margin-left:2px}.invoice-composition-dialog{flex-direction:column;max-height:calc(100dvh - 32px);display:flex;overflow:hidden}.invoice-composition-dialog .dialog-header{flex-shrink:0}.invoice-composition-dialog .dialog-body{flex-direction:column;min-height:0;padding-bottom:8px;display:flex;overflow:hidden}.invoice-lines{min-width:0;padding:20px 24px}.invoice-composition-dialog .invoice-lines{overscroll-behavior:contain;flex-direction:column;flex:auto;min-height:0;padding:0;display:flex;overflow:auto}.invoice-composition-dialog .invoice-line-filters{z-index:1;background:var(--surface);margin:0;padding-bottom:8px;position:sticky;top:0}.invoice-composition-dialog .invoice-line-scroll{max-height:none;overflow:visible}.invoice-line-filters{gap:8px;margin-bottom:4px;display:grid}.invoice-line-filters .search-field{min-width:0;height:40px}.invoice-kind-filters{flex-wrap:wrap;gap:6px;display:flex}.invoice-kind-filters button{border:1px solid var(--border);background:var(--surface);min-height:36px;color:var(--text-secondary);border-radius:8px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:650;display:inline-flex}.invoice-kind-filters button span{font-variant-numeric:tabular-nums;font-size:11px}.invoice-kind-filters button[aria-pressed=true]{background:var(--surface-selected);border-color:var(--brand);color:var(--brand)}.invoice-filter-meta{color:var(--text-secondary);justify-content:space-between;align-items:baseline;gap:12px;font-size:12px;display:flex}.invoice-filter-meta strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:14px}.invoice-line-scroll{overscroll-behavior:contain;max-height:420px;overflow:auto}.invoice-line{border:0;border-bottom:1px solid var(--border);text-align:left;background:0 0;align-items:center;gap:12px;width:100%;padding:16px 0;display:flex}.invoice-line:hover{background:var(--surface-subtle)}.invoice-line>div{flex:1;gap:4px;min-width:0;display:grid}.invoice-line>div>strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:650;overflow:hidden}.invoice-line>div>span{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.invoice-line>strong{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px;font-weight:700}.invoice-line>svg{color:var(--text-secondary)}.installment-badge{color:var(--invoice);background:var(--invoice-bg);white-space:nowrap;border-radius:5px;padding:4px 7px;font-size:10px}.balance-chart{height:260px;padding:0 12px 12px 0}.chart-label{color:var(--text-secondary);align-items:center;gap:7px;font-size:11px;display:flex}.chart-loading{height:100%;color:var(--text-secondary);background:var(--surface-subtle);place-items:center;font-size:13px;display:grid}.summary-grid{grid-template-columns:1.25fr 1fr;align-items:start;gap:16px;margin-top:16px;display:grid}.dashboard-grid{grid-template-columns:1.2fr .8fr;align-items:start;gap:16px;display:grid}.dashboard-side{align-content:start;gap:16px;display:grid}.dashboard-chart{height:220px}.dashboard-list{display:grid}.dashboard-row{border:0;border-top:1px solid var(--border);text-align:left;background:0 0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;padding:14px 20px;display:grid}.dashboard-row:hover{background:var(--surface-selected)}.dashboard-row span{color:var(--text-secondary);white-space:nowrap;font-size:12px}.dashboard-row strong{overflow-wrap:anywhere;font-size:13px;font-weight:650}.dashboard-row b{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px;font-weight:700}.dashboard-row.income b{color:var(--income)}.dashboard-row.expense b{color:var(--expense)}.panel-text-link{color:var(--brand);align-items:center;min-height:44px;font-size:12px;font-weight:700;display:inline-flex}.category-panel .empty-state{padding:28px 20px}.category-list{padding:0 20px 16px}.category-row{padding:8px 0}.category-row>div:first-child{align-items:center;gap:10px;font-size:12px;display:flex}.category-row>div:first-child>span:first-child{border-radius:3px;flex-shrink:0;width:8px;height:8px}.category-row strong{flex:1;font-weight:600}.category-row>div>span{color:var(--text-secondary);font-size:11px}.category-row b{text-align:right;font-variant-numeric:tabular-nums;min-width:90px;font-size:12px;font-weight:700}.category-track{background:var(--surface-subtle);border-radius:4px;height:5px;margin-top:10px;overflow:hidden}.category-track span{border-radius:4px;height:100%;display:block}.month-reading{background:var(--surface-selected);border-radius:var(--radius-panel);padding:20px}.reading-icon{width:42px;height:42px;color:var(--brand);background:#daeade;border-radius:12px;place-items:center;margin-bottom:12px;display:grid}.month-reading h2{letter-spacing:-.025em;max-width:26ch;color:var(--brand);font-size:22px;line-height:1.4}.month-reading p{color:#4b6759;margin-top:12px;font-size:13px;line-height:1.8}.reading-number{border-top:1px solid #cddfd2;gap:6px;margin-top:16px;padding-top:12px;display:grid}.reading-number>span{color:#4b6759;font-size:12px}.reading-number strong{letter-spacing:-.03em;color:var(--brand);font-variant-numeric:tabular-nums;font-size:30px;font-weight:750}.month-reading p.note{margin-top:12px;font-size:11px}.empty-state{text-align:center;color:var(--text-secondary);flex-direction:column;align-items:center;gap:12px;padding:48px 24px;display:flex}.empty-state>svg{color:var(--brand);margin-bottom:4px}.empty-state h3{color:var(--text);font-size:16px}.empty-state p{max-width:42ch;font-size:13px;line-height:1.7}.empty-small{color:var(--text-secondary);padding:24px 0;font-size:13px;line-height:1.8}.setup-dialog{max-width:480px}.setup-account-form{gap:20px;display:grid}.setup-account-form .field{width:100%}.setup-account-form>small{color:var(--text-secondary);font-size:12px;line-height:1.6}.setup-account-form .form-actions{margin-top:0}.setup-account-form .form-actions>.ui-button{min-height:48px}.tour-resume-actions{flex-direction:column;gap:8px;display:flex}.tour-resume-actions .ui-button{width:100%}.clareza-tour{color:var(--text);background:var(--surface);border-radius:var(--radius-dialog);max-width:380px;padding:20px;font-family:Manrope,Segoe UI,sans-serif;box-shadow:0 24px 80px #10281f30}.clareza-tour .driver-popover-title{letter-spacing:-.02em;color:var(--text);padding-right:28px;font-size:16px;font-weight:750}.clareza-tour .driver-popover-description{color:var(--text-secondary);font-size:13px;line-height:1.7}.clareza-tour .driver-popover-progress-text{color:var(--text-secondary);font-size:12px}.clareza-tour .driver-popover-footer-btn{border-color:var(--border-strong);min-height:40px;color:var(--text);border-radius:8px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:600}.clareza-tour .driver-popover-next-btn{background:var(--brand);color:#fff;border-color:var(--brand)}.clareza-tour .driver-popover-next-btn:hover,.clareza-tour .driver-popover-next-btn:focus{background:var(--brand-hover)}.clareza-tour .driver-popover-close-btn{color:var(--text-secondary);width:32px;height:32px}.commitments-section{margin-top:var(--space-6)}.commitment-heading{align-items:flex-end;gap:24px;margin-bottom:20px}.commitment-heading h2{font-size:20px}.commitment-heading p{color:var(--text-secondary);margin-top:6px;font-size:13px;line-height:1.7}.commitment-filter{flex:0 0 220px}.commitment-stats{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-panel);grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 24px;display:grid;overflow:hidden}.commitment-stats>div{border-right:1px solid var(--border);gap:8px;padding:24px;display:grid}.commitment-stats>div:last-child{border-right:0}.commitment-stats>div>span{color:var(--text-secondary);align-items:center;gap:8px;font-size:12px;display:flex}.commitment-stats strong{letter-spacing:-.03em;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:25px;font-weight:750}.commitment-stats small{color:var(--text-secondary);font-size:11px}.commitment-decrease strong{color:var(--income)}.commitment-legend{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.commitment-legend>span{color:var(--text-secondary);align-items:center;gap:7px;font-size:11px;display:flex}.commitment-legend i{border-radius:3px;width:8px;height:8px;display:block}.commitment-chart-scroll{contain:inline-size;overscroll-behavior-x:contain;padding:16px 24px 0;overflow-x:auto}.commitment-chart{gap:20px;min-width:750px;height:260px;display:flex}.commitment-scale{text-align:right;width:80px;height:198px;color:var(--text-secondary);flex-direction:column;flex-shrink:0;justify-content:space-between;padding-top:20px;font-size:10px;display:flex}.commitment-bars{flex:1;grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:8px;display:grid;position:relative}.commitment-bar{min-width:0;height:260px;color:var(--text-secondary);cursor:default;background:0 0;border:0;border-radius:8px;flex-direction:column;align-items:center;padding:0 4px;display:flex}.commitment-column{border-bottom:1px solid var(--border);flex-direction:column;justify-content:flex-end;align-items:center;width:100%;height:198px;padding-top:24px;display:flex;position:relative}.commitment-stack{opacity:.8;border-radius:4px 4px 0 0;flex-direction:column;flex-shrink:0;justify-content:flex-end;width:min(100%,32px);display:flex;overflow:hidden}.commitment-stack span{flex-shrink:0;width:100%;display:block}.commitment-stack.empty{background:var(--border-strong);min-height:3px}.commitment-bar.selected{background:var(--surface-selected);color:var(--brand)}.commitment-bar.selected .commitment-stack{opacity:1}.commitment-bar-amount{white-space:nowrap;font-variant-numeric:tabular-nums;margin-bottom:8px;font-size:9px;font-weight:650}.commitment-bar-label{text-transform:capitalize;flex-direction:column;align-items:center;gap:4px;margin-top:12px;font-size:12px;display:flex}.commitment-bar-label small{font-size:9px}.commitment-chart-note{border-top:1px solid var(--border);color:var(--text-secondary);padding:16px 24px;font-size:11px;line-height:1.8}.commitment-chart-note strong{color:var(--text);font-weight:650}.commitment-swipe{display:none}.commitment-detail-grid{grid-template-columns:1fr 1fr;gap:24px;margin-top:24px;display:grid}.commitment-detail-grid h3{font-size:15px}.commitment-month-panel .panel-heading{flex-wrap:wrap;align-items:flex-start;gap:16px}.commitment-month-panel .select-trigger{text-transform:capitalize;width:100%;height:44px;font-size:13px}.commitment-month-total{gap:6px;padding:0 24px 20px;display:grid}.commitment-month-total>span,.commitment-month-total small{color:var(--text-secondary);font-size:11px}.commitment-month-total strong{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:28px;font-weight:750}.commitment-invoices{padding:0 24px 8px}.commitment-invoice-row{border:0;border-top:1px solid var(--border);text-align:left;background:0 0;align-items:center;gap:10px;width:100%;padding:16px 0;display:flex}.commitment-invoice-row:hover{background:var(--surface-subtle)}.commitment-invoice-row>div{flex:1;gap:5px;min-width:0;display:grid}.commitment-invoice-row strong{font-size:12px;font-weight:650}.commitment-invoice-row>div>span{color:var(--text-secondary);font-size:10px}.commitment-invoice-row b{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.commitment-invoice-row>svg,.installment-endings .panel-heading>svg{color:var(--text-secondary)}.ending-list{flex-wrap:wrap;gap:6px;margin:0;padding:0 24px 16px;list-style:none;display:flex}.ending-list>li{min-width:0;max-width:min(100%,380px)}.ending-row{background:var(--surface);border:1px solid var(--border);text-align:left;border-radius:8px;justify-content:flex-start;align-items:center;gap:16px;width:max-content;max-width:100%;min-height:44px;padding:6px 10px;display:flex}.ending-row:hover{background:var(--surface-subtle)}.ending-row:focus-visible{outline-offset:-3px}.ending-purchase{flex:0 auto;gap:3px;min-width:0;display:grid}.ending-row strong{font-size:13px;font-weight:700;line-height:1.3}.ending-row small{color:var(--text-secondary);font-size:12px;font-weight:500;line-height:1.3}.ending-purchase strong,.ending-purchase small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ending-card{font-weight:500}.ending-remaining{font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0;align-items:center;gap:2px;display:flex}.ending-remaining strong{letter-spacing:-.02em;font-size:13px;font-weight:750}.ending-remaining svg{color:var(--text-secondary)}.installment-endings .panel-heading{align-items:flex-start}.ending-total{justify-items:end;gap:2px;display:grid}.ending-total span{max-width:18rem;color:var(--text-secondary);text-align:right;font-size:12px;line-height:1.35}.ending-total strong{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:20px;font-weight:750}.ending-pagination{justify-content:flex-end;align-items:center;gap:4px;margin:-4px 24px 16px;display:flex}.ending-pagination>span{color:var(--text-secondary);margin-right:4px;font-size:12px}.ending-pagination>div{display:flex}.ending-page{width:28px;height:28px;color:var(--text-secondary);background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.ending-page:hover:not(:disabled){background:var(--surface-subtle);color:var(--text)}.ending-page:disabled{opacity:.35}.installment-endings>.empty-small{padding:0 24px 24px}.card-context-filter{flex:0 0 230px}.card-scope-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:28px}.card-scope-grid .bank-card{min-height:184px}.card-scope-state{opacity:.9;align-items:center;gap:5px;font-size:10px;font-weight:600;display:inline-flex}.card-onboarding{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding-block:64px}.cards-page{flex-direction:column;gap:24px;display:flex}.cards-page .cards-workspace,.cards-page .subscriptions-panel,.cards-page .commitments-section{margin:0}.cards-page .panel-heading{padding:16px 24px}.cards-page .commitment-heading{margin-bottom:24px}.cards-page .subscription-row{padding:12px 24px}.cards-workspace{border:1px solid var(--border);background:var(--surface);border-radius:12px;margin-bottom:20px;scroll-margin-top:24px;overflow:hidden}.cards-workspace-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.cards-workspace-heading h2{font-size:20px}.scope-context{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;font-size:12px;display:flex}.workspace-period{flex-shrink:0;width:320px}.workspace-period>label{color:var(--text-secondary);margin-bottom:8px;font-size:11px;font-weight:600;display:block}.card-switcher{border-bottom:1px solid var(--border);padding:16px 24px}.card-switcher h2{color:var(--text-secondary);margin-bottom:12px;font-size:13px;font-weight:650}.card-switch-row{align-items:stretch;gap:12px;display:flex;overflow-x:auto}.card-tile{flex:240px;min-width:220px;max-width:280px;display:flex;position:relative}.card-tile>.card-switch{flex:auto;width:100%;min-width:0;max-width:none;height:100%}.card-tile>.card-switch .card-switch-name{padding-right:28px}.card-switch-edit{z-index:1;width:32px;height:32px;color:var(--text-secondary);background:0 0;border:0;border-radius:8px;place-items:center;display:grid;position:absolute;top:6px;right:6px}.card-switch-edit:hover{background:var(--surface);color:var(--brand)}.card-switch{border:1px solid var(--border);background:var(--surface);text-align:left;min-width:220px;max-width:280px;color:var(--text);border-radius:10px;flex:240px;align-content:start;gap:4px;padding:12px 14px;display:grid}.card-switch[aria-pressed=true]{border-color:var(--brand);background:var(--surface-selected)}.card-switch-name{align-items:center;gap:8px;min-width:0;font-size:14px;font-weight:700;display:flex}.card-switch-name i{border-radius:50%;flex-shrink:0;width:8px;height:8px}.card-switch>span:first-child{font-size:14px;font-weight:700}.card-switch>strong{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:20px;font-weight:750}.card-switch>small{color:var(--text-secondary);font-size:12px}.card-switch .card-ceiling-usage{border-top:1px solid var(--border);gap:6px;max-width:none;margin-top:8px;padding-top:8px}.card-switch .card-ceiling-line{color:inherit;justify-content:space-between;align-items:baseline;gap:12px;font-size:12px;display:flex}.card-switch .card-ceiling-line>span{color:var(--text-secondary);font-size:12px;font-weight:500}.card-switch .card-ceiling-line b{font-variant-numeric:tabular-nums;font-size:13px;font-weight:750}.card-switch .card-ceiling-track{height:6px}.card-switch .card-ceiling-usage>small{font-size:12px;line-height:1.4}.card-switch-add{border:1px dashed var(--border-strong);min-height:0;color:var(--text-secondary);background:0 0;border-radius:10px;flex:none;align-self:stretch;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:700;display:flex}.card-switch-add:hover{border-color:var(--brand);color:var(--brand);background:var(--surface-selected)}.cards-workspace-body{grid-template-columns:300px minmax(0,1fr);align-items:stretch;display:grid}.cards-workspace-body.single{grid-template-columns:1fr}.cards-workspace-body.single .invoice-panel{border-top:0;border-left:0}.cards-workspace .commitment-month-panel{background:var(--surface);border:0;border-radius:0}.cards-workspace .commitment-month-total{justify-content:space-between;align-items:baseline;gap:12px;padding:0 24px 16px;display:flex}.cards-workspace .commitment-month-total strong{letter-spacing:-.02em;font-size:15px;font-weight:700}.cards-workspace .commitment-invoices{padding:0 0 4px}.cards-workspace .commitment-invoice-row{border:0;border-top:1px solid var(--border);text-align:left;background:0 0;border-radius:0;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px 12px;width:100%;margin:0;padding:16px 24px;display:grid}.cards-workspace .commitment-invoice-row:hover{background:var(--surface-subtle)}.cards-workspace .commitment-invoice-row.selected{background:var(--surface-selected)}.cards-workspace .commitment-invoice-row:only-child,.cards-workspace .commitment-invoice-row:only-child.selected,.cards-workspace .commitment-invoice-row:only-child:hover{background:0 0}.cards-workspace .commitment-invoice-row>.movement-icon{border-radius:8px;grid-row:1;width:36px;height:36px}.invoice-pick-copy{gap:2px;min-width:0;display:grid}.invoice-pick-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:650;overflow:hidden}.cards-workspace .invoice-pick-copy b{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:18px;font-weight:750;line-height:1.15}.invoice-pick-meta{min-width:0;color:var(--text-secondary);flex-wrap:wrap;grid-column:1/-1;gap:2px 0;font-size:12px;line-height:1.45;display:flex}.invoice-pick-meta>span{white-space:nowrap}.invoice-pick-meta>span:not(:last-child):after{content:"·";margin:0 6px}.cards-workspace .commitment-invoice-row>.card-ceiling-usage{grid-column:1/-1;margin-top:2px}.cards-workspace .invoice-panel{border:0;border-left:1px solid var(--border);border-radius:0;min-width:0;margin:0;scroll-margin-top:24px}.invoice-detail-label{color:var(--text-secondary);margin-bottom:4px;font-size:11px;display:block}.invoice-back{display:none}.invoice-due-label{color:var(--text-secondary);font-size:12px;font-weight:500}.invoice-summary{border-bottom:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px 32px;margin:0;padding:0 24px 16px;display:grid}.invoice-summary .invoice-total{grid-area:1/1;margin:0}.invoice-summary .invoice-total strong{font-size:28px}.invoice-summary .invoice-payments{display:contents}.invoice-summary .invoice-settlement{grid-area:1/2;align-self:center}.invoice-summary .invoice-payments>.note,.invoice-summary .invoice-payment-history{grid-column:1/-1}.cards-workspace .installment-endings{border:0;border-top:1px solid var(--border);background:var(--surface);border-radius:0}.commitments-section>.commitment-heading{margin-top:0}.filter-explainer{color:var(--text-secondary);background:var(--surface-subtle);padding:12px 24px;font-size:11px;line-height:1.7}@keyframes fade{0%{opacity:0}to{opacity:1}}@media (width<=1199px) and (width>=768px){:root{--sidebar-width:84px}.sidebar{align-items:center;padding:24px 12px}.brand{padding:0}.brand-name,.workspace-label,.nav-item>span,.nav-chevron,.sidebar-bottom{display:none}.sidebar nav{gap:12px;width:100%;margin-top:40px}.nav-item{justify-content:center;min-height:52px;padding:12px}.nav-item>svg:first-child{width:21px;height:21px}.main-shell main{padding:24px}.topbar{padding-inline:32px}.stat-card{padding:16px}.stat-card>strong{font-size:24px}.stat-top{font-size:11px}.stat-icon{width:28px;height:28px}.calendar-panel-actions{gap:16px}.calendar-panel>.panel-heading{flex-wrap:wrap;align-items:flex-start}.calendar-legend{gap:10px}.invoice-layout{grid-template-columns:280px minmax(0,1fr)}.bank-card{padding:20px}.bank-card-bottom{flex-wrap:wrap}.card-dates{text-align:left}}@media (width<=1023px){.invoice-back{margin:12px 24px 0;display:inline-flex}.cards-workspace-body{grid-template-columns:1fr}.cards-workspace .invoice-panel{border-left:0;border-top:1px solid var(--border)}.cards-workspace .commitment-invoices{padding-bottom:8px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card>strong{font-size:28px}.stat-top{font-size:12px}.stat-caption{font-size:11px}.summary-grid,.dashboard-grid,.commitment-detail-grid,.invoice-layout{grid-template-columns:1fr}.invoice-sidebar{border-right:0;border-bottom:1px solid var(--border)}.cards-grid{gap:16px}.bank-card{min-height:240px}.bank-card-bottom strong{font-size:21px}.bank-card-bottom{flex-direction:column;align-items:flex-start;gap:12px}.card-dates{text-align:left}.commitment-stats>div{padding:20px 16px}.commitment-stats strong{font-size:23px}.filters{flex-wrap:wrap}.search-field{flex-basis:100%}}@media (width<=767px){.card-context-filter{flex-basis:100%}.field.month-context{width:100%}.card-context-filter .select-trigger{height:44px;font-size:14px}.cards-grid.card-scope-grid{scroll-snap-type:x proximity;gap:12px;margin-bottom:20px;padding-bottom:8px;display:flex;overflow-x:auto}.card-scope-grid .bank-card{scroll-snap-align:start;flex:0 0 250px;min-height:168px;padding:20px}.card-scope-grid .bank-card-bottom{padding-top:16px}.card-scope-grid .bank-card-bottom strong{font-size:24px}.card-scope-grid .bank-card-bottom>div>span{font-size:10px}.card-scope-grid .card-dates{font-size:9px}.cards-workspace-heading{flex-direction:column;align-items:stretch;gap:12px;padding:16px}.cards-workspace-heading h2{font-size:19px}.workspace-period{width:100%}.cards-workspace .commitment-invoices{grid-template-columns:1fr;padding-bottom:16px}.cards-workspace .commitment-invoice-row>svg{display:block}.invoice-heading-actions{flex-wrap:wrap;justify-content:flex-end}.invoice-summary{grid-template-columns:1fr;gap:16px;margin:0;padding:0 16px 16px}.cards-page .panel-heading{padding:16px}.cards-page .card-switcher{padding:12px 16px}.cards-page .cards-workspace .commitment-invoice-row{padding:16px}.cards-page .cards-workspace .commitment-month-total{padding:0 16px 16px}.invoice-summary .invoice-settlement{grid-area:2/1}.cards-workspace .invoice-panel .panel-heading{gap:12px}.cards-workspace .invoice-panel .panel-heading>.ui-button{min-height:44px}.filter-explainer{padding-inline:20px}:root{--sidebar-width:0px}body{font-size:14px}.sidebar{width:100%;padding:8px 8px max(8px, env(safe-area-inset-bottom));background:var(--surface);border-right:0;border-top:1px solid var(--border);inset:auto 0 0}.sidebar .brand,.workspace-label,.sidebar-bottom{display:none}.sidebar nav{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;display:grid}.nav-full{display:none}.nav-short{text-align:center;max-width:100%;line-height:1.15;display:block}.nav-item{text-align:center;border-radius:8px;flex-direction:column;justify-content:center;gap:5px;min-height:56px;padding:8px 2px;font-size:9px;font-weight:600}.nav-item>svg:first-child{width:20px;height:20px}.nav-chevron{display:none}.main-shell{padding-bottom:calc(128px + env(safe-area-inset-bottom));margin-left:0}.topbar{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"crumb actions""period period";gap:8px 12px;min-height:0;padding:10px 16px 12px}.breadcrumb{grid-area:crumb;gap:8px;font-size:11px}.topbar-period{grid-area:period}.topbar-period .main-period-control{flex:1;width:auto}.topbar-right{grid-area:actions;gap:6px}.topbar-avatar{width:30px;height:30px;font-size:10px}.main-shell main{padding:20px 16px 16px}.page-heading{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:16px}h1{font-size:27px}.page-heading p{margin-top:8px;font-size:13px}.page-heading>.ui-button{width:100%;min-height:46px}.main-period-control{gap:4px}.main-period-control .select-trigger{gap:6px;font-size:13px}.toolbar-separator{height:20px;margin:0}.stats{gap:12px;margin-bottom:16px}.stat-card{padding:16px 14px}.stat-top{gap:4px;font-size:11px}.stat-icon{border-radius:7px;width:26px;height:26px}.stat-icon svg{width:14px;height:14px}.stat-card>strong{margin-top:12px;font-size:23px}.stat-caption{align-items:flex-start;font-size:10px;line-height:1.6}.stat-caption .legend-dot{margin-top:5px}.stat-caption svg{display:none}.panel-heading{gap:12px;padding:16px}.panel-subtitle{font-size:11px}h2{font-size:15px}.calendar-panel>.panel-heading{flex-direction:column;align-items:stretch;gap:16px}.calendar-panel-actions{justify-content:space-between;gap:8px}.calendar-legend{gap:8px;font-size:9px}.calendar-legend>span{gap:4px}.view-switch{gap:2px;padding:3px}.view-switch button{gap:4px;min-height:40px;padding-inline:8px;font-size:10px}.view-switch button svg{width:13px}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-cell{min-height:76px;padding:4px}.calendar-cell.outside{padding:7px;font-size:10px}.day-top{gap:0;height:24px;margin-bottom:4px}.day-number{width:24px;height:24px;font-size:12px}.today-label,.day-add,.day-balance small{display:none}.day-events{flex-flow:wrap;gap:3px;margin:4px 0 8px}.calendar-event{border-radius:50%;width:6px;min-width:6px;height:6px;padding:0;background:currentColor!important}.calendar-event>span{display:none}.more-events{padding:0;font-size:8px}.day-balance{display:none}.weekdays{font-size:9px}.agenda-toolbar{padding:10px 16px}.agenda-toolbar>span{display:none}.agenda-toolbar .check-row{min-height:32px}.agenda-day{gap:12px;padding:18px 16px}.agenda-date{width:30px}.agenda-date strong{font-size:21px}.agenda-movements{gap:10px}.agenda-movements>div:not(.agenda-balance){align-items:flex-start;gap:8px;font-size:12px}.agenda-movements>div:not(.agenda-balance)>span{overflow-wrap:anywhere}.agenda-movements strong{font-size:12px}.agenda-balance{gap:8px;font-size:10px}.agenda-balance strong{font-size:11px}.calendar-bottom{font-size:10px;line-height:1.8}.calendar-bottom>span:last-child{display:none}.page-footer{flex-direction:column;align-items:flex-start;gap:4px;margin-top:28px;font-size:10px}.page-footer button{padding-left:0}.warning,.negative-notice{padding:16px;font-size:12px}.negative-notice p{font-size:11px}.dialog-content{width:calc(100% - 24px);max-height:92dvh}.dialog-header{padding:24px 56px 20px 20px}.dialog-body{padding:20px}.dialog-title{font-size:21px}.dialog-description{font-size:12px}.dialog-close{top:14px;right:10px}.form-stack{gap:20px}.field input,.field .select-trigger{font-size:16px}.form-row{gap:12px}.form-actions{flex-wrap:wrap}.form-actions .ui-button{flex:1;padding-inline:12px;font-size:12px}.segmented button{gap:6px;font-size:12px}.recurrence-frequency .form-row{flex-direction:column}.recurrence-option p{margin-left:0}.installment-option{flex-direction:column;align-items:stretch}.installment-option>.field:first-child{flex-basis:auto}.detail-event{gap:10px}.detail-event strong{font-size:11px}.detail-event>div>span{font-size:10px}.detail-event .movement-icon{width:32px;height:32px}.detail-balance>strong{font-size:28px}.filters{gap:10px;padding:0 20px 20px}.filters>.select-trigger{flex:1;width:0;min-width:0;max-width:none;padding:0 8px;font-size:12px}.search-field{flex-basis:100%}.table-scroll{overflow:visible}table,tbody{width:100%;min-width:0;display:block}thead{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}tbody tr{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;gap:10px 8px;padding:18px 20px 14px;display:grid}td,td:first-child,td:last-child{border:0;min-width:0;padding:0}td:first-child{grid-area:1/1/auto/-1}td:nth-child(2){color:var(--text-secondary);grid-area:3/1;font-size:10px}td:nth-child(2):before{content:"Data: "}td:nth-child(3){grid-area:2/1;align-self:center;padding-left:50px}td:nth-child(4){grid-area:1/2;align-self:start;padding-top:4px}td:nth-child(5){grid-area:3/2;place-self:center end;width:92px}.transaction-description{align-items:flex-start;gap:12px;max-width:calc(100% - 110px)}.transaction-description>span:last-child{min-width:0}.transaction-description strong{overflow-wrap:anywhere;font-size:12px}.transaction-description small{font-size:10px;display:block}.transaction-description small svg{vertical-align:middle;display:inline}.movement-icon{border-radius:8px;width:36px;height:36px}.amount{font-size:12px}.row-actions .ui-button{width:44px;height:44px}.table-note{padding:16px 20px;font-size:10px}.section-title{gap:12px}.section-title>.ui-button{padding-inline:10px;font-size:11px}.cards-grid{grid-template-columns:1fr;gap:12px;margin-bottom:32px}.bank-card{min-height:200px;padding:24px}.bank-card-bottom{flex-direction:row;align-items:flex-end;gap:12px;padding-top:24px}.bank-card-bottom strong{font-size:27px}.card-dates{text-align:right;font-size:11px}.add-card-tile{text-align:left;flex-direction:row;justify-content:flex-start;gap:12px;min-height:64px;padding:14px 20px}.add-card-tile>span{flex-shrink:0;width:32px;height:32px;margin:0}.add-card-tile small{max-width:16ch;margin-left:auto;font-size:10px}.invoice-panel .panel-heading{flex-wrap:wrap}.invoice-panel .panel-heading .ui-button{padding-inline:10px;font-size:11px}.invoice-sidebar,.invoice-lines{padding:20px}.invoice-total strong{font-size:30px}.invoice-line{flex-wrap:nowrap;align-items:center;gap:8px}.invoice-line>.movement-icon{display:none}.invoice-line>div{flex:auto;min-width:0}.invoice-line>div>strong{font-size:13px}.invoice-line>div>span{font-size:11px}.invoice-line>strong{font-size:12px}.invoice-line>svg{display:none}.installment-badge{order:3}.balance-chart{height:260px;padding-right:8px}.chart-panel .panel-heading{flex-wrap:wrap;gap:12px}.summary-grid{gap:16px;margin-top:16px}.dashboard-grid .panel-heading{flex-wrap:wrap;align-items:flex-start}.dashboard-row{grid-template-columns:auto minmax(0,1fr);padding-inline:16px}.dashboard-row b{grid-column:2;justify-self:end}.category-list{padding:0 16px 16px}.month-reading{padding:16px}.month-reading h2{font-size:22px}.commitment-heading{flex-direction:column;align-items:stretch;gap:20px}.commitment-heading h2{font-size:19px}.commitment-heading p{font-size:12px}.commitment-filter{flex-basis:auto}.commitment-filter .select-trigger{height:44px;font-size:14px}.commitment-stats{grid-template-columns:1fr 1fr}.cards-page .commitment-stats>div{padding:16px}.commitment-stats>div{padding:20px 12px}.commitment-stats>div:nth-child(2){border-right:0}.commitment-stats>div:last-child{border-top:1px solid var(--border);grid-column:1/-1}.commitment-stats>div>span{gap:6px;font-size:10px}.commitment-stats>div>span svg{width:14px;height:14px}.commitment-stats strong{font-size:22px}.commitment-stats small{font-size:10px}.commitment-chart-panel .panel-heading{flex-direction:column;align-items:flex-start;gap:16px}.commitment-chart-scroll{padding-inline:16px}.commitment-chart{gap:12px;min-width:820px}.commitment-chart-note{padding:16px;font-size:10px}.commitment-swipe{color:var(--brand);font-weight:600;display:inline}.commitment-detail-grid{gap:20px;margin-top:20px}.commitment-month-total{padding:0 20px 20px}.commitment-invoices{padding-inline:20px}.commitment-invoice-row{gap:8px}.commitment-invoice-row b{font-size:12px}.commitment-invoice-row>.movement-icon{width:32px;height:32px}.commitment-invoice-row>svg{display:none}.ending-list{padding-inline:16px}.invoice-line-scroll{max-height:320px}.ending-pagination{margin-inline:16px}.installment-endings>.empty-small{padding:0 16px 16px}.invoice-back{margin-inline:16px}}@media (width<=359px){.main-period-control{grid-template-columns:40px minmax(0,1fr) 40px;gap:0}.main-period-control .select-trigger{font-size:12px}.main-shell main{padding-inline:16px}.stat-card{padding:14px 12px}.stat-card>strong{font-size:20px}.stat-icon{display:none}.topbar-period .ui-button{padding-inline:8px}.calendar-panel-actions{flex-wrap:wrap;gap:12px}.form-row{flex-direction:column}.transaction-description{max-width:calc(100% - 100px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.calendar-home .balance-stat>strong{letter-spacing:-.035em}.calendar-panel .panel-heading{padding-block:20px}.calendar-panel .panel-subtitle{max-width:520px}.calendar-cell{gap:0;min-height:156px;padding:12px;transition:background-color .15s}.calendar-cell.quiet-day{background:var(--surface)}.calendar-cell:hover{background:var(--surface-selected)}.calendar-cell.is-today,.calendar-cell.is-negative{background:var(--surface)}.calendar-cell.selected{box-shadow:inset 0 0 0 2px var(--brand)}.day-top{height:26px;margin-bottom:8px}.day-number{width:26px;height:26px;color:var(--text-secondary);font-size:12px;font-weight:500}.day-balance{gap:2px;margin:auto 0 0;padding-top:12px}.day-balance strong{letter-spacing:-.015em;text-overflow:ellipsis;font-size:14px;font-weight:500;line-height:1.4;overflow:hidden}.quiet-day .day-balance strong{color:var(--text-secondary);font-weight:500}.day-balance strong.balance-long{letter-spacing:-.01em;font-size:12px}.day-balance .balance-compact{display:none}.day-events{gap:3px;margin:0 0 10px}.calendar-event{background:0 0;border:0;border-radius:0;grid-template-columns:3px minmax(0,1fr) auto;align-items:center;gap:4px;padding:2px 0;display:grid}.calendar-event.income,.calendar-event.expense,.calendar-event.invoice{color:var(--text-secondary);background:0 0}.calendar-event.income{--event-color:var(--income)}.calendar-event.expense{--event-color:var(--expense)}.calendar-event.invoice{--event-color:var(--invoice)}.calendar-event:before{content:"";background:var(--event-color);border-radius:50%;width:3px;height:3px}.calendar-event .event-description{font-size:9px;font-weight:400;line-height:1.6}.calendar-event>span:last-child{font-size:9px;font-weight:500;line-height:1.6}.more-events{padding:3px 0 0;font-size:10px}.calendar-grid-hint{display:none}.agenda-day{gap:24px;padding:22px 24px}.agenda-date{border-right:1px solid var(--border);align-self:stretch;width:52px;padding-right:16px}.agenda-date strong{letter-spacing:-.015em;font-size:20px;font-weight:500}.agenda-movements{gap:9px}.agenda-balance{border-top:1px solid var(--border);justify-content:flex-end;align-items:baseline;margin:8px 0 0;padding-top:12px}.agenda-balance strong{letter-spacing:-.015em;font-size:16px;font-weight:500;line-height:1.4}.agenda-movements>div:not(.agenda-balance){font-size:13px}.agenda-movements>div:not(.agenda-balance)>strong{font-size:13px;font-weight:550}.agenda-day.is-negative{background:var(--surface)}@media (width>=768px) and (width<=1100px){.day-balance strong{font-size:13px}.day-balance strong.balance-long{font-size:11px}.calendar-cell{padding:9px}.calendar-event{padding-inline:4px}.calendar-event>span:last-child{font-size:9px}}@media (width<=767px){.calendar-panel .panel-heading{padding-block:16px}.calendar-grid-hint{color:var(--text-secondary);margin:0;padding:0 16px 12px;font-size:10px;display:block}.view-agenda .calendar-grid-hint{display:none}.calendar-cell{min-height:100px;padding:6px 3px}.day-top{height:24px;margin-bottom:4px}.day-number{font-size:12px}.day-balance{margin:auto 0 0;padding-top:6px;display:block}.day-balance .balance-full{display:none}.day-balance .balance-compact{letter-spacing:-.01em;font-size:10px;font-weight:500;line-height:1.4;display:block}.calendar-event{border:0;padding:0;display:block}.calendar-event:before{display:none}.calendar-event.income,.calendar-event.expense,.calendar-event.invoice{color:var(--event-color);border-radius:50%}.day-events{justify-content:flex-start;gap:3px}.agenda-day{gap:14px;padding:20px 16px}.agenda-date{width:38px;padding-right:10px}.agenda-date strong{font-size:18px}.agenda-balance{flex-wrap:wrap;gap:8px}.agenda-balance strong{font-size:16px}.agenda-movements>div:not(.agenda-balance){font-size:12px}.agenda-movements>div:not(.agenda-balance)>strong{font-size:12px;font-weight:550}}.calendar-cell.outside,.agenda-day.is-today{background:var(--surface)}.quiet-day .day-balance strong{color:var(--text)}.day-variation{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--text-secondary);align-items:center;gap:3px;font-size:9px;font-weight:450;line-height:1.5;display:inline-flex}.day-variation.increased{color:var(--income)}.day-variation.decreased{color:var(--expense)}.day-variation svg{flex-shrink:0}.variation-equal{text-align:center;width:11px;display:inline-block}.agenda-balance .day-variation{margin-right:auto;font-size:11px}@media (width<=767px){.day-balance .day-variation{margin-bottom:2px;display:flex}.day-balance .variation-amount{display:none}.agenda-balance .variation-amount{display:inline}}.movement-dialog{flex-direction:column;max-width:600px;max-height:calc(100dvh - 32px);display:flex;overflow:hidden}.movement-dialog .dialog-header{flex-shrink:0;padding:18px 64px 18px 20px}.movement-dialog .dialog-title{font-size:20px}.movement-dialog .dialog-close{top:10px}.movement-dialog .dialog-body{overscroll-behavior:contain;min-height:0;padding:16px 20px 0;scroll-padding-bottom:80px;overflow-y:auto}.movement-dialog .form-stack{gap:14px}.movement-dialog .field{gap:6px}.movement-dialog .field input,.movement-dialog .field .select-trigger{height:44px}.movement-dialog .form-row{gap:12px}.movement-dialog .movement-types{margin:0}.movement-dialog .form-actions{z-index:2;background:var(--surface);flex-shrink:0;margin:0 -20px;padding:12px 20px;position:sticky;bottom:0}.movement-dialog .recurrence-option{background:0 0;border:0;border-radius:0;padding:0}.movement-dialog .recurrence-option>.check-row{gap:8px;min-height:44px;margin:0}.movement-dialog .recurrence-option>.check-row strong{font-size:13px;font-weight:500}.movement-dialog .recurrence-option>.field{margin-top:8px}.movement-dialog .recurrence-frequency{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:8px;display:grid}.movement-dialog .recurrence-frequency>.field{margin:0}.movement-dialog .recurrence-preview{color:var(--text-secondary);margin-top:8px;font-size:11px;line-height:1.6;display:block}.movement-dialog .recurrence-preview>span{background:0 0;border:0;padding:0;display:inline}.movement-dialog .recurrence-preview>span:after{content:": "}.movement-dialog .recurrence-preview strong{font-weight:450}.movement-dialog .installment-option{background:0 0;border:0;border-radius:0;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;padding:0;display:grid}.movement-dialog .installment-option[data-billing=installments]{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 76px}.movement-dialog .installment-option[data-billing=installments]>.field:first-child{grid-column:1/-1}.installment-calculation{color:var(--text-secondary);font-size:12px;line-height:1.6}.installment-calculation strong{color:var(--text)}.card-repeat-settings{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.movement-dialog .purchase-date-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:12px;display:grid}.cycle-adjustment-toggle{min-height:44px;color:var(--text-secondary);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-self:start;align-items:center;gap:6px;margin:0;padding:0 8px;font-size:12px;display:flex}.cycle-adjustment-toggle:hover{color:var(--brand);background:var(--surface-selected)}.cycle-adjustment-toggle:focus-visible{outline:2px solid var(--brand);outline-offset:3px}.cycle-adjustment-toggle:before{content:"›";font-size:18px;line-height:1}.cycle-adjustment-toggle[aria-expanded=true]{color:var(--brand)}.cycle-adjustment-toggle[aria-expanded=true]:before{transform:rotate(90deg)}.cycle-adjustment-panel{background:var(--surface-subtle);border-radius:8px;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;padding:12px;display:grid}.cycle-adjustment-panel .note{grid-column:1/-1;margin:0}.movement-dialog .subscription-preview summary{cursor:pointer;min-height:44px;color:var(--text-secondary);align-items:center;gap:8px;font-size:12px;display:flex}.movement-dialog .subscription-preview summary:before{content:"›";font-size:18px}.movement-dialog .subscription-preview[open] summary:before{transform:rotate(90deg)}.movement-dialog .subscription-preview{background:0 0;border:0;padding:0}.movement-dialog .subscription-preview p{margin:0;padding:6px 0;font-size:12px}.movement-dialog .invoice-preview{gap:10px;padding:10px 12px}.movement-dialog .invoice-preview strong{font-size:12px}.movement-dialog .invoice-preview span{font-size:11px}@media (width<=600px){.movement-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px)}.movement-dialog .dialog-header{padding:16px 60px 16px 16px}.movement-dialog .dialog-body{padding:14px 16px 0}.movement-dialog .form-actions{margin-inline:-16px;padding:12px 16px}.movement-dialog .field input{font-size:16px}.movement-dialog .field .select-trigger{gap:6px;font-size:13px}.movement-dialog .form-row{flex-direction:row}.movement-dialog .form-stack{gap:10px}.movement-dialog .essential-option{padding:8px 10px}.movement-dialog .essential-option small{display:none}.movement-dialog .recurrence-frequency>.field:has(.month-input){grid-column:1/-1}.card-repeat-settings>.field:has(.month-input){grid-column:1/-1}.movement-dialog .recurrence-preview strong{display:block}.movement-dialog .installment-option[data-billing=installments]{grid-template-columns:minmax(0,1fr) 84px}.movement-dialog .installment-option[data-billing=installments]>.field:nth-child(2){grid-column:1/-1}.movement-dialog .installment-option[data-billing=installments]>.field:nth-child(3){grid-column:1}.movement-dialog .installment-option[data-billing=installments]>.field:nth-child(4){grid-column:2;justify-self:end;width:84px}.cycle-adjustment-toggle{padding-inline:4px;font-size:11px}.cycle-adjustment-panel{grid-template-columns:1fr}}.essential-option{border:1px solid var(--border);background:var(--surface-subtle);border-radius:8px;align-items:flex-start;margin:0;padding:10px 12px}.essential-option span{flex-direction:column;gap:2px;display:flex}.essential-option strong{font-size:13px;font-weight:650}.essential-option small{color:var(--text-secondary);font-size:12px;line-height:1.4}.essential-option svg{color:var(--brand);flex-shrink:0;margin-top:1px}.report-layout{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:16px;display:grid}.report-main{gap:16px;min-width:0;display:grid}.report-filter-body{gap:16px;padding:4px 20px 20px;display:grid}.report-filter-body fieldset{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.report-filter-body legend{color:var(--text);font-size:12px;font-weight:750}.report-filter-actions{flex-wrap:wrap;gap:8px;display:flex}.report-filter-actions button,.report-choices button{border:1px solid var(--border-strong);background:var(--surface);min-height:36px;color:var(--text-secondary);cursor:pointer;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:650}.report-filter-actions button:hover,.report-choices button:hover{color:var(--brand);background:var(--surface-subtle)}.report-choices{flex-wrap:wrap;gap:6px;display:flex}.report-choices button[aria-pressed=true]{color:var(--brand);background:var(--surface-selected);border-color:var(--brand)}.report-checks{gap:2px;display:grid}.report-check{cursor:pointer;align-items:center;gap:8px;min-height:36px;font-size:13px;display:flex}.report-check:has(input:disabled){opacity:.45;cursor:default}.report-check input{width:18px;height:18px;accent-color:var(--brand);flex-shrink:0}.report-check span{min-width:0}.report-check b{font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto;font-size:12px;font-weight:700}.report-callout{border-top:1px solid var(--border);background:var(--surface-subtle);grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 16px;margin:0;padding:16px 20px;display:grid}.report-callout p{gap:2px;min-height:42px;margin:0;display:grid}.report-callout span{color:var(--text-secondary);font-size:11px;line-height:1.3}.report-callout strong{color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-size:16px;font-weight:750}.report-visual{grid-template-columns:minmax(220px,280px) minmax(0,1fr);align-items:start;gap:8px;padding-bottom:12px;display:grid}.report-visual .category-list{min-height:260px}.report-visual .category-row.is-muted{opacity:.4}.report-visual .report-share{font-variant-numeric:tabular-nums;text-align:right;min-width:3ch}.report-donut{height:260px;margin:0;position:relative}.report-donut-empty{height:100%;color:var(--text-secondary);text-align:center;place-content:center;justify-items:center;gap:8px;display:grid}.report-donut-empty strong{color:var(--text);font-size:14px}.report-donut-center{text-align:center;pointer-events:none;place-content:center;display:grid;position:absolute;inset:0}.report-donut-center span{color:var(--text-secondary);font-size:11px}.report-donut-center strong{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:18px;font-weight:750}.report-main .panel-subtitle{min-height:1.6em}.report-filter-body>.ui-button:disabled{opacity:.45}.report-list{align-content:start;min-height:240px;display:grid}.report-row{border:0;border-top:1px solid var(--border);text-align:left;cursor:pointer;background:0 0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;padding:14px 20px;display:grid}.report-row:hover{background:var(--surface-selected)}.report-row-main{gap:6px;min-width:0;display:grid}.report-row-main>strong{overflow-wrap:anywhere;font-size:14px;font-weight:700}.report-row-meta{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;display:flex}.report-row>b{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:14px;font-weight:750}.spend-badge{border-radius:999px;padding:2px 8px;font-size:10px;font-weight:750}.spend-badge.essential{color:var(--brand);background:var(--surface-selected)}.spend-badge.optional{color:var(--warning);background:var(--warning-bg)}@media (width<=900px){.report-layout,.report-visual{grid-template-columns:1fr}.report-callout{grid-template-columns:repeat(2,minmax(0,1fr))}.report-donut{height:240px}.report-visual .category-list{min-height:0}}.account-list{display:grid}.account-row{border-top:1px solid var(--border);grid-template-columns:12px minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:16px 20px;display:grid}.account-row:first-child{border-top:0}.account-swatch{border-radius:50%;width:12px;height:12px}.account-copy{gap:4px;min-width:0;display:grid}.account-copy strong{overflow-wrap:anywhere;font-size:14px;font-weight:700}.account-copy small{color:var(--text-secondary);align-items:center;gap:6px;font-size:12px;display:flex}.account-row>b{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:15px;font-weight:750}.balance-help{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding:14px 20px;display:flex}.balance-help p{max-width:46ch;color:var(--text-secondary);margin:0;font-size:13px;line-height:1.5}.reconcile-now{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.6}.reconcile-now strong,.reconcile-preview strong{color:var(--text);font-variant-numeric:tabular-nums;font-weight:750}.reconcile-preview{background:var(--surface-selected);color:var(--text-secondary);border-radius:12px;margin:0;padding:12px 14px;font-size:13px;line-height:1.6}.reserve-page{gap:8px;display:grid}.reserve-setup{gap:16px;padding:4px 20px 20px;display:grid}.reserve-setup .field{gap:8px;display:grid}.reserve-setup .field>span{font-size:12px;font-weight:650}.reserve-setup input{border:1px solid var(--border-strong);border-radius:var(--radius-control);height:48px;padding:0 12px}.reserve-setup small{color:var(--text-secondary);font-size:12px;line-height:1.6}.reserve-goal-copy,.reserve-nudge{padding:0 20px 16px;font-size:14px;line-height:1.7}.pot-split{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:12px;margin:4px 20px 0;padding-top:12px;display:grid}.pot-split .pot-hero-stat strong{font-size:16px}.yield-list,.yield-recall{gap:4px;margin:0;padding:0 12px 12px;list-style:none;display:grid}.yield-recall{max-height:148px;padding:0;overflow:auto}.yield-recall li,.yield-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;display:grid}.yield-recall li{border-bottom:1px solid var(--border);padding:8px 0;font-size:13px}.yield-recall li span{color:var(--text-secondary);overflow-wrap:anywhere}.yield-row{border-radius:10px;grid-template-columns:minmax(0,1fr) auto auto;padding:10px 8px}.yield-row strong{overflow-wrap:anywhere;font-size:14px;font-weight:700;display:block}.yield-meta{color:var(--text-secondary);font-size:12px}.yield-row b,.yield-recall b{font-variant-numeric:tabular-nums;white-space:nowrap}.yield-actions{display:flex}.yield-preview{background:var(--surface-selected);color:var(--text-secondary);border-radius:12px;margin:0;padding:12px 14px;font-size:13px;line-height:1.6}.reserve-nudge{color:var(--text-secondary)}.reserve-page .panel-text-link{margin:0}.reserve-guidance{justify-items:start;padding:0 20px 12px;display:grid}.reserve-guidance .reserve-nudge{padding:0}.backup-dialog{width:min(600px,100vw - 32px);max-width:600px}.backup-content{gap:20px;display:grid}.backup-scope{color:var(--text-secondary);font-size:13px}.backup-scope strong{color:var(--brand)}.backup-section{border-bottom:1px solid var(--border);justify-items:start;gap:12px;padding-bottom:20px;display:grid}.backup-section-heading{align-items:start;gap:12px;display:flex}.backup-section-heading>svg{color:var(--brand);margin-top:2px}.backup-section h2,.backup-preview h2{font-size:16px;font-weight:750}.backup-section-heading p{color:var(--text-secondary);max-width:62ch;margin-top:4px;font-size:13px;line-height:1.6}.backup-file-hint,.backup-local-note,.backup-metadata{color:var(--text-secondary);font-size:12px;line-height:1.6}.backup-preview{gap:12px;display:grid}.backup-preview>h2:focus{outline:none}.backup-save-current{justify-self:start}.backup-filename{overflow-wrap:anywhere;font-size:13px;font-weight:650}.backup-counts{background:var(--surface-subtle);border-radius:var(--radius-control);grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:16px;display:grid}.backup-counts dt{color:var(--text-secondary);font-size:12px}.backup-counts dd{font-variant-numeric:tabular-nums;margin:4px 0 0;font-size:18px;font-weight:750}.backup-replace-note{border-left:3px solid var(--warning);background:var(--warning-bg);padding:12px 16px;font-size:13px;line-height:1.6}.backup-replace-note p{color:var(--text-secondary);margin-top:4px}.backup-review-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.backup-feedback{border-radius:var(--radius-control);align-items:start;gap:8px;padding:12px 16px;font-size:13px;line-height:1.6;display:flex}.backup-feedback svg{margin-top:2px}.backup-error{color:var(--error);background:var(--error-bg)}.backup-success{color:var(--income);background:var(--income-bg)}@media (width<=767px){.backup-trigger{width:44px;padding-inline:0}.backup-trigger>span{display:none}.backup-counts{grid-template-columns:repeat(2,minmax(0,1fr))}.backup-review-actions{flex-direction:column-reverse;align-items:stretch}}.reserve-actions{flex-wrap:wrap;gap:8px;padding:0 20px 20px;display:flex}.pot-hero{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:4px 20px 16px;display:grid}.pot-hero-stat{align-content:start;gap:4px;min-width:0;display:grid}.pot-hero-stat>span{color:var(--text-secondary);font-size:12px}.pot-hero-stat strong{letter-spacing:-.03em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:22px;font-weight:750}.pot-hero-stat small{color:var(--text-secondary);font-size:12px}.pot-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}.pot-box{text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:16px;align-content:start;justify-items:start;gap:8px;min-height:0;padding:20px;display:grid}.pot-box:hover{border-color:var(--border-strong);background:var(--surface-subtle)}.pot-box-icon{color:#fff;background:var(--pot-color,var(--brand));border-radius:12px;place-items:center;width:40px;height:40px;display:grid}.pot-box-name{overflow-wrap:anywhere;font-size:15px;font-weight:750}.pot-box-pct{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:22px;font-weight:750}.pot-box>.pot-track{width:100%;height:8px}.pot-box>.pot-track>span{background:var(--pot-color,var(--brand))}.pot-box small{color:var(--text-secondary);font-size:12px}.pot-choices{gap:10px;display:grid}.pot-choice{border:1px solid var(--border);background:var(--surface);text-align:left;border-radius:12px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;min-height:72px;padding:16px;display:grid}.pot-choice svg{color:var(--brand);margin-top:2px}.pot-choice span{gap:4px;display:grid}.pot-choice strong{font-size:14px;font-weight:700}.pot-choice small{color:var(--text-secondary);font-size:12px;line-height:1.5}.pot-choice:hover:not(:disabled){background:var(--surface-subtle)}.pot-choice.active{border-color:var(--brand);background:var(--surface-selected);box-shadow:inset 0 0 0 1px var(--brand)}.pot-choice:disabled{opacity:.55;cursor:default}.pot-suggest{background:var(--surface-selected);color:var(--text-secondary);border-radius:12px;gap:4px;padding:14px 16px;font-size:13px;line-height:1.6;display:grid}.pot-suggest strong{color:var(--text)}.pot-suggest .panel-text-link{width:fit-content;min-height:36px;margin:0}.pot-steps{gap:6px;display:flex}.pot-steps span{background:var(--border);border-radius:99px;flex:1;height:4px}.pot-steps span.active{background:var(--brand)}.pot-create .segmented{width:100%}.pot-create .segmented button.active{color:var(--brand)}.pot-track{background:var(--surface-subtle);border-radius:99px;height:8px;overflow:hidden}.pot-track>span{background:var(--brand);border-radius:inherit;height:100%;display:block}.pot-track-lg{height:10px;margin:0 20px}.pot-progress{gap:8px;padding-bottom:4px;display:grid}.panel-heading.pot-inside-heading{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:2px 16px;padding-top:10px;padding-bottom:12px;display:grid}.pot-inside-heading .pot-back{grid-column:1/-1;gap:6px;min-height:28px;margin:0;padding:0}.pot-inside-heading>div{min-width:0}.pot-back{gap:6px}@media (width<=767px){.account-row{gap:10px;padding:14px 16px}.account-row>b{font-size:14px}.balance-help{align-items:stretch;padding:14px 16px}.balance-help .ui-button{width:100%}.pot-hero{gap:10px}.pot-hero-stat strong{font-size:16px}}.invoice-payments{border:0;margin:0;padding:0}.invoice-settlement{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.invoice-settlement>div{gap:2px;display:grid}.invoice-settlement>div>span,.invoice-payment-row span{color:var(--text-secondary);font-size:12px}.invoice-settlement>div>strong{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:16px;font-weight:750}.invoice-settlement>button,.invoice-paid-status{margin-left:4px}.invoice-paid-status{color:var(--brand);font-weight:600}.invoice-payments>.note{margin-top:16px}.invoice-payment-history{margin-top:24px}.invoice-payment-history h4{margin:0 0 8px;font-size:13px}.invoice-payment-row{justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.invoice-payment-row>div{overflow-wrap:anywhere;gap:4px;min-width:0;display:grid}@media (width<=600px){.invoice-settlement{gap:20px}.invoice-settlement>button{width:100%;margin-left:0}.invoice-payment-row{align-items:flex-start}}.startup-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:32px;min-height:100dvh;padding:24px;display:flex}.startup-brand{align-items:center;gap:10px;display:flex}.startup-feedback{max-width:440px;color:var(--text-secondary);flex-direction:column;align-items:center;gap:16px;display:flex}.loading-spinner{flex-shrink:0;animation:1.2s linear infinite loading-spin}@keyframes loading-spin{to{transform:rotate(360deg)}}.route-content{display:contents}.route-content[hidden]{display:none}.screen-loading{min-width:0}.screen-loading-label{min-height:24px;color:var(--text-secondary);align-items:center;gap:8px;margin-bottom:16px;font-size:12px;display:flex}.screen-skeleton{gap:24px;display:grid}.skeleton-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-panel);min-width:0;overflow:hidden}.skeleton-bar,.skeleton-icon,.skeleton-chart>span{background:var(--border);border-radius:4px;display:block}.skeleton-bar{width:72px;max-width:100%;height:10px}.skeleton-bar-wide{width:152px}.skeleton-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.skeleton-stats-three{grid-template-columns:repeat(3,minmax(0,1fr))}.skeleton-stat{align-content:center;gap:20px;min-height:125px;padding:24px;display:grid}.skeleton-stat .skeleton-bar-wide{width:128px;height:24px}.skeleton-columns{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:24px;display:grid}.skeleton-panel-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:24px;min-height:72px;padding:24px;display:flex}.skeleton-row{border-bottom:1px solid var(--border);align-items:center;gap:16px;min-height:76px;padding:20px 24px;display:flex}.skeleton-row:last-child{border-bottom:0}.skeleton-row>div{flex:1;gap:10px;min-width:0;display:grid}.skeleton-row>.skeleton-bar{flex-shrink:0;width:64px}.skeleton-icon{border-radius:10px;flex-shrink:0;width:36px;height:36px}.skeleton-account-list .skeleton-row{min-height:112px}.skeleton-invoice{background:var(--surface-subtle);border-bottom:1px solid var(--border);gap:20px;padding:28px 24px;display:grid}.skeleton-invoice>.skeleton-bar-wide{height:30px}.skeleton-chart{border-bottom:1px solid var(--border);justify-content:space-around;align-items:flex-end;gap:12px;height:290px;margin:24px;display:flex}.skeleton-chart>span{background:var(--surface-selected);border-radius:4px 4px 0 0;width:24px}.skeleton-week,.skeleton-days{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.skeleton-week{gap:16px;padding:20px}.skeleton-week .skeleton-bar{width:28px;margin:auto}.skeleton-days>div{border-top:1px solid var(--border);border-right:1px solid var(--border);min-height:90px;padding:16px}.skeleton-days .skeleton-bar{width:20px}.screen-error{border:1px solid var(--border);border-radius:var(--radius-panel);background:var(--surface);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:280px;padding:32px 24px;display:flex}.screen-error>svg{color:var(--text-secondary)}.screen-error h2{margin-bottom:8px;font-size:17px}.screen-error p{max-width:500px;color:var(--text-secondary);overflow-wrap:anywhere;font-size:13px}.screen-refresh-error{color:var(--warning);background:var(--warning-bg);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding:12px 16px;font-size:12px;display:flex}@media (width<=767px){.screen-skeleton{gap:16px}.skeleton-stats,.skeleton-stats-three{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.skeleton-stats-three>:last-child{grid-column:1/-1}.skeleton-stat{gap:16px;min-height:104px;padding:16px}.skeleton-columns{grid-template-columns:minmax(0,1fr);gap:16px}.skeleton-panel-heading,.skeleton-row{padding-inline:16px}.skeleton-days>div{min-height:58px;padding:10px 8px}.skeleton-week{gap:8px;padding-inline:8px}.skeleton-chart{height:200px}}@media (prefers-reduced-motion:reduce){.loading-spinner{animation:none}}.auth-page{background:var(--surface);grid-template-columns:minmax(0,1fr) minmax(420px,1fr);min-height:100dvh;display:grid}.auth-story{background:var(--surface-selected);border-right:1px solid var(--border);flex-direction:column;min-height:100dvh;padding:48px 56px 32px;display:flex}.auth-story .brand{padding:0}.auth-story-content{max-width:460px;margin-block:auto;padding-block:64px}.auth-story-content>svg{color:var(--brand);margin-bottom:24px}.auth-story h1{letter-spacing:-.05em;color:var(--brand);font-size:clamp(36px,4vw,58px);font-weight:750;line-height:1.13}.auth-story-content>p{max-width:370px;color:var(--text-secondary);margin-top:24px;font-size:16px;line-height:1.8}.auth-months{color:var(--brand);border-top:1px solid #a5c3b1;gap:24px;margin-top:48px;padding-top:14px;font-size:11px;display:flex}.auth-months>span{flex:1;position:relative}.auth-months>span:before{content:"";background:var(--brand);border-radius:50%;width:7px;height:7px;position:absolute;top:-18px;left:0}.auth-story-footer{color:var(--brand);align-items:center;gap:10px;font-size:12px;display:flex}.auth-form-section{place-items:center;padding:48px 40px;display:grid}.auth-form-wrap{width:100%;max-width:372px}.auth-form-wrap>h2{letter-spacing:-.035em;font-size:28px;font-weight:750;line-height:1.25}.auth-form-wrap>p{color:var(--text-secondary);margin-top:12px}.auth-form{gap:18px;margin-top:28px;display:grid}.auth-form label{gap:8px;font-size:13px;font-weight:600;display:grid}.auth-form input{border:1px solid var(--border-strong);border-radius:var(--radius-control);background:#fff;width:100%;height:48px;padding:0 12px;font-weight:400;display:block}.auth-form input:focus-visible{outline-offset:1px;border-color:var(--brand);outline:2px solid #174e4030}.auth-password{position:relative}.auth-password input{padding-right:48px}.auth-password>button{width:44px;height:44px;color:var(--text-secondary);place-items:center;display:grid;position:absolute;top:2px;right:2px}.auth-form>small{color:var(--text-secondary);margin-top:-10px;font-size:12px}.auth-form>.ui-button{margin-top:4px}.auth-google{gap:12px;width:100%;margin-top:28px}.auth-divider{color:var(--text-secondary);align-items:center;gap:14px;margin-top:24px;font-size:12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.auth-error{background:var(--error-bg);color:var(--error);border-radius:8px;padding:12px;font-size:13px}.auth-message{color:var(--brand);background:var(--surface-selected);border-radius:8px;padding:16px}.auth-forgot{min-height:44px;color:var(--brand);text-underline-offset:3px;margin-top:8px;font-size:12px;text-decoration:underline}.auth-back{margin-top:20px}.auth-form-wrap>.auth-switch{margin-top:28px;font-size:13px}.auth-switch button{color:var(--brand);text-underline-offset:3px;min-height:44px;margin-left:4px;font-weight:700;text-decoration:underline}.profile>div{min-width:0}.profile strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile>button{min-height:44px;color:var(--brand);padding:8px;font-size:12px}.mobile-signout,.page-footer .mobile-tour-restart{display:none}@media (width<=1023px){.page-footer .mobile-tour-restart{align-items:center;gap:8px;min-height:44px;display:flex}.mobile-signout{min-height:44px;color:var(--brand);align-items:center;padding:8px;font-size:12px;display:inline-flex}}@media (width<=767px){.auth-page{grid-template-columns:1fr}.auth-story{border-right:0;border-bottom:1px solid var(--border);min-height:auto;padding:28px 24px}.auth-story-content{max-width:none;padding-block:28px 0}.auth-story-content>svg,.auth-story-content>p,.auth-months,.auth-story-footer{display:none}.auth-story h1{font-size:30px;line-height:1.2}.auth-story h1>br{display:none}.auth-form-section{padding:32px 24px 48px}.auth-form-wrap>h2{font-size:24px}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-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}
