:root{--paper:#f5f5f5;--white:#fff;--ink:#353535;--muted:#7c7c7c;--line:#e8e8e8;--primary:#365b9e;--accent:#e5e5e5;--soft:#f1f1f1;--amber:#ba8435;--danger:#a3433a;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);font-synthesis:none;font-size:14px;line-height:1.5}*{box-sizing:border-box}body{margin:0;background:var(--paper)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{ -webkit-tap-highlight-color:transparent}a[href],button{cursor:pointer}a:hover{color:#6f6f6f}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #8aaef0;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:36px;letter-spacing:-1.5px;line-height:1.2;font-weight:550;margin-bottom:12px}h2{font-size:19px;letter-spacing:-.5px;font-weight:600;margin-bottom:15px}h3{font-size:16px;font-weight:600;margin-bottom:6px}p{margin-bottom:16px}small,.small{font-size:12px}.muted,.optional{color:var(--muted)}.optional{font-weight:400;font-size:11px}.eyebrow{font-size:10px;font-weight:650;letter-spacing:1.7px;margin-bottom:15px}.heading-dot{color:#9d9d9d}.app{display:grid;grid-template-columns:252px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100dvh;background:#fbfbfb;border-right:1px solid var(--line);padding:36px 23px 20px;display:flex;flex-direction:column}.brand{font-size:30px;font-weight:650;letter-spacing:-1.8px;display:flex;align-items:center;gap:10px;color:var(--primary);width:max-content}.brand-dot{margin-left:-12px}.brand-icon{background:var(--primary);color:#f4f4f4;font-size:31px;font-weight:500;height:39px;width:39px;border-radius:12px;line-height:34px;text-align:center;letter-spacing:-4px;padding-right:5px}.brand-icon span{color:var(--accent)}.sidebar-label{font-size:10px;letter-spacing:.2px;color:var(--muted);margin-top:14px;margin-bottom:42px;font-weight:400}.book-label{font-size:9px;color:var(--muted);letter-spacing:1.5px;margin-bottom:9px}.sidebar select{font-size:12px;background:#fff;border-color:#e3e3e3;padding:11px 10px;font-weight:550;width:100%}.sidebar nav{display:flex;flex-direction:column;gap:6px;margin-top:25px}.sidebar nav a{padding:11px 12px;border-radius:7px;color:#7c7c7c;font-size:12px;font-weight:500;display:flex;align-items:center;gap:11px}.sidebar nav a span{font-size:18px;width:20px;text-align:center;color:#8a8a8a}.sidebar nav a.active{color:var(--primary);background:#ececec;font-weight:650}.sidebar nav a.active span{color:var(--primary)}.sidebar-note{margin-top:auto;padding:70px 13px 30px}.sidebar-note>span{font-size:9px;letter-spacing:1.2px;color:#8e8e8e;line-height:1.8}.sidebar-note p{font-size:11px;line-height:1.8;color:#939393;margin-top:13px;margin-bottom:0}.account{border-top:1px solid var(--line);padding:22px 3px 0;display:flex;align-items:center;gap:10px}.avatar{width:32px;height:32px;border-radius:50%;background:#eaeaea;color:#5d5d5d;display:grid;place-items:center}.account strong{display:block;font-size:11px;font-weight:600;max-width:120px;overflow:hidden;text-overflow:ellipsis}.account small{display:block;font-size:10px;color:var(--muted);margin-top:2px}.account form{margin-left:auto}main{min-width:0}.topbar{height:77px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 45px;font-size:9px;letter-spacing:1.2px;color:#8e8e8e}.breadcrumb{letter-spacing:0;text-transform:none;color:#565656;margin-left:12px;font-size:11px}.currency-chip{border:1px solid var(--line);border-radius:20px;padding:6px 11px;color:#5a5a5a;font-size:10px;letter-spacing:.6px}.currency-chip span{color:#8e8e8e}.content{max-width:1510px;margin:auto;padding:44px 45px 35px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:32px}.page-heading .muted{font-size:13px;margin-bottom:0}.page-heading .eyebrow{color:#8b8b8b;margin-bottom:13px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--primary);color:#fff;border:1px solid var(--primary);border-radius:6px;font-size:12px;font-weight:550;padding:11px 17px;min-height:41px;white-space:nowrap;transition:background .15s}.button:hover{background:#484848;color:white}.button>span{font-size:17px;font-weight:400}.button.secondary{background:#fff;color:var(--ink);border-color:#e1e1e1}.button.secondary:hover{background:#f2f2f2}.button.full{width:100%;justify-content:space-between}.icon-button{cursor:pointer;user-select:none;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;color:#7f7f7f;min-width:32px;height:32px;border-radius:5px;padding:3px;font-size:17px}.icon-button:hover{background:#efefef;color:var(--primary)}.month-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.month-navigation{display:flex;align-items:center;gap:10px}.month-navigation input{border:0;background:none;font-weight:550;padding:7px 0;font-size:12px;width:145px;color:var(--ink)}.separator{padding:0 9px;color:#bdbdbd}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:30px}.stat{border:1px solid var(--line);background:var(--white);padding:22px 22px 19px;border-radius:9px;min-height:149px}.stat-label{font-size:9px;letter-spacing:1px;color:#808080;display:block;white-space:nowrap}.stat>strong{display:block;font-weight:550;font-size:27px;letter-spacing:-1px;margin:15px 0 10px;line-height:1}.stat strong small{font-size:10px;font-weight:400;letter-spacing:0;color:#a3a3a3;margin-left:4px}.stat-foot,.income-edit summary{display:block;font-size:10px;color:#959595}.income-edit summary{cursor:pointer;display:flex;justify-content:space-between}.income-edit[open] form{margin-top:15px}.income-edit input{padding:7px;font-size:12px}.small-button{font-size:10px;padding:6px 9px;min-height:0}.stat.balance{background:#ececec;border-color:#e4e4e4}.stat.balance .stat-label{color:#6e6e6e}.stat.balance .stat-foot{color:#828282}.status-dot{display:inline-block;width:5px;height:5px;border-radius:50%;margin-right:5px;background:#888888}.status-dot.amber{background:#c8a568}.card{background:var(--white);border:1px solid var(--line);border-radius:9px;overflow:hidden}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 25px 19px}.section-heading h2{font-size:17px;margin-bottom:5px}.section-heading p{margin:0}.section-heading .text-link{font-size:10px}.text-link{color:#777777;font-weight:550}.filters{padding:0 25px 20px;display:flex;align-items:center;gap:11px}.filters label{margin:0}.search-field{display:flex;align-items:center;position:relative;max-width:330px;flex:1}.search-field>span:first-child{font-size:23px;position:absolute;left:12px;color:#9b9b9b}.search-field input{padding-left:36px;background:#fafafa;font-size:11px;height:37px}.filters select{font-size:11px;background:#fafafa;height:37px;min-width:140px}.filters .button{min-height:37px;height:37px;font-size:11px;padding:8px 13px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:12px}th{padding:13px 22px;background:#fafafa;border-bottom:1px solid var(--line);border-top:1px solid var(--line);font-weight:500;color:#8d8d8d;font-size:10px;white-space:nowrap}td{padding:17px 22px;border-bottom:1px solid #f0f0f0;vertical-align:middle}.expenses td:first-child{min-width:210px}.expenses td:last-child{width:35px;padding-left:0;padding-right:15px}.number{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.expense-title{font-weight:550;font-size:12px;color:#454545}.row-meta{display:flex;gap:8px;margin-top:5px;color:#9e9e9e;font-size:9px}.row-meta:empty{display:none}.category{background:#f2f2f2;color:#8d8d8d;border:1px solid #e9e9e9;padding:3px 8px;border-radius:4px;font-size:9px;white-space:nowrap}.my-share{font-weight:550}.split-badge{display:block;font-weight:400;color:#9b9b9b;font-size:9px;margin-top:3px}.status{border-radius:4px;background:#f5f5f5;border:1px solid #e5e5e5;color:#af8b49;display:inline-flex;align-items:center;justify-content:center;padding:5px 9px;white-space:nowrap;font-size:10px;min-width:66px}.status.is-paid{background:#f0f0f0;border-color:#e7e7e7;color:#818181}.paid-row .expense-title{color:#7d7d7d}.table-footer{display:flex;justify-content:space-between;padding:15px 25px;font-size:9px;color:#9e9e9e;background:#fdfdfd}.bottom-notes{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:26px}.bottom-notes>div{display:flex;gap:13px;padding:6px 4px}.note-icon{background:#eeeeee;border-radius:7px;min-width:32px;height:32px;display:grid;place-items:center;color:#9c9c9c;font-size:18px}.bottom-notes strong{font-size:11px;font-weight:550;color:#767676}.bottom-notes p{font-size:10px;line-height:1.8;color:#9b9b9b;margin:5px 0 0;max-width:340px}.page-footer{display:flex;justify-content:space-between;padding:20px 45px;border-top:1px solid var(--line);font-size:9px;color:#a6a6a6;max-width:1510px;margin:auto}.page-footer>span:first-child{color:#7c7c7c;font-size:12px;font-weight:550}.page-footer>span:first-child span{font-size:9px;margin-left:13px;font-weight:400;color:#a6a6a6}.empty{text-align:center;padding:52px 24px;color:#909090;font-size:12px}.empty h3{color:#757575;font-weight:550;margin-top:15px}.empty p{font-size:12px;line-height:1.8}.empty-icon{display:block;font-size:32px;color:#b7b7b7}.company-note{background:#efefef;border:1px solid #e6e6e6;border-radius:8px;padding:20px 23px;display:flex;gap:15px;margin-bottom:25px}.company-note strong{font-size:12px;font-weight:550}.company-note p{margin:6px 0 0;font-size:11px;line-height:1.7;color:#909090}.history-card{margin-bottom:25px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-bottom:25px}.padded{padding:27px}.padded>.section-heading{padding:0 0 12px}.padded>p{font-size:12px;line-height:1.8}.padded form+h3{margin-top:30px}.padded h3{margin-top:28px}.padded+.padded,.import-start{margin-top:25px}.settings-grid .padded+.padded{margin:0}label{display:block;font-weight:500;font-size:11px;margin-bottom:17px}input,select,textarea{width:100%;padding:10px 11px;background:#fff;color:var(--ink);border:1px solid #e1e1e1;border-radius:5px;min-height:39px;margin-top:6px}input::placeholder,textarea::placeholder{color:#a5a5a5;font-size:11px}input[readonly]{background:#f8f8f8;font-size:11px;cursor:text}label small{font-size:10px;color:#909090;display:block;font-weight:400;margin-top:7px;line-height:1.7}textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:25px}.check-label{display:flex;align-items:center;gap:8px;font-size:11px;flex-wrap:wrap}.check-label input{width:15px;min-height:0;height:15px;margin:0;accent-color:var(--primary)}.check-label .optional{margin-left:23px;width:100%}.sharing-form{display:grid;grid-template-columns:2fr 1.5fr 1fr auto;gap:15px;align-items:start;margin-top:22px}.sharing-form .button{margin-top:22px}.text-button{border:0;background:none;font:inherit;padding:0;cursor:pointer;font-size:11px}.danger{color:var(--danger)}.recurring-grid{display:grid;grid-template-columns:minmax(300px,420px) minmax(0,1fr);gap:25px;align-items:start}.recurring-list{display:grid;gap:15px}.recurring-item{padding:22px}.recurring-item .section-heading{padding:0}.recurring-item .section-heading h3{margin:0}.recurring-item strong small{font-size:10px;font-weight:400;color:#9e9e9e}.recurring-item details{border-top:1px solid var(--line);padding-top:13px;margin-top:18px}summary{cursor:pointer;font-size:11px;color:#878787}details[open]>summary{margin-bottom:17px}.back-link{display:inline-block;font-size:11px;color:#919191;margin-bottom:24px}.expense-actions{border-top:1px solid var(--line);padding-top:23px;margin-top:24px;display:flex;flex-wrap:wrap;align-items:center;gap:13px}.receipt{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:6px;padding:12px;margin:12px 0}.receipt>a{overflow-wrap:anywhere;font-size:12px;flex:1}.receipt-icon{color:#9b9b9b;font-size:24px}.receipt-empty{text-align:center;border:1px dashed #dfdfdf;padding:45px 15px;color:#a0a0a0;margin:23px 0;border-radius:7px}.receipt-empty>span{font-size:35px}.receipt-empty p{font-size:12px}.receipt-upload{border-top:1px solid var(--line);padding-top:25px;margin-top:25px}.expense-read{display:grid;grid-template-columns:1fr 2fr;gap:18px;font-size:12px}.expense-read dt{color:var(--muted)}.expense-read dd{margin:0}.preserve-lines{white-space:pre-wrap;overflow-wrap:anywhere}.import-table input{font-size:11px;min-width:100px}.import-table input[type=checkbox]{min-width:0}.import-table td{padding:12px}.import-table td:nth-child(3) input{min-width:180px}.import-table td:nth-child(2){min-width:210px}.import-table td:first-child{min-width:60px}.import-table details p{max-width:280px;white-space:normal}dialog{border:1px solid var(--line);border-radius:12px;padding:28px;width:min(560px,calc(100% - 30px));max-height:90dvh;color:var(--ink)}dialog::backdrop{background:#24242470;backdrop-filter:blur(3px)}.dialog-heading{display:flex;justify-content:space-between;align-items:start;margin-bottom:22px}.dialog-heading .eyebrow{color:var(--muted);margin-bottom:7px}.dialog-heading h2{font-size:25px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}.error{background:#f4f4f4;color:#a34d3e;border:1px solid #dedede;padding:14px 18px;border-radius:6px;font-size:13px}.narrow{max-width:660px;padding:35px}.login-layout{min-height:100dvh;display:grid;grid-template-columns:1fr 1fr}.login-story{background:#eaeaea;display:flex;flex-direction:column;justify-content:space-between;padding:50px 70px;min-height:100dvh}.login-story h1{font-family:Georgia,serif;font-size:58px;line-height:1.15;letter-spacing:-2px;font-weight:400;margin:20px 0 28px}.login-story em{color:#868686;font-weight:400}.login-story>div>p:not(.eyebrow){color:#909090;font-size:13px;line-height:1.9}.login-story .eyebrow{color:#878787}.login-story>small{color:#a0a0a0;font-size:10px}.story-lines{display:grid;gap:15px;margin-top:40px}.story-lines>span{font-size:10px;color:#9f9f9f}.story-lines b{font-size:11px;font-weight:450;color:#6f6f6f;margin-left:18px}.login-panel{display:grid;place-items:center;padding:60px 35px;background:#fbfbfb}.login-card{max-width:350px;width:100%}.login-card h2{font-size:34px;font-weight:500;line-height:1.25;letter-spacing:-1px;margin-top:20px;margin-bottom:13px}.login-card .eyebrow{color:#949494}.login-card>.muted{font-size:12px;margin-bottom:35px}.login-card form .button{margin-top:8px}.login-foot{font-size:10px;color:#a6a6a6;text-align:center;margin-top:35px}.signup{border-top:1px solid var(--line);margin-top:25px;padding-top:20px}.signup summary{text-align:center}.signup form{margin-top:20px}.divider{display:flex;align-items:center;gap:10px;font-size:10px;color:var(--muted);margin:25px 0}.divider:before,.divider:after{content:"";height:1px;flex:1;background:var(--line)}
@media(min-width:1700px){.content{padding-top:60px}.stats{gap:22px}.stat{padding:26px}.stat>strong{font-size:32px}}@media(max-width:1200px){.app{grid-template-columns:220px minmax(0,1fr)}.sidebar{padding-left:17px;padding-right:17px}.content{padding:30px 25px}.topbar,.page-footer{padding-left:25px;padding-right:25px}.stats{gap:10px}.stat{padding:18px 14px}.stat>strong{font-size:23px}.stat-label{font-size:8px}.stat-foot,.income-edit summary{font-size:9px}td,th{padding-left:15px;padding-right:15px}.settings-grid{gap:17px}.padded{padding:22px}.recurring-grid{grid-template-columns:1fr 1fr;gap:17px}.sharing-form{grid-template-columns:1fr 1fr}.sharing-form .button{margin-top:22px}.login-story{padding:45px}.login-story h1{font-size:49px}}@media(max-width:950px){.stats{grid-template-columns:1fr 1fr}.settings-grid,.recurring-grid{grid-template-columns:1fr}.page-heading{align-items:flex-start}h1{font-size:30px}.page-heading>.button{font-size:10px;padding:9px 11px}.bottom-notes{gap:20px}.login-story{padding:35px}.login-story h1{font-size:42px}.page-footer>span:last-child{display:none}}@media(max-width:700px){.app{display:block}.sidebar{position:static;height:auto;padding:18px 20px;border-bottom:1px solid var(--line);border-right:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}.brand{font-size:25px}.brand-icon{width:33px;height:33px;font-size:27px;line-height:30px;border-radius:9px}.sidebar-label,.book-label,.sidebar-note{display:none}.sidebar>form{align-self:center}.sidebar nav{grid-column:1/-1;flex-direction:row;overflow:auto;margin-top:7px;gap:5px}.sidebar nav a{white-space:nowrap;padding:8px 10px;font-size:10px;gap:5px}.sidebar nav a span{font-size:14px;width:15px}.account{display:none}.topbar{height:52px;padding:0 20px;font-size:8px}.breadcrumb{font-size:10px;margin-left:5px}.content{padding:28px 18px}.page-heading{gap:14px;margin-bottom:23px}.page-heading .eyebrow{font-size:8px;letter-spacing:1.1px}.page-heading .muted{font-size:11px;max-width:290px}h1{font-size:27px;letter-spacing:-1px}.page-heading>.button{font-size:0;padding:8px 11px;min-height:36px;gap:0}.page-heading>.button span{font-size:21px}.month-toolbar>.small{font-size:9px;max-width:150px;text-align:right}.month-navigation{gap:3px}.month-navigation input{font-size:11px;width:130px}.stat{min-height:128px;padding:17px 14px}.stat>strong{font-size:24px;margin:13px 0 11px}.stat-label{font-size:7px;letter-spacing:.8px}.stats{gap:10px;margin-bottom:20px}.section-heading{padding:20px 17px 17px}.section-heading h2{font-size:15px}.section-heading .small{font-size:10px}.section-heading .text-link{font-size:9px}.filters{padding:0 17px 17px;gap:7px;flex-wrap:wrap}.search-field{max-width:none;flex-basis:100%}.filters select{min-width:150px}.expenses td:first-child{min-width:160px}.row-meta{flex-wrap:wrap;gap:4px;font-size:8px}.expenses td{padding-top:15px;padding-bottom:15px}.expenses .category{font-size:8px}.expenses .expense-title{font-size:11px}.table-footer{font-size:8px;padding:14px 17px}.bottom-notes{grid-template-columns:1fr;gap:12px;margin-top:18px}.bottom-notes p{max-width:none}.page-footer{padding:16px 20px}.page-footer>span:first-child span{font-size:8px}.padded{padding:20px}.sharing-form{grid-template-columns:1fr}.sharing-form .button{margin-top:0;justify-self:start}.company-note{padding:17px;gap:10px}.company-note p{font-size:10px}.company-note strong{font-size:11px}.form-grid{gap:0 12px}.settings-grid{gap:17px}.login-layout{display:block}.login-story{min-height:0;padding:24px}.login-story>div,.login-story>small{display:none}.login-panel{padding:45px 25px;min-height:calc(100dvh - 81px)}.login-card{max-width:370px}.receipt-upload input{font-size:10px}dialog{padding:23px}.currency-chip{font-size:8px}.empty{padding:40px 17px}.recurring-list .empty{margin-bottom:0}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.company-stats{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:700px){.company-stats{grid-template-columns:1fr}.company-stats .stat{min-height:115px}}.calculator-hint{font-size:10px;color:var(--muted);margin-top:-5px;margin-bottom:17px}
.fx-fields{border:1px solid #e7e7e7;background:#fafafa;border-radius:6px;padding:15px 15px 3px;margin:0 0 18px;min-width:0}.fx-fields legend{font-size:10px;color:#8f8f8f;padding:0 5px}.fx-fields input{background:#fff}.fx-fields>label{margin-bottom:13px}.fx-feedback{font-size:10px;color:#8f8f8f;margin:10px 0}.fx-preview{font-size:11px;color:#646464;font-weight:550;margin:10px 0 15px}.fx-preview:empty{display:none}
@media(max-width:700px){.sidebar nav,.sidebar>form{min-width:0;max-width:100%}.expenses,.expenses tbody{display:block;width:100%}.expenses thead{display:none}.expenses tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:17px;border-bottom:1px solid var(--line);align-items:start}.expenses td{display:block;padding:0;border:0;min-width:0}.expenses td:first-child{grid-column:1;grid-row:1;min-width:0}.expenses .expense-title{font-size:12px}.expenses td.category-cell,.expenses td.details-cell{display:none}.expenses td.payment-cell{grid-column:2;grid-row:1;text-align:right;align-self:start}.expenses td.full-total{grid-column:1;grid-row:2;text-align:left;font-size:11px;color:#909090}.expenses td.full-total:before{content:'Full total ';font-size:10px;color:#a8a8a8}.expenses td.my-share{grid-column:2;grid-row:2;font-size:12px}.expenses td.my-share:before{content:'My share ';font-size:10px;font-weight:400;color:#909090}.expenses .split-badge{display:inline;margin-left:5px}.expenses td.month-cell{grid-column:1;grid-row:3;font-size:10px;color:#909090}.expenses td.reimbursement-cell{grid-column:2;grid-row:3}.expenses td[colspan]{grid-column:1/-1;grid-row:auto}.expenses .row-meta{font-size:9px;line-height:1.7}.expenses .empty{padding:23px 0}.sidebar nav a{flex-shrink:0}}

/* Theme controls stay available on the login page and at every screen size. */
:root{color-scheme:light}
.topbar-actions{display:flex;align-items:center;gap:14px}
.theme-toggle{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:20px;background:var(--white);color:var(--ink);padding:6px 11px;min-height:32px;font-size:10px;letter-spacing:0;white-space:nowrap}
.theme-toggle:hover{border-color:var(--muted)}
.login-panel{position:relative}
.login-theme{position:absolute;right:25px;top:25px}
html[data-theme=dark]{color-scheme:dark;--paper:#18181b;--white:#222225;--ink:#e5e5e5;--muted:#aeaeae;--line:#3c3c3c;--primary:#8aaef0;--accent:#dddddd;--soft:#313131;--amber:#e0b472;--danger:#efa29a}
html[data-theme=dark] .sidebar{background:#1c1c1f}
html[data-theme=dark] .sidebar select,html[data-theme=dark] input,html[data-theme=dark] select,html[data-theme=dark] textarea,html[data-theme=dark] .fx-fields input{background:#18181b;border-color:var(--line);color:var(--ink)}
html[data-theme=dark] input::placeholder,html[data-theme=dark] textarea::placeholder{color:#9b9b9b}
html[data-theme=dark] .brand-icon{background:#454545;color:#f0f0f0}
html[data-theme=dark] .sidebar nav a{color:#b8b8b8}
html[data-theme=dark] .sidebar nav a span,html[data-theme=dark] .icon-button{color:#bbbbbb}
html[data-theme=dark] .sidebar nav a.active{background:#353535;color:#c0d2f5}
html[data-theme=dark] .sidebar nav a.active span{color:#c0d2f5}
html[data-theme=dark] .avatar,html[data-theme=dark] .note-icon{background:#343434;color:#cacaca}
html[data-theme=dark] .breadcrumb,html[data-theme=dark] .currency-chip{color:#cacaca}
html[data-theme=dark] .button{background:#8aaef0;border-color:#8aaef0;color:#1b1b1b}
html[data-theme=dark] .button:hover{background:#abc5f5;color:#1b1b1b}
html[data-theme=dark] .button.secondary{background:#2d2d2d;border-color:#505050;color:#e0e0e0}
html[data-theme=dark] .button.secondary:hover,html[data-theme=dark] .icon-button:hover{background:#3f3f3f;color:#eaeaea}
html[data-theme=dark] .stat.balance,html[data-theme=dark] .company-note{background:#323232;border-color:#4a4a4a}
html[data-theme=dark] .stat.balance .stat-label,html[data-theme=dark] .stat.balance .stat-foot{color:#cacaca}
html[data-theme=dark] th,html[data-theme=dark] .table-footer{background:#202020}
html[data-theme=dark] td{border-bottom-color:#383838}
html[data-theme=dark] .filters input,html[data-theme=dark] .filters select,html[data-theme=dark] input[readonly],html[data-theme=dark] .fx-fields{background:#1e1e1e;border-color:var(--line)}
html[data-theme=dark] .expense-title{color:#e2e2e2}
html[data-theme=dark] .paid-row .expense-title{color:#c6c6c6}
html[data-theme=dark] .category{background:#323232;border-color:#454545;color:#c9c9c9}
html[data-theme=dark] .status{background:#313131;border-color:#604d2e;color:#edc484}
html[data-theme=dark] .status.is-paid{background:#343434;border-color:#4f4f4f;color:#cccccc}
html[data-theme=dark] .error{background:#303030;border-color:#71423a;color:#f5b7a9}
html[data-theme=dark] .receipt-empty{border-color:#565656;color:#c3c3c3}
html[data-theme=dark] dialog{background:var(--white)}
html[data-theme=dark] dialog::backdrop{background:#080808b8}
html[data-theme=dark] .login-story{background:#2a2a2a}
html[data-theme=dark] .login-panel{background:var(--paper)}
html[data-theme=dark] .login-story em{color:#c5c5c5}
html[data-theme=dark] .story-lines b{color:#cdcdcd}
html[data-theme=dark] .fx-preview{color:#d4d4d4}
html[data-theme=dark] .danger{color:var(--danger)}
html[data-theme=dark] .sidebar-note p,html[data-theme=dark] .sidebar-note>span,html[data-theme=dark] .topbar,html[data-theme=dark] .currency-chip span,html[data-theme=dark] .stat-label,html[data-theme=dark] .stat-foot,html[data-theme=dark] .income-edit summary,html[data-theme=dark] .stat strong small,html[data-theme=dark] th,html[data-theme=dark] .row-meta,html[data-theme=dark] .table-footer,html[data-theme=dark] .bottom-notes p,html[data-theme=dark] .bottom-notes strong,html[data-theme=dark] .page-footer,html[data-theme=dark] .page-footer>span:first-child,html[data-theme=dark] .page-footer>span:first-child span,html[data-theme=dark] .company-note p,html[data-theme=dark] label small,html[data-theme=dark] summary,html[data-theme=dark] .empty,html[data-theme=dark] .empty h3,html[data-theme=dark] .login-story>div>p:not(.eyebrow),html[data-theme=dark] .login-story .eyebrow,html[data-theme=dark] .login-story>small,html[data-theme=dark] .story-lines>span,html[data-theme=dark] .login-card .eyebrow,html[data-theme=dark] .login-foot,html[data-theme=dark] .fx-feedback,html[data-theme=dark] .fx-fields legend,html[data-theme=dark] .expenses td.full-total,html[data-theme=dark] .expenses td.full-total:before,html[data-theme=dark] .expenses td.my-share:before,html[data-theme=dark] .expenses td.month-cell{color:var(--muted)}
html[data-theme=dark] .text-link,html[data-theme=dark] .split-badge,html[data-theme=dark] a:hover{color:#a9c4f4}
@media(max-width:700px){.topbar-actions{gap:7px}.theme-toggle{padding:5px 9px;font-size:9px}.topbar .currency-chip{display:none}.login-theme{right:20px;top:15px}}
.categories-settings{margin-bottom:25px;scroll-margin-top:20px}.category-add{display:flex;align-items:flex-end;gap:12px;max-width:560px;margin:20px 0}.category-add label{flex:1;margin:0}.category-list{display:grid;gap:10px;max-width:760px}.category-item{display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid var(--line);padding:13px 0}.category-item>div strong,.category-item>div span{display:block}.category-item strong{font-size:12px}.category-rename{display:flex;align-items:center;gap:10px;flex:1}.category-rename input{margin:0;max-width:360px}.category-item>form:last-child{flex-shrink:0}@media(max-width:700px){.category-add{align-items:stretch;flex-direction:column}.category-add .button{align-self:flex-start}.category-item{gap:10px}.category-rename{min-width:0;gap:7px}.category-rename input{min-width:0}.category-rename .small-button{padding:7px}}
.salary-form label{font-size:10px;margin:0 0 9px}.salary-form input{font-size:12px;padding:8px;min-height:34px}.salary-form>small{display:block;color:var(--muted);font-size:10px;margin-top:9px;line-height:1.6}.income-reminder{font-size:11px;line-height:1.7;margin:15px 0 0;color:var(--ink)}.current-month-link{margin-left:8px}.current-month-badge{font-size:10px;color:var(--muted);margin-left:10px;white-space:nowrap}@media(max-width:700px){.month-toolbar{flex-wrap:wrap;gap:10px}.month-navigation{flex-wrap:wrap}.current-month-link{margin-left:4px;font-size:9px}.current-month-badge{font-size:9px}.month-toolbar>.small{max-width:none;text-align:left}.salary-form .small-button{padding:7px 9px}}
.salary-form{margin-top:12px}.salary-reset{margin-top:10px}.salary-reset .text-button{color:var(--primary);text-decoration:underline;text-underline-offset:3px}
html{scrollbar-gutter:stable}
.monthly-savings{margin-bottom:28px}.monthly-savings .section-heading{padding:0 0 18px}.savings-month-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:18px}.savings-month-values strong{display:block;font-size:23px;font-weight:550;margin:8px 0}.savings-month-values small{font-size:10px;font-weight:400;color:var(--muted)}.savings-edit{font-size:11px}.savings-edit>summary{color:var(--primary)}.savings-edit form{min-width:200px;max-width:370px;margin-top:15px}.savings-edit label{font-size:10px;margin-bottom:12px}.savings-edit input{font-size:12px}.savings-reset .text-button{color:var(--primary);text-decoration:underline}.savings-note,.savings-footnote{font-size:11px;color:var(--muted);line-height:1.7;white-space:normal}.savings-note{max-width:230px;margin:10px 0 0}.savings-footnote{margin-top:18px}.savings-table td{vertical-align:top}.savings-amount-note{justify-content:flex-end}.savings-below{color:var(--amber)}@media(max-width:700px){.savings-month-values{gap:10px}.savings-month-values strong{font-size:17px}.savings-month-values .stat-label{font-size:8px;white-space:normal}.savings-month-values .stat-foot{font-size:9px}.monthly-savings .section-heading{gap:10px}.monthly-savings .text-link{font-size:10px;white-space:nowrap}}

.savings-chart{margin-bottom:24px}.savings-chart .section-heading{padding:0;margin-bottom:20px;flex-wrap:wrap;gap:16px}.savings-chart-scroll{overflow-x:auto;max-width:100%}.savings-chart svg{display:block;min-width:100%}.savings-grid{stroke:var(--line);stroke-dasharray:3 5}.savings-zero{stroke:var(--muted,#888);stroke-width:1}.savings-axis{fill:var(--muted,#999);font-size:10px;font-family:inherit}.savings-saved,.saved-key{fill:#729bff;background:#729bff}.savings-forecast,.forecast-key{fill:#929292;background:#929292}.savings-forecast{opacity:.55}.savings-legend{display:flex;gap:18px;font-size:12px}.savings-legend span{display:flex;align-items:center;gap:7px}.savings-legend i{display:inline-block;width:10px;height:10px;border-radius:2px}.forecast-key{opacity:.55}
.savings-stats{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:1100px){.savings-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.savings-stats{grid-template-columns:1fr}}
