:root{--tblr-primary:#066fd1;--tblr-font-sans-serif:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--tblr-body-bg:#f6f8fb;--finance-radius:6px}
body{font-feature-settings:"cv03","cv04","cv11";text-rendering:optimizeLegibility}.page-body{margin-top:1.75rem}.container-xl{max-width:1320px}.card{border-radius:var(--finance-radius);box-shadow:0 1px 2px rgba(20,35,55,.025)}.card-header{min-height:4.5rem}.card-title{font-weight:600}.page-title{font-size:1.65rem;letter-spacing:-.025em}.page-pretitle{font-size:.68rem;letter-spacing:.07em;margin-bottom:.35rem}.main-header{min-height:4.75rem}.brand{display:inline-flex;align-items:center;gap:.7rem;color:var(--tblr-body-color);font-size:1.7rem;font-weight:700;letter-spacing:-.06em;text-decoration:none}.brand:hover{color:var(--tblr-body-color);text-decoration:none}.brand-symbol{display:inline-flex;align-items:center;justify-content:center;width:35px;height:35px;border-radius:9px;background:#066fd1;color:#fff;transform:rotate(-4deg)}.brand-symbol .icon{width:24px;height:24px;transform:rotate(4deg)}.brand-divider{color:#c0c9d4;font-weight:300;margin:0 .4rem}.brand-subtitle{font-size:1.05rem;letter-spacing:-.035em;font-weight:400;color:var(--tblr-secondary)}.workspace-label{align-items:center;gap:.4rem;color:var(--tblr-secondary);font-size:.8rem;padding-right:1rem;border-right:1px solid var(--tblr-border-color)}.workspace-label .icon{width:17px;height:17px}.navigation-bar .navbar{min-height:3.2rem}.navbar-nav .nav-link{gap:.35rem}.navbar-nav .nav-item.active>.nav-link{color:var(--tblr-primary)}.dropdown-item .icon{width:18px;height:18px;margin-right:.6rem}.footer{padding:1.75rem 0;font-size:.8rem}.skip-link{position:absolute;top:-80px;left:16px;z-index:9999;background:var(--tblr-primary);color:white;padding:12px;border-radius:4px}.skip-link:focus{top:8px}.metric-card{overflow:hidden}.metric-card .h1{font-size:1.75rem;letter-spacing:-.045em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.metric-card .subheader{font-size:.69rem;letter-spacing:.035em}.metric-icon{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;background:color-mix(in srgb,var(--metric-color) 11%,transparent);color:var(--metric-color)}.metric-icon .icon{width:21px;height:21px}.metric-accent{height:3px;background:var(--metric-color);opacity:.65}.metric-currency{font-size:1.1rem;color:var(--tblr-secondary);font-weight:400}.report-tabs{gap:.15rem;flex-wrap:nowrap}.report-tabs .nav-link{font-size:.75rem;padding:.35rem .6rem;color:var(--tblr-secondary)}.report-tabs .nav-link.active{background:rgba(6,111,209,.1);color:var(--tblr-primary)}.finance-chart{width:100%;overflow-x:auto}.finance-chart svg{display:block;width:100%;height:auto;min-height:190px;min-width:440px}.chart-grid{stroke:var(--tblr-border-color);stroke-dasharray:3 4}.chart-area{fill:rgba(6,111,209,.09)}.chart-line{fill:none;stroke:#066fd1;stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.chart-point{fill:var(--tblr-bg-surface);stroke:#066fd1;stroke-width:2}.chart-label{fill:var(--tblr-secondary);font-size:10px;font-family:var(--tblr-font-sans-serif)}.chart-values{font-size:.7rem;color:var(--tblr-secondary)}.chart-values summary{cursor:pointer}.category-breakdown-item+.category-breakdown-item{margin-top:1.1rem}.category-dot{width:9px;height:9px;flex-shrink:0;border-radius:50%}.breakdown-percent{width:34px;text-align:right}.category-breakdown-item{font-size:.8rem}.category-avatar{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex-shrink:0;border-radius:6px;font-size:.65rem;font-weight:700;color:var(--category-color);background:color-mix(in srgb,var(--category-color) 12%,transparent)}.category-avatar .icon{width:18px;height:18px}.table th{font-size:.67rem;letter-spacing:.045em}.table td{font-size:.82rem}.table-vcenter>tbody>tr>td{vertical-align:middle}.transaction-table{min-width:840px}.description-cell{min-width:180px;max-width:320px;white-space:normal;overflow-wrap:anywhere}.table-search{max-width:390px;width:100%}.inline-edit{display:flex;gap:.5rem;max-width:300px;min-width:180px}.inline-edit input{min-width:0}.card-table .btn-sm .icon,.card-table .avatar-xs .icon{width:16px;height:16px}.card-table .text-nowrap>.icon{width:14px;height:14px;vertical-align:-3px}.empty-icon .icon{width:38px;height:38px;stroke-width:1.3}.empty-title{font-size:.95rem}.empty-subtitle{max-width:340px;font-size:.8rem}.transaction-entry{scroll-margin-top:1rem}.transaction-entry .card-footer{background:transparent}.transaction-entry .card-body{flex-grow:1}.form-control,.form-select{min-height:38px}.form-label{font-weight:500;font-size:.82rem}.form-control::placeholder{color:#9aa7b8}.form-control-color{width:100%;height:38px}.permission-table{min-width:570px}.permission-table td:not(:first-child),.permission-table th:not(:first-child){text-align:center;width:20%}.permission-table .form-check-input{float:none;margin:0;vertical-align:middle}.settings-nav{position:sticky;top:1.5rem}.settings-nav .nav-link{display:flex;align-items:center;gap:.65rem;padding:.7rem 1rem;font-size:.85rem}.settings-nav .icon{width:18px;height:18px}.settings-section{scroll-margin-top:1rem}.settings-section+.settings-section{margin-top:1.5rem}.setting-metric{border:1px solid var(--tblr-border-color);border-radius:5px;padding:1rem}.setting-metric+.setting-metric{margin-top:1rem}.profile-cover{height:80px;background:repeating-linear-gradient(135deg,transparent 0,transparent 18px,rgba(6,111,209,.04) 18px,rgba(6,111,209,.04) 19px),rgba(6,111,209,.06);border-radius:6px 6px 0 0}.profile-avatar{width:70px;height:70px;margin-top:-35px;border:4px solid var(--tblr-bg-surface);font-size:1.6rem}.auth-page{min-height:100vh}.auth-main{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:3rem 1rem}.auth-main>.alert{width:min(100%,440px)}.auth-container{width:100%;max-width:440px}.auth-brand{font-size:2rem}.auth-brand .brand-symbol{width:40px;height:40px}.auth-card .card-body{padding:2rem}.auth-card .btn-primary{min-height:42px}.auth-footer{display:flex;align-items:center;justify-content:center;gap:1rem;font-size:.8rem}.auth-footer .icon{width:15px;height:15px;vertical-align:-3px}.robot-check{display:flex;align-items:center;gap:.75rem;padding:1rem;background:var(--tblr-bg-surface-secondary);border:1px solid var(--tblr-border-color);border-radius:5px}.robot-check .form-check-input{float:none;margin:0;flex-shrink:0}.robot-check .form-check-label{font-size:.8rem}.robot-check small{font-size:.7rem;margin-top:.15rem}.password-toggle{cursor:pointer;color:var(--tblr-secondary)}.captcha-panel{overflow-x:auto}.policy-text{white-space:pre-wrap;overflow-wrap:anywhere}.auth-card .card-footer .btn-link{min-height:0;font-size:inherit}#transaction-history{scroll-margin-top:1rem}.form-actions-sticky{position:sticky;bottom:0;z-index:10;background:var(--tblr-bg-surface)}[data-bs-theme=dark]{--tblr-body-bg:#151f2c}[data-bs-theme=dark] .chart-area{fill:rgba(66,153,225,.12)}[data-bs-theme=dark] .brand-subtitle{color:#90a0b7}@media(min-width:768px){.navigation-bar .nav-item{margin-right:.9rem}.navigation-bar .nav-link{padding-top:.85rem;padding-bottom:.85rem}}@media(max-width:767px){.main-header{min-height:4rem}.brand{font-size:1.5rem;gap:.45rem}.brand-subtitle{font-size:.9rem}.brand-divider{margin:0 .25rem}.navbar-nav .nav-link{padding:.7rem 0}.navigation-bar .container-xl{padding-top:.25rem;padding-bottom:.5rem}.page-body{margin-top:1.25rem}.page-title{font-size:1.4rem}.page-header .col-auto{width:100%;margin-left:0!important}.card-header{padding:1rem;min-height:4rem}.card-body{padding:1rem}.filter-card .card-body{padding:1rem!important}.table-search{max-width:none}.table td,.table th{padding:.8rem 1rem}.auth-main{padding:2rem 1rem}.auth-card .card-body{padding:1.5rem}.settings-nav{position:static}.metric-card .h1{font-size:1.6rem}.finance-chart svg{min-height:160px}.card-footer{padding:1rem}.page-header{margin-top:0}.auth-footer{margin-bottom:1rem}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media print{.page-body{margin:0}.card{break-inside:avoid}.transaction-entry,.filter-card,.table-search{display:none!important}}

.btn{gap:.4rem}.robot-check{width:100%}

.metric-money{font-size:1.5rem;font-weight:600;letter-spacing:-.035em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.metric-money .metric-currency{font-size:.8rem;font-weight:500;letter-spacing:0;margin-right:.25rem}
.report-total{font-size:1.55rem;letter-spacing:-.035em;font-variant-numeric:tabular-nums}
.cashflow-widget{position:relative;min-width:0}
.cashflow-plot{width:100%;height:282px;touch-action:pan-y;outline-offset:4px;border-radius:4px}
.cashflow-plot:focus-visible{outline:2px solid var(--tblr-primary)}
.cashflow-plot svg{display:block;overflow:visible}
.cashflow-axis{fill:var(--tblr-secondary);font-size:10px;font-family:var(--tblr-font-sans-serif)}
.chart-series-toggle{border:0;background:transparent;padding:5px 0;color:var(--tblr-body-color);display:inline-flex;align-items:center;gap:7px;font-size:.8rem}
.chart-series-toggle[aria-pressed=false]{opacity:.4;text-decoration:line-through}
.chart-legend-line{width:22px;border-top:3px solid #066fd1;display:inline-block}
.chart-legend-line.expense{border-color:#d63939;border-top-style:dashed}
.chart-currency{width:90px;min-height:30px}
.chart-cursor{stroke:var(--tblr-secondary);stroke-width:1;stroke-dasharray:3 3;opacity:.6}
.chart-tooltip{position:absolute;z-index:5;width:232px;padding:12px 14px;background:var(--tblr-bg-surface);color:var(--tblr-body-color);border:1px solid var(--tblr-border-color);border-radius:6px;box-shadow:0 6px 22px rgba(0,0,0,.12);pointer-events:none;font-size:.8rem}
.chart-tooltip[hidden]{display:none}
.chart-tooltip-title{font-weight:600;margin-bottom:8px}
.chart-tooltip-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:6px;font-variant-numeric:tabular-nums}
.chart-tooltip-series{display:flex;align-items:center;gap:6px}
.chart-tooltip-series:before{content:"";width:8px;height:8px;border-radius:50%;background:#066fd1}
.chart-tooltip-series.expense:before{background:#d63939}
.chart-help{font-size:.7rem!important;margin-top:4px}
.report-transactions-table{min-width:560px}
[data-load-status]{min-width:0}
[data-load-more][hidden]{display:none!important}
@media(max-width:767px){.chart-toolbar{gap:.65rem!important}.chart-toolbar>label{margin-left:0!important}.report-total{font-size:1.35rem}.metric-money{font-size:1.4rem}}
