:root{--ink:#17384d;--muted:#647887;--navy:#163f59;--blue:#2b718f;--green:#216d58;--bg:#f4f7fa;--line:#dde6ed;--red:#b53c44;--gold:#a16916;color:var(--ink);background:var(--bg);font-synthesis:none;font-family:-apple-system,BlinkMacSystemFont,PingFang TC,Microsoft JhengHei,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button{color:inherit;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:44px;display:inline-flex}a{color:inherit}.app-shell{min-height:100dvh}.sidebar{border-right:1px solid var(--line);background:#fff;flex-direction:column;width:230px;padding:35px 22px;display:flex;position:fixed;inset:0 auto 0 0}.brand{letter-spacing:.05em;align-items:center;gap:12px;font-size:22px;font-weight:700;text-decoration:none;display:flex}.brand-icon{background:var(--navy);color:#fff;border-radius:12px;place-items:center;width:43px;height:45px;display:grid}.brand small{letter-spacing:.02em;color:var(--muted);margin-top:5px;font-size:11px;font-weight:400;display:block}.sidebar nav{gap:10px;margin-top:54px;display:grid}.sidebar nav button{color:var(--muted);justify-content:flex-start;padding:13px 16px;font-size:15px}.sidebar nav .active{color:var(--navy);background:#e8f1f6;font-weight:650}.side-bottom{color:var(--green);align-items:flex-start;gap:9px;margin-top:auto;font-size:12px;display:flex}.side-bottom p{margin:0;line-height:1.8}.topbar{border-bottom:1px solid var(--line);background:#ffffffb3;justify-content:space-between;align-items:center;height:78px;padding:0 42px;display:flex}.page-context{font-size:14px}.page-context span{color:var(--muted);margin-left:18px;font-size:12px}.top-actions{align-items:center;gap:18px;display:flex}.sync-status{color:var(--green);align-items:center;gap:7px;font-size:12px;display:inline-flex}.icon-button{flex-shrink:0;width:44px}.icon-button:hover{background:#eaf0f4}.mobile-brand,.mobile-nav{display:none}.content{max-width:1270px;margin:auto;padding:38px 42px 40px}.heading-row{justify-content:space-between;align-items:center;gap:18px;margin-bottom:27px;display:flex}h1{letter-spacing:.02em;margin:0 0 9px;font-size:29px;line-height:1.4}h2{margin:0;font-size:17px;font-weight:650}p{font-size:14px;line-height:1.85}.heading-row p{color:var(--muted);margin:0;font-size:13px}.month-control{border:1px solid var(--line);background:#fff;border-radius:11px;flex-shrink:0;align-items:center;gap:3px;padding:3px;display:flex}.month-control button{width:35px}.month-control input{color:var(--ink);background:0 0;border:0;max-width:160px;min-height:44px;padding:0 6px;font-size:14px;font-weight:600}.balance-panel{background:var(--navy);color:#fff;border-radius:19px;grid-template-columns:1.25fr 1fr;display:grid;overflow:hidden}.balance-number{letter-spacing:-.04em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:13px 0 6px;font-size:clamp(31px,3.8vw,49px);font-weight:650;line-height:1.35}.balance-main p{color:#c8dce8;margin:0 0 17px;font-size:12px;line-height:1.7}.budget-tag{color:#d9eee6;background:#ffffff17;border:1px solid #ffffff24;border-radius:6px;padding:6px 11px;font-size:11px;display:inline-block}.balance-breakdown{background:#ffffff07;border-left:1px solid #ffffff18;padding:33px}.balance-breakdown>div{justify-content:space-between;align-items:center;gap:12px;margin-bottom:19px;font-size:13px;display:flex}.balance-breakdown span{color:#c8dce8;align-items:center;gap:8px;display:flex}.balance-breakdown strong{font-variant-numeric:tabular-nums;font-size:17px}.balance-breakdown button{color:#fff;border-bottom:1px solid #fff4;border-radius:0;min-height:34px;padding:0;font-size:12px}.quick-actions{flex-wrap:wrap;gap:12px;margin:18px 0 28px;display:flex}.quick-actions button{border:1px solid var(--line);background:#fff;padding:11px 17px;font-size:13px}.quick-actions button:first-child{background:#e6eef4;border-color:#c6d8e3}.overview-grid{grid-template-columns:1fr 1fr;gap:22px;margin-bottom:22px;display:grid}.section-box{border:1px solid var(--line);background:#fff;border-radius:14px;padding:25px 27px}.section-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:19px;display:flex}.small-chip{color:var(--blue);white-space:nowrap;background:#e9f2f7;border-radius:5px;padding:5px 9px;font-size:11px}.muted{color:var(--muted);font-size:12px}.cash-box{background:#eff6fa;border-color:#d8e7f0}.cash-box>p{color:var(--muted);margin:9px 0;font-size:12px}.cash-box .cash-title{color:var(--ink);font-size:21px;font-weight:650;line-height:1.5}.cash-footer{border-top:1px solid #d6e4ed;justify-content:space-between;margin-top:19px;padding-top:18px;font-size:12px;display:flex}.cash-footer span{color:var(--muted)}.danger-text{color:var(--red)!important}.income-text{color:var(--green)}.text-button{color:var(--blue);min-height:34px;padding:0 3px;font-size:12px}.category-list{gap:15px;display:grid}.category-line{justify-content:space-between;gap:10px;margin-bottom:6px;font-size:12px;display:flex}.category-line span{align-items:center;gap:8px;display:flex}.dot{border-radius:50%;width:8px;height:8px;display:inline-block}.bar-track{background:#eef3f6;border-radius:5px;height:5px;overflow:hidden}.bar-fill{border-radius:5px;height:100%}.rent{background:#317899}.card{background:#899bd0}.loan{background:#d2a262}.living{background:#72a58c}.other{background:#9ba7b1}.income{color:var(--green);background:#d8eee5}.row-icon.rent,.row-icon.card,.row-icon.loan,.row-icon.living,.row-icon.other{color:var(--blue);background:#edf2f6}.mini-stats{color:var(--muted);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;padding-bottom:15px;font-size:11px;display:flex}.mini-stats strong{color:var(--ink);margin-left:7px;font-size:14px}.expense-row,.salary-row{border-bottom:1px solid #edf1f4;align-items:center;gap:13px;padding:18px 0;display:flex}.expense-row:last-child{border-bottom:0}.row-icon{border-radius:10px;flex-shrink:0;place-items:center;width:39px;height:41px;display:grid}.row-name{flex:1;min-width:0}.row-name strong{overflow-wrap:anywhere;font-size:14px;display:block}.row-name span{color:var(--muted);margin-top:6px;font-size:11px;line-height:1.5;display:block}.row-amount{text-align:right;flex-shrink:0}.row-amount strong{font-variant-numeric:tabular-nums;font-size:14px}.row-amount span{color:var(--muted);margin-top:5px;font-size:10px;display:block}.paid-button{color:var(--muted);background:#f3f5f7;border:1px solid #e6ebef;border-radius:6px;min-width:67px;min-height:32px;padding:6px 9px;font-size:10px}.save-bar{z-index:3;background:#fff;border:1px solid #d7e2ea;border-radius:12px;justify-content:space-between;align-items:center;gap:15px;margin-top:30px;padding:15px 19px;display:flex;position:sticky;bottom:16px;box-shadow:0 5px 20px #163f590a}.save-bar>div{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.status-dot{background:var(--green);border-radius:50%;flex-shrink:0;width:7px;height:7px}.primary{background:var(--navy);color:#fff;min-height:45px;padding:11px 17px;font-size:13px}.primary:hover{background:#24556f}.secondary{border:1px solid var(--line);background:#fff;padding:10px 14px;font-size:12px}.banner{border-radius:9px;align-items:center;gap:11px;margin-bottom:18px;padding:13px 17px;font-size:12px;line-height:1.7;display:flex}.banner span{flex:1}.banner button{white-space:nowrap;border:1px solid;min-height:34px;padding:6px 10px;font-size:11px}.banner.error{color:var(--red);background:#fceced}.banner.success{color:var(--green);background:#e8f4ee}.banner.warning{color:#875c1d;background:#fff3dc}.empty-small,.loading-panel{text-align:center;color:var(--muted);padding:32px 10px}.empty-small p{font-size:12px}.loading-panel{padding:70px 20px}.loading-panel h2{margin-top:15px}.filter-row{flex-wrap:wrap;gap:7px;margin:18px 0 7px;display:flex}.filter-row button{min-height:38px;color:var(--muted);padding:7px 14px;font-size:12px}.filter-row .selected{color:var(--navy);background:#e7f0f6}.salary-row{background:#f0f6fa;border-bottom:0;border-radius:9px;margin:0 -10px;padding:18px 13px}.salary-row>strong{font-size:15px}.list-note{color:var(--muted);margin:17px 0 0;font-size:12px;line-height:1.8}.timeline-row{border-bottom:1px solid var(--line);align-items:center;gap:18px;padding:21px 0;font-size:13px;display:flex}.day-pill{background:#eef4f8;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;gap:3px;width:47px;height:48px;font-size:20px;display:flex}.day-pill small{color:var(--muted);font-size:10px}.timeline-name{flex:1;min-width:0}.timeline-name strong{overflow-wrap:anywhere}.timeline-name span,.timeline-balance span{color:var(--muted);margin-top:6px;font-size:10px;display:block}.timeline-balance{text-align:right;min-width:115px}.timeline-balance strong{margin-top:4px;font-size:12px;display:block}.settings-grid{grid-template-columns:1fr 1fr;gap:22px;display:grid}.settings-grid p{color:var(--muted);font-size:13px}.setting-actions{flex-wrap:wrap;gap:10px;display:flex}.signout{color:var(--blue);align-items:center;gap:8px;min-height:44px;margin-top:8px;font-size:13px;display:inline-flex}dialog{width:520px;max-width:calc(100vw - 24px);max-height:90dvh;color:var(--ink);border:0;border-radius:18px;padding:27px;box-shadow:0 25px 100px #0f2b3c33}.modal-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}form label:not(.checkbox){flex-direction:column;gap:8px;margin-bottom:17px;font-size:12px;display:flex}form input:not([type=checkbox]),form select{width:100%;min-height:47px;color:var(--ink);background:#fff;border:1px solid #ccd9e2;border-radius:8px;min-width:0;padding:10px 12px;font-size:16px}.form-grid{grid-template-columns:1fr 1fr;gap:0 15px;display:grid}.checkbox{align-items:center;gap:10px;min-height:35px;margin:8px 0;font-size:13px;display:flex}.checkbox input{width:18px;height:18px;accent-color:var(--navy)}.form-hint{color:var(--muted);font-size:11px;line-height:1.8}.full{width:100%}.form-error{color:var(--red);background:#fceced;border-radius:7px;padding:9px 12px;font-size:12px}.modal-actions{justify-content:space-between;gap:12px;margin-top:18px;display:flex}.delete-button{color:var(--red);font-size:12px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (min-width:1500px){.content{padding-top:45px}.balance-main,.balance-breakdown{padding:38px}}@media (max-width:1100px){.sidebar{width:198px;padding:30px 17px}.brand{font-size:20px}main{margin-left:198px}.content{padding:28px 26px}.topbar{padding:0 26px}.heading-row{flex-wrap:wrap;align-items:flex-start}.balance-main,.balance-breakdown{padding:25px}.overview-grid{gap:16px}.section-box{padding:21px}.mini-stats{flex-wrap:wrap}.paid-button{min-width:34px}.expense-row{gap:9px}.paid-button:not(.is-paid) span{display:none}}@media (max-width:760px){.sidebar{display:none}main{margin-left:0}.topbar{background:#fff;height:65px;padding:0 19px}.mobile-brand{color:var(--navy);align-items:center;gap:8px;font-size:17px;display:flex}.page-context{display:none}.top-actions{gap:5px}.sync-status{gap:5px;font-size:10px}.content{padding:25px 17px 105px}.heading-row{gap:17px;margin-bottom:20px}h1{font-size:25px}.heading-row p{font-size:12px}.month-control{justify-content:space-between;width:100%;padding:3px 9px}.month-control input{text-align:center;max-width:190px;font-size:16px}.month-control button{width:44px}.balance-panel{border-radius:15px;grid-template-columns:1fr}.balance-main{padding:26px 24px}.balance-number{font-size:39px}.balance-breakdown{border-top:1px solid #ffffff18;border-left:0;padding:18px 24px}.balance-breakdown>div{margin-bottom:12px;font-size:12px}.balance-breakdown strong{font-size:15px}.balance-breakdown button{margin-top:1px}.quick-actions{gap:8px;margin:15px 0 22px}.quick-actions button{flex:1;padding:10px 12px;font-size:12px}.quick-actions button:last-child{display:none}.overview-grid,.settings-grid{grid-template-columns:1fr;gap:17px}.section-box{border-radius:12px;padding:20px 18px}.section-heading{margin-bottom:15px}h2{font-size:16px}.cash-box .cash-title{font-size:20px}.expense-row{align-items:flex-start;gap:10px;padding:17px 0 43px;position:relative}.expense-row .row-icon{width:34px;height:37px}.expense-row .row-name{padding-top:2px}.row-name strong{font-size:13px}.row-name span{font-size:10px}.row-amount{padding-top:2px}.row-amount strong{font-size:13px}.expense-row .paid-button{min-height:29px;padding:4px 8px;position:absolute;bottom:9px;left:44px}.paid-button:not(.is-paid) span{display:inline}.expense-row .edit-button{width:37px;min-height:33px;position:absolute;bottom:5px;right:0}.mini-stats{gap:8px;font-size:10px}.save-bar{border-radius:11px;margin-top:23px;padding:10px 12px;bottom:82px;box-shadow:0 4px 18px #163f5914}.save-bar>div{max-width:145px;font-size:10px;line-height:1.5}.save-bar .primary{white-space:nowrap;gap:6px;padding:10px 13px;font-size:12px}.mobile-nav{z-index:5;border-top:1px solid var(--line);padding:6px 9px calc(7px + env(safe-area-inset-bottom));background:#fff;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-nav button{color:#7c8d99;flex-direction:column;flex:1;gap:4px;min-height:51px;font-size:10px;display:flex}.mobile-nav .active{color:var(--navy);background:#edf4f8}.timeline-row{flex-wrap:wrap;gap:11px;padding:17px 0}.timeline-name{flex:1;min-width:100px}.timeline-row>strong{font-size:12px}.timeline-balance{justify-content:flex-end;align-items:center;gap:8px;width:100%;margin-top:-5px;display:flex}.timeline-balance span,.timeline-balance strong{margin:0}.day-pill{width:40px;height:43px;font-size:18px}.banner{align-items:flex-start;gap:7px;padding:12px;font-size:11px}.banner svg{flex-shrink:0}.banner button{font-size:10px}.settings-grid p{font-size:12px}dialog{border-radius:15px;max-height:85dvh;padding:20px}.form-grid{gap:0 11px}.salary-row{gap:9px}.salary-row>strong{font-size:13px}.salary-row .row-icon{width:32px}.salary-row .icon-button{width:33px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#f6f6f4;--muted:#a5a7ad;--navy:#f2f2f0;--blue:#d8dae0;--green:#a8d3be;--bg:#050505;--line:#2e3035;--red:#ffaca6;--gold:#dec28f;font-family:Segoe UI Variable,Segoe UI,-apple-system,PingFang TC,Microsoft JhengHei,sans-serif}html,body{color:var(--ink);background:#050505}button{background:#1b1c20;border:1px solid #464950;font-weight:550;transition:transform .16s,background .16s,border-color .16s}button:hover:not(:disabled){background:#23252a;border-color:#777b83}button:active:not(:disabled){transform:scale(.97)}:is(button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible){outline-offset:3px;outline:2px solid #f2f2f0}.sidebar{background:#0b0b0c;border-color:#2e3035;width:256px;padding:28px 17px}.brand{letter-spacing:-.4px;gap:12px;padding:0 11px;font-size:20px}.brand small{letter-spacing:0;font-size:10px}.bp-mark{letter-spacing:-1.6px;color:#fff;background:#000;border:1px solid #4a4a4a;border-radius:13px;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:18px;font-weight:800;display:grid;box-shadow:inset 0 1px #ffffff26}.aside-label{color:var(--muted);margin:35px 12px 12px;font-size:12px}.section-label{margin-top:29px}.side-scopes{gap:6px;display:grid}.side-scopes button,.sidebar nav button{text-align:left;color:#d8dae0;background:0 0;border:1px solid #0000;border-radius:11px;justify-content:flex-start;gap:11px;width:100%;padding:12px 13px;font-size:14px}.side-scopes button.active,.sidebar nav .active{color:#f6f6f4;background:#26272b;border-color:#494b51;box-shadow:inset 3px 0 #e6e7eb}.sidebar nav{gap:5px;margin-top:0}.side-bottom{color:#d8dae0;border-top:1px solid var(--line);margin-top:auto;padding:20px 11px 0}.side-bottom span{color:#a5a7ad;font-size:10px}main{margin-left:256px}.topbar{background:#090909;border-color:#2e3035;height:88px}.page-context span{color:#a5a7ad}.sync-status{color:#d8dae0;background:#191a1d;border:1px solid #2e3035;border-radius:999px;padding:7px 10px;font-size:11px}.sync-status.pending{color:#dec28f}.icon-button{background:0 0;border:1px solid #0000}.icon-button:hover:not(:disabled){background:#23252a;border-color:#464950}.content{max-width:1400px;padding:33px 35px 40px}h1{letter-spacing:-.7px;font-size:29px}.heading-row p{color:#a5a7ad}.month-control{background:#111214;border-color:#464950}.month-control input{color:#f6f6f4}.month-control button{background:0 0;border:1px solid #0000}.balance-panel{color:#f6f6f4;background:linear-gradient(155deg,#191a1d,#101113 78%);border:1px solid #2e3035;border-radius:17px}.balance-main{padding:30px}.balance-label{color:#a5a7ad;font-size:12px}.balance-number{color:#f6f6f4;letter-spacing:-1px;font-size:clamp(32px,3.6vw,48px);font-weight:650}.balance-number.negative{color:#ffaca6}.balance-main p,.balance-breakdown span,.balance-breakdown p{color:#a5a7ad}.balance-breakdown{background:#0e0f11;border-color:#2e3035;padding:31px}.balance-breakdown p{margin:14px 0 0;font-size:11px}.budget-tag{color:#d8dae0;background:#191a1d;border-color:#37393e}.budget-tag.incomplete{color:#dec28f}.quick-actions button{color:#f6f6f4;background:#1b1c20;border-color:#464950}.quick-actions button:first-child{color:#0a0a0a;background:#f2f2f0;border-color:#f2f2f0}.quick-actions button:first-child:hover{background:#fff}.section-box{background:#111214;border-color:#2e3035;border-radius:17px;padding:24px}.section-heading h2{align-items:center;gap:9px;display:flex}.primary{color:#0a0a0a;background:#f2f2f0;border-color:#f2f2f0;font-weight:650}.primary:hover:not(:disabled){background:#fff;border-color:#fff;box-shadow:0 0 0 4px #ffffff0b}.secondary{color:#f6f6f4;background:#1b1c20;border-color:#464950}.text-button{color:#d8dae0;background:0 0;border-color:#0000}.text-button:hover:not(:disabled){background:#23252a}.people-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:22px 0;display:grid}.person-card{min-width:0}.person-remaining{flex-direction:column;gap:8px;margin:20px 0;display:flex}.person-remaining span{color:#a5a7ad;font-size:12px}.person-remaining strong{letter-spacing:-.6px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:30px}.person-lines{gap:13px;margin-bottom:22px;display:grid}.person-lines>div{justify-content:space-between;gap:15px;font-size:12px;display:flex}.person-lines span{color:#a5a7ad}.person-lines strong{font-size:13px}.cash-mini{border-top:1px solid #2e3035;padding:16px 0 0;font-size:12px;line-height:1.7}.cash-mini p{color:#a5a7ad;margin:4px 0 0;font-size:11px}.warning-chip{color:#dec28f;background:#211b13;border:1px solid #51412c;margin-top:13px;display:inline-block}.family-note{color:#a5a7ad;align-items:flex-start;gap:10px;margin:4px 0 23px;padding:0 3px;display:flex}.family-note svg{flex-shrink:0;margin-top:2px}.family-note p{margin:0;font-size:12px;line-height:1.75}.shared-row{border-top:1px solid #2e3035;padding:18px 0}.shared-row:first-child{border-top:0;padding-top:3px}.shared-row:last-child{padding-bottom:0}.shared-heading{align-items:center;gap:12px;display:flex}.row-icon{color:#d8dae0;background:#1b1c20;border:1px solid #37393e}.row-name strong{color:#f6f6f4}.row-name span,.row-amount span{color:#a5a7ad}.row-amount{overflow-wrap:anywhere;max-width:46%}.payment-parts{gap:8px;margin:15px 0 0 52px;display:grid}.payment-parts>div{background:#18191c;border:1px solid #2e3035;border-radius:9px;flex-wrap:wrap;align-items:center;gap:11px;padding:10px 12px;font-size:11px;display:flex}.payment-parts strong{overflow-wrap:anywhere;flex:1;font-size:13px}.payment-parts small{color:#a5a7ad;font-size:10px}.paid-button{color:#a5a7ad;background:#1b1c20;border-color:#464950;min-height:36px}.paid-button.is-paid{color:#b8d7c4;background:#17231d;border-color:#34503f}.expense-row,.salary-row{border-color:#2e3035}.salary-row{background:#191b1e}.expense-row{padding-top:18px;padding-bottom:18px}.filter-row button{color:#a5a7ad;background:0 0;border-color:#0000}.filter-row .selected{color:#f6f6f4;background:#26272b;border-color:#494b51}.filter-row{margin:0}.item-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px;display:flex}.toolbar-buttons{gap:10px;display:flex}.ledger-box{margin-bottom:20px}.save-bar{background:#111214;border-color:#464950;border-radius:12px;box-shadow:0 7px 22px #0008}.status-dot{background:#d8dae0}.status-dot.pending{background:#dec28f}.banner.error{color:#ffaca6;background:#2e1718;border:1px solid #633335}.banner.warning{color:#dec28f;background:#211b13;border:1px solid #51412c}.banner.success{color:#c0d8c7;background:#16231b;border:1px solid #304c39}.banner button{background:0 0}.empty-small svg,.loading-panel svg{color:#a5a7ad}.timeline-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.timeline-grid>.list-note{grid-column:1/-1}.timeline-row{border-color:#2e3035;flex-wrap:wrap;gap:12px}.day-pill{color:#f6f6f4;background:#1b1c20;border:1px solid #37393e}.timeline-balance{justify-content:flex-end;align-items:center;gap:10px;width:100%;display:flex}.timeline-balance span,.timeline-balance strong{margin:0}.settings-grid{gap:18px}.button-link{border-radius:9px;justify-content:center;align-items:center;min-height:44px;font-size:12px;text-decoration:none;display:inline-flex}.signout{color:#d8dae0}dialog{color:#f6f6f4;background:#111214;border:1px solid #464950;width:560px}dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#000a}form input:not([type=checkbox]),form select{color:#f6f6f4;background:#191a1d;border-color:#464950}form input::placeholder{color:#85878d}.checkbox input{accent-color:#f2f2f0}.form-hint{color:#a5a7ad}.form-error{color:#ffaca6;background:#2e1718;border:1px solid #633335}.delete-button{color:#ffaca6;background:0 0;border-color:#0000}.payment-fields{gap:13px;margin-bottom:17px;display:grid}.payment-fields fieldset{border:1px solid #37393e;border-radius:12px;min-width:0;padding:15px}.payment-fields legend{color:#d8dae0;padding:0 7px;font-size:12px;font-weight:650}.payment-fields .form-grid label{margin-bottom:9px}.mobile-scopes{display:none}.auth-shell{background:#050505;flex-direction:column;align-items:center;min-height:100dvh;padding:40px 20px;display:flex}.auth-brand{align-items:center;gap:13px;margin:15px 0 32px;display:flex}.auth-brand strong{font-size:21px}.auth-brand small{color:#a5a7ad;margin-top:5px;font-size:11px;display:block}.auth-shell main.auth-card{background:linear-gradient(155deg,#191a1d,#101113 78%);border:1px solid #2e3035;border-radius:20px;width:490px;max-width:100%;margin:0;padding:32px}.auth-lock{color:#d8dae0;background:#1b1c20;border:1px solid #464950;border-radius:12px;place-items:center;width:47px;height:47px;margin-bottom:21px;display:grid}.auth-card h1{margin-bottom:13px;font-size:27px;line-height:1.4}.auth-card>p{color:#a5a7ad;margin:0 0 24px;font-size:13px}.auth-card .checkbox{margin:12px 0 21px}.password-input{align-items:center;gap:5px;display:flex}.password-input input{flex:1}.password-input .icon-button{background:#1b1c20;border:1px solid #464950;min-height:47px}.auth-help{color:#d8dae0;text-align:center;margin-top:25px;font-size:12px;line-height:1.8;display:block}.auth-footer{color:#85878d;margin-top:23px;font-size:11px}@media (max-width:1100px){.sidebar{width:210px}.brand{padding:0 5px;font-size:18px}.brand .bp-mark{width:40px;height:42px;font-size:16px}main{margin-left:210px}.content{padding:28px 25px}.topbar{padding:0 25px}.payment-parts{margin-left:0}.balance-main,.balance-breakdown{padding:25px}.timeline-grid{grid-template-columns:1fr}.timeline-balance{width:auto;margin-left:auto}.toolbar-buttons{gap:7px}}@media (max-width:760px){main{margin-left:0}.topbar{background:#090909;height:68px;padding:0 16px}.mobile-brand{color:#f6f6f4;gap:9px;font-size:16px}.mobile-brand .bp-mark{border-radius:9px;width:34px;height:36px;font-size:14px}.sync-status{gap:5px;padding:6px 8px;font-size:9px}.top-actions{gap:3px}.content{padding:19px 16px 110px}.mobile-scopes{background:#111214;border:1px solid #37393e;border-radius:11px;gap:5px;margin-bottom:23px;padding:4px;display:flex}.mobile-scopes button{background:0 0;border-color:#0000;flex:1;min-height:39px;font-size:12px}.mobile-scopes .active{color:#f6f6f4;background:#26272b;border-color:#494b51}.heading-row h1{font-size:24px}.month-control{background:#111214}.balance-main{padding:25px 23px}.balance-number{font-size:37px}.balance-breakdown{background:#0e0f11;border-top-color:#2e3035;padding:18px 23px}.balance-breakdown>div{font-size:12px}.balance-breakdown p{margin:11px 0 0;font-size:10px}.people-grid{grid-template-columns:1fr;gap:16px;margin:19px 0}.section-box{border-radius:14px;padding:20px 17px}.quick-actions{gap:7px;margin-bottom:19px}.quick-actions button{flex:auto;gap:5px;padding:10px 9px;font-size:11px}.quick-actions button:last-child{display:inline-flex}.quick-actions svg{width:16px}.section-heading{gap:7px}h2{font-size:15px}.person-remaining strong{font-size:28px}.shared-heading{align-items:flex-start;gap:9px}.shared-heading .row-icon{width:32px;height:35px}.shared-heading .icon-button{width:32px;min-height:35px}.shared-heading .row-amount{padding-top:2px}.payment-parts{gap:7px;margin-top:12px;margin-left:0}.payment-parts>div{gap:7px;padding:9px 10px}.payment-parts strong{font-size:12px}.payment-parts small{font-size:9px}.paid-button{min-width:54px;min-height:32px;padding:5px 7px;font-size:9px}.expense-row{padding-bottom:47px}.expense-row .paid-button{bottom:10px}.item-toolbar{gap:13px}.toolbar-buttons{width:100%}.toolbar-buttons button{flex:1;font-size:12px}.save-bar{bottom:calc(76px + env(safe-area-inset-bottom));background:#111214;border-color:#464950;box-shadow:0 7px 22px #000b}.save-bar .primary{padding:10px 11px;font-size:11px}.save-bar>div{max-width:142px;font-size:9px}.mobile-nav{background:#090909;border-color:#37393e}.mobile-nav button{color:#a5a7ad;background:0 0;border-color:#0000}.mobile-nav .active{color:#f6f6f4;background:#26272b;border-color:#494b51}.timeline-grid{grid-template-columns:1fr}.timeline-balance{width:100%;margin:0}.timeline-row>strong{font-size:11px}.timeline-name{min-width:100px}.auth-shell{padding:22px 16px}.auth-brand{margin:9px 0 24px}.auth-shell main.auth-card{border-radius:17px;padding:25px 21px}.auth-card h1{font-size:24px}.auth-card>p{font-size:12px}.auth-card .primary{min-height:47px;font-size:13px}.payment-fields fieldset{padding:12px}.payment-fields .form-grid{grid-template-columns:1fr 1fr}.settings-grid p{font-size:12px}}@media (prefers-reduced-motion:reduce){button{transition:none!important}button:hover:not(:disabled),button:active:not(:disabled){transform:none!important}}
