:root{color:#18332d;font-synthesis:none;background:#edf1eb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{overscroll-behavior-y:none;min-width:320px;min-height:100vh;margin:0;overflow-y:scroll}button,input,select{font:inherit}button{color:inherit;-webkit-tap-highlight-color:transparent}.shell{width:min(100%,44rem);min-height:100vh;margin:0 auto;padding:1.25rem 1rem 7rem}.topbar{border-bottom:.06rem solid #d8e0dc;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.1rem;padding-bottom:.9rem;display:flex}.eyebrow{color:#667a73;letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:800}.month-switcher{grid-template-columns:1.6rem 8.5rem 1.6rem;align-items:center;gap:.35rem;display:grid}.month-switcher button{color:#43665d;background:#ffffffa8;border:0;border-radius:50%;place-items:center;width:1.6rem;height:1.6rem;padding:0;font-size:1.2rem;display:grid}.month-switcher .eyebrow{text-align:center;white-space:nowrap}h1,h2{letter-spacing:-.035em;margin:.18rem 0 0}.topbar h1{margin-top:.55rem}h1{font-size:1.65rem}h2{font-size:1.25rem}.person{background:#fff;border:0;border-radius:999px;align-items:center;gap:.5rem;padding:.4rem .75rem .4rem .4rem;font-weight:750;display:flex;box-shadow:0 .15rem .75rem #18332d12}.person img{object-fit:cover;border-radius:50%;width:2rem;height:2rem}.profile-area{position:relative}.profile-popover{z-index:8;background:#fff;border:.08rem solid #dce3df;border-radius:.85rem;min-width:8.5rem;padding:.35rem;position:absolute;top:calc(100% + .45rem);right:0;box-shadow:0 .6rem 1.6rem #17372f22}.theme-setting{padding:.4rem}.theme-setting>span{color:#667a73;margin:0 0 .4rem .15rem;font-size:.65rem;font-weight:800;display:block}.theme-pill{background:#eef2ef;border-radius:.75rem;grid-template-columns:repeat(3,1fr);gap:.2rem;padding:.2rem;display:grid}.theme-pill button{color:#60736c;background:0 0;border:0;border-radius:.58rem;place-items:center;min-height:2.25rem;padding:0;display:grid}.theme-pill button.active{color:#155e4e;background:#fff;box-shadow:0 .08rem .35rem #18332d18}.theme-pill svg{width:1.15rem;height:1.15rem}.profile-popover .logout-button{color:#813d32;text-align:left;background:#fff4ef;border:0;border-radius:.65rem;width:calc(100% - .8rem);min-height:2.6rem;margin:.25rem .4rem .4rem;padding:.65rem .8rem;font-size:.8rem;font-weight:800}.budget-card{color:#fff;background:#163832;border-radius:1.15rem;padding:.9rem 1rem;box-shadow:0 .45rem 1.25rem #18332d1b}.budget-summary{grid-template-columns:1fr auto;align-items:baseline;gap:.1rem 1rem;display:grid}.budget-summary>span{color:#cad8d3;font-size:.75rem;font-weight:750}.budget-card strong{letter-spacing:-.04em;font-size:1.55rem;line-height:1}.budget-card small{color:#aebfba;grid-column:1/-1;margin-top:.05rem;font-size:.68rem}.budget-loading{color:#cad8d3;place-items:center;min-height:6rem;display:grid}.progress{background:#ffffff2c;border-radius:999px;height:.35rem;margin:.7rem 0 .5rem;overflow:hidden}.progress i{border-radius:inherit;background:#f5c453;height:100%;transition:width .2s;display:block}.budget-card.over-budget .progress i{background:#ff6559}.budget-card.over-budget .budget-summary strong{color:#ffb5ae}.budget-foot{color:#d9e3df;justify-content:space-between;gap:1rem;font-size:.78rem;display:flex}.home-view{gap:1rem;display:grid}.quick-card{background:#fff;border-radius:1.4rem;overflow:hidden;box-shadow:0 .25rem 1.2rem #18332d12}.quick-entry-toggle{text-align:left;background:#fff;border:0;justify-content:space-between;align-items:center;width:100%;padding:1.15rem 1.25rem;display:flex}.quick-entry-toggle span,.quick-entry-toggle strong{display:block}.quick-entry-toggle strong{letter-spacing:-.035em;margin-top:.18rem;font-size:1.25rem}.quick-entry-toggle>b{color:#276a5b;background:#e7f2ed;border-radius:50%;place-items:center;width:2.2rem;height:2.2rem;font-size:1.35rem;display:grid}.quick-entry-content{border-top:.06rem solid #e5ebe8;padding:0 1.25rem 1.25rem}.quick-entry-payer{color:#5d716a;justify-content:space-between;align-items:center;gap:.75rem;padding-top:1rem;font-size:.72rem;font-weight:800;display:flex}.payer{color:#8a432b;white-space:nowrap;background:#fff0e9;border:0;border-radius:999px;align-items:center;gap:.35rem;padding:.28rem .65rem .28rem .28rem;font-size:.75rem;font-weight:800;display:flex}.payer img{object-fit:cover;border-radius:50%;width:1.8rem;height:1.8rem}.avatar-patrick{background:#dcefe8!important}.avatar-viktoria{background:#f4dfe3!important}.amount-field{border-bottom:.12rem solid #d7dfdc;justify-content:center;align-items:center;margin:1.4rem 0;display:flex}.amount-field span{color:#73847e;font-size:1.6rem}.amount-field input{color:#17372f;letter-spacing:-.05em;text-align:center;background:0 0;border:0;outline:0;width:11rem;font-size:3.1rem;font-weight:800}.amount-field input::placeholder{color:#c4cdca}.description-field{margin:-.35rem 0 1rem;display:block}.description-field span{color:#5d716a;margin-bottom:.35rem;font-size:.72rem;font-weight:800;display:block}.description-field input{color:#18332d;background:#fbfcfb;border:.08rem solid #d3ddda;border-radius:.8rem;outline:0;width:100%;padding:.8rem .9rem}.description-field input:focus{border-color:#2f796a;box-shadow:0 0 0 .14rem #2f796a1c}.form-label{color:#5d716a;margin-bottom:.4rem;font-size:.72rem;font-weight:800;display:block}.categories{scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:.45rem;margin:0 -.15rem;padding:0 .15rem .3rem;display:flex;overflow-x:auto}.categories::-webkit-scrollbar{display:none}.categories button{color:#fff;scroll-snap-align:start;border:.08rem solid #0000;border-radius:50%;flex:none;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;min-height:2.75rem;padding:0;display:flex}.categories button svg,.category-icon svg,.pot-glyph svg,.pot-icon svg{width:1.2rem;height:1.2rem}.categories button.category-lebensmittel,.category-lebensmittel{background:#2f7d5f}.categories button.category-restaurant,.category-restaurant{background:#d1693f}.categories button.category-shopping,.category-shopping{background:#b55382}.categories button.category-gesundheit,.category-gesundheit{background:#467cad}.categories button.category-haushalt,.category-haushalt{background:#a97d28}.categories button.category-mobilitaet,.category-mobilitaet{background:#2d8586}.categories button.category-freizeit,.category-freizeit{background:#7558a5}.categories button.category-beruf,.category-beruf{background:#8a6147}.categories button.category-urlaub,.category-urlaub{background:#3f83b5}.categories button.category-sonstiges,.category-sonstiges{background:#63766f}.categories button.active{border-color:#fff;box-shadow:0 0 0 .14rem #2b6f60,0 .18rem .55rem #18332d2b}.save{color:#fff;background:#e7643b;border:0;border-radius:1rem;width:100%;margin-top:1rem;padding:1rem;font-weight:850}.save:disabled{color:#87958f;background:#e6ebe8}.details{color:#577069;background:0 0;border:0;margin:.75rem auto 0;font-size:.83rem;font-weight:750;display:block}.detail-trigger{color:#294a41;text-align:left;background:#f8faf9;border:.08rem solid #dce5e1;border-radius:.8rem;justify-content:space-between;align-items:center;width:100%;margin-top:.7rem;padding:.58rem .75rem;display:flex}.detail-trigger>span,.detail-trigger strong,.detail-trigger small{display:block}.detail-trigger strong{font-size:.76rem}.detail-trigger small{color:#71827c;margin-top:.08rem;font-size:.66rem;font-weight:650}.detail-trigger>b{color:#2e7869;background:#e6f1ed;border-radius:50%;place-items:center;width:1.65rem;height:1.65rem;font-size:.9rem;display:grid}.detail-trigger>b svg{stroke-width:2.4px;width:.9rem;height:.9rem}.detail-trigger.open{background:#f2f8f5;border-color:#9fc3b7}.detail-trigger:focus-visible{outline-offset:.12rem;outline:.16rem solid #80aa9d}.detail-panel{background:#f1f5f2;border-radius:1rem;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:1rem;padding:1rem;display:grid}.detail-panel label{min-width:0}.detail-panel label>span{color:#5d716a;margin-bottom:.3rem;font-size:.72rem;font-weight:800;display:block}.detail-panel input,.detail-panel select,.text-field input{background:#fff;border:.08rem solid #d3ddda;border-radius:.75rem;width:100%;padding:.75rem}.detail-panel .check-field{grid-column:1/-1;align-items:center;gap:.5rem;display:flex}.detail-panel .check-field input{width:1.1rem;height:1.1rem}.detail-panel .check-field span{margin:0}.save-message{color:#26725f;text-align:center;margin:.5rem 0 0;font-size:.82rem;font-weight:800}.login-shell{place-items:center;min-height:100dvh;padding:1rem;display:grid}.login-card{text-align:center;background:#fff;border-radius:1.5rem;width:min(100%,27rem);padding:2rem;box-shadow:0 1rem 3rem #17372f1a}.login-card>p{color:#63766f}.brand-mark{color:#fff;background:#e7643b;border-radius:1rem;place-items:center;width:3rem;height:3rem;margin-bottom:1.25rem;font-size:1.4rem;font-weight:900;display:grid}.avatar-choice{grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem;display:grid}.avatar-choice button{background:#f8faf8;border:.1rem solid #e0e7e3;border-radius:1.25rem;padding:.75rem}.avatar-choice .choice-patrick{background:#f0f8f5}.avatar-choice .choice-viktoria{background:#fbf1f3}.avatar-choice button:active{transform:scale(.98)}.avatar-choice img{aspect-ratio:1;object-fit:cover;background:#edf2ef;border-radius:1rem;width:100%;display:block}.avatar-choice strong{margin:.65rem 0 .2rem;font-size:1rem;display:block}.login-confirm{text-align:center;margin-top:1.5rem}.login-confirm>img{object-fit:cover;background:#edf2ef;border-radius:50%;width:5rem;height:5rem}.login-confirm>p{color:#63766f;font-size:.84rem;line-height:1.45}.text-field span{color:#5d716a;margin-bottom:.35rem;font-size:.76rem;font-weight:800;display:block}.form-error{font-size:.82rem;font-weight:700;color:#a6332f!important}.mail-sent{text-align:center;margin-top:1.5rem}.mail-sent>span{color:#fff;background:#2d7c68;border-radius:50%;place-items:center;width:3.2rem;height:3.2rem;margin:auto;font-size:1.5rem;display:grid}.mail-sent>img{object-fit:cover;background:#edf2ef;border-radius:50%;width:5rem;height:5rem}.mail-sent a{color:#155e4e;margin-top:.75rem;font-weight:800;display:inline-block}.login-progress,.loading{color:#536a62;text-align:center;padding:2rem}.view-stack{gap:1rem;margin-top:1rem;display:grid}.view-stack .view-stack{margin-top:0}.panel{background:#fff;border-radius:1.4rem;padding:1.25rem;box-shadow:0 .25rem 1.2rem #18332d12}.section-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.section-heading>span{color:#35675c;background:#edf4f1;border-radius:999px;place-items:center;min-width:2.2rem;height:2.2rem;padding:0 .55rem;font-size:.76rem;font-weight:850;display:grid}.section-toggle{color:#276a5b;background:0 0;border:0;border-top:.06rem solid #e6ebe8;width:100%;margin-top:.85rem;padding:.9rem .5rem .1rem;font-size:.76rem;font-weight:850}.category-list{gap:.9rem;margin-top:1.1rem;display:grid}.category-row{grid-template-columns:2.7rem 1fr;align-items:center;gap:.75rem;display:grid}.category-icon{color:#fff;border-radius:.85rem;place-items:center;width:2.7rem;height:2.7rem;display:grid}.category-row strong,.category-row small{display:block}.category-row small{color:#6c7d77;margin-top:.12rem;font-size:.75rem}.category-row i{background:#e8eeeb;border-radius:999px;height:.3rem;margin-top:.45rem;display:block;overflow:hidden}.category-row i b{border-radius:inherit;background:#e8a94e;height:100%;display:block}.category-row.over-budget i b{background:#dd554b}.category-row.over-budget small{color:#a43e36}.history-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.history-heading>span{color:#35675c;background:#edf4f1;border-radius:999px;place-items:center;min-width:2.2rem;height:2.2rem;padding:0 .55rem;font-size:.76rem;font-weight:850;display:grid}.history-metrics{grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:1rem;display:grid}.history-metrics>div{background:#f3f6f4;border-radius:.85rem;min-width:0;padding:.7rem}.history-metrics small,.history-metrics strong{text-overflow:ellipsis;display:block;overflow:hidden}.history-metrics small{color:#687a74;font-size:.62rem;font-weight:750}.history-metrics strong{white-space:nowrap;margin-top:.18rem;font-size:.82rem}.history-tools{grid-template-columns:1fr auto;gap:.5rem;margin-top:.85rem;display:grid}.history-filters{background:#f3f6f4;border-radius:.9rem;grid-template-columns:1.35fr 1fr 1fr;gap:.5rem;margin-top:.5rem;padding:.7rem;display:grid}.history-filters input,.history-filters select{color:#29463f;background:#fbfcfb;border:.08rem solid #d7dfdc;border-radius:.72rem;outline:0;width:100%;min-width:0;height:2.7rem;padding:0 .65rem;font-size:.72rem}.history-filters input:focus,.history-filters select:focus{border-color:#2f796a;box-shadow:0 0 0 .14rem #2f796a1c}.history-search{min-width:0;position:relative}.history-search span{color:#71817b;font-size:1.05rem;position:absolute;top:50%;left:.75rem;transform:translateY(-53%)}.history-search input{color:#29463f;background:#fbfcfb;border:.08rem solid #d7dfdc;border-radius:.72rem;outline:0;width:100%;height:2.7rem;padding:0 .65rem 0 2rem;font-size:.72rem}.history-search input:focus{border-color:#2f796a;box-shadow:0 0 0 .14rem #2f796a1c}.filter-toggle{color:#365f55;background:#fbfcfb;border:.08rem solid #d7dfdc;border-radius:.72rem;align-items:center;gap:.5rem;min-height:2.7rem;padding:0 .75rem;font-size:.72rem;font-weight:850;display:flex}.filter-toggle b{font-size:1rem}.filter-toggle.open{background:#edf6f2;border-color:#9fc3b7}.history-date-range{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.history-date-range label{min-width:0}.history-date-range label>span{color:#667a73;margin-bottom:.25rem;font-size:.62rem;font-weight:800;display:block}.history-filter-meta{color:#71817b;justify-content:space-between;gap:1rem;margin-top:.65rem;font-size:.68rem;display:flex}.history-filter-meta button{color:#2c6e60;font-size:inherit;background:0 0;border:0;padding:0;font-weight:800}.history-list{margin-top:.45rem}.activity-row{border-bottom:.06rem solid #e7ece9;align-items:center;display:flex}.activity-row:last-child{border-bottom:0}.activity-row-content{width:100%;min-width:0;color:inherit;text-align:left;background:0 0;border:0;flex:1;grid-template-columns:2.6rem minmax(0,1fr) auto;align-items:center;gap:.65rem;padding:.75rem 0;display:grid}button.activity-row-content:active{background:#f5f8f6}.activity-row-remove{color:#8b9a95;background:#f1f4f2;border:0;border-radius:50%;flex:none;place-items:center;width:2.2rem;height:2.2rem;margin-left:.35rem;font-size:1.2rem;display:grid}.history-copy,.history-copy strong,.history-copy small,.history-amount strong,.history-amount small{min-width:0;display:block}.history-copy strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.history-copy small{color:#6f807a;margin-top:.3rem;font-size:.66rem;line-height:1.35}.activity-meta{flex-wrap:wrap;align-items:center;gap:.28rem;display:flex}.activity-meta>span,.activity-meta time{white-space:nowrap;border-radius:999px;align-items:center;min-height:1.35rem;padding:.12rem .45rem;font-size:.6rem;font-weight:800;line-height:1;display:inline-flex}.activity-meta time,.activity-meta .account-tag{color:#5d716a;background:#edf2ef}.activity-meta .person-tag.patrick{color:#236653;background:#dcefe8}.activity-meta .person-tag.viktoria{color:#8a4755;background:#f4dfe3}.activity-meta .person-tag.joint{color:#5f5489;background:#e8e2f4}.history-amount{text-align:right}.history-amount strong{white-space:nowrap;font-size:.82rem}.history-amount small{color:#71817b;margin-top:.2rem;font-size:.6rem;font-weight:750}.history-amount.refund strong{color:#26725f}.recent-payments-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.recent-payments-heading button{color:#276a5b;background:0 0;border:0;padding:.55rem 0 .55rem .75rem;font-size:.72rem;font-weight:850}.recent-payments-list{margin-top:.55rem}.modal-backdrop{z-index:30;-webkit-backdrop-filter:blur(.25rem);backdrop-filter:blur(.25rem);background:#102d27a8;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.expense-modal{background:#fff;border-radius:1.35rem;width:min(100%,34rem);max-height:min(90dvh,48rem);padding:1.25rem;overflow-y:auto;box-shadow:0 1.5rem 4rem #102d2755}.expense-modal:focus{outline:none}.modal-heading{justify-content:space-between;align-items:start;gap:1rem;display:flex}.modal-heading h2{text-overflow:ellipsis;white-space:nowrap;max-width:25rem;overflow:hidden}.modal-heading>button{color:#64766f;background:#edf2ef;border:0;border-radius:50%;flex:none;place-items:center;width:2.3rem;height:2.3rem;font-size:1.35rem;display:grid}.edit-grid{grid-template-columns:1fr 1fr;gap:.7rem;margin-top:1rem;display:grid}.edit-grid .wide{grid-column:1/-1}.edit-grid label>span{color:#60736c;margin-bottom:.3rem;font-size:.68rem;font-weight:800;display:block}.edit-grid input,.edit-grid select{color:#29463f;background:#fff;border:.08rem solid #d3ddda;border-radius:.72rem;outline:0;width:100%;min-width:0;height:2.8rem;padding:0 .7rem}.edit-grid input:focus,.edit-grid select:focus{border-color:#2f796a;box-shadow:0 0 0 .14rem #2f796a1c}.edit-money{border:.08rem solid #d3ddda;border-radius:.72rem;align-items:center;display:flex;overflow:hidden}.edit-money:focus-within{border-color:#2f796a;box-shadow:0 0 0 .14rem #2f796a1c}.edit-money input{border:0;box-shadow:none!important}.edit-money b{color:#6f807a;padding-right:.75rem}.modal-actions{grid-template-columns:1fr auto;gap:.6rem;margin-top:1rem;display:grid}.modal-actions .save{margin:0}.modal-cancel{color:#536a62;background:#edf2ef;border:0;border-radius:.85rem;padding:0 1rem;font-weight:800}.delete-zone{text-align:center;border-top:.06rem solid #e5ebe8;margin-top:1rem;padding-top:.85rem}.delete-zone>button{color:#9b463b;background:0 0;border:0;padding:.5rem;font-size:.74rem;font-weight:800}.delete-modal-backdrop{z-index:45;-webkit-backdrop-filter:blur(.5rem);backdrop-filter:blur(.5rem);background:#102d27b8}.confirm-modal{background:#fff;border-radius:1.35rem;width:min(100%,25rem);padding:1.25rem;box-shadow:0 1.5rem 4rem #102d2755}.confirm-modal h2{margin-top:.45rem}.confirm-modal>p{color:#697a74;font-size:.82rem}.confirm-modal>div{grid-template-columns:1fr 1fr;gap:.6rem;margin-top:1rem;display:grid}.confirm-modal button{color:#536a62;background:#edf2ef;border:0;border-radius:.8rem;min-height:2.8rem;font-size:.76rem;font-weight:850}.confirm-modal .delete-final{color:#fff;background:#b5483c}.empty{color:#71817b}.settlement-card{color:#fff;text-align:center;background:#163832;border-radius:1.4rem;padding:2rem 1.25rem}.settlement-card .eyebrow{color:#a9c4bb}.settlement-card strong{letter-spacing:-.05em;margin-top:1rem;font-size:2.5rem;display:block}.settlement-card p{color:#d6e3de;margin-bottom:0}.settlement-inline .settlement-card{padding:1.4rem 1.25rem}.settlement-inline .settlement-card strong{margin-top:.65rem;font-size:1.8rem}.paid-summary>div{border-bottom:.06rem solid #e6ebe8;justify-content:space-between;padding:.9rem 0;display:flex}.paid-summary p{color:#687a74;font-size:.78rem;line-height:1.5}.bottom-nav{z-index:5;left:50%;bottom:max(.75rem, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(1rem);backdrop-filter:blur(1rem);background:#ffffffec;border:.08rem solid #dce3df;border-radius:1.2rem;grid-template-columns:repeat(4,1fr);width:min(100% - 2rem,42rem);padding:.4rem;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 .6rem 2rem #17372f22}.bottom-nav.keyboard-open{visibility:hidden;opacity:0;pointer-events:none}.bottom-nav button{background:0 0;border:0;border-radius:.9rem;padding:.45rem;font-size:1.15rem}.nav-icon{width:1.2rem;height:1.2rem;margin:0 auto;display:block}.bottom-nav span{margin-top:.1rem;font-size:.64rem;font-weight:750;display:block}.bottom-nav .active{color:#135a4a;background:#e7f2ed}.plan-overview{background:#fff;border-radius:1.4rem;min-width:0;padding:1.25rem;box-shadow:0 .25rem 1.2rem #18332d12}.plan-headline{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:1rem;min-width:0;margin-top:.8rem;display:grid}.plan-headline small,.plan-headline strong{display:block}.plan-headline small{color:#697a74;font-size:.7rem;font-weight:750}.plan-headline strong{margin-top:.18rem;font-size:1.25rem}.plan-headline .plan-free{text-align:right}.plan-headline .plan-free strong{color:#176251;letter-spacing:-.05em;font-size:2.35rem;line-height:1}.plan-overview.negative .plan-free strong{color:#ae3e36}.allocation-bar{background:#e9eeeb;border-radius:999px;height:.65rem;margin-top:1.2rem;display:flex;overflow:hidden}.allocation-bar>i{flex:none;min-width:.15rem;height:100%}.allocation-bar .fixed,.allocation-grid i.fixed{background:#3f7569}.allocation-bar .flexible,.allocation-grid i.flexible{background:#e39a56}.allocation-bar .goals,.allocation-grid i.goals{background:#7e86c8}.allocation-bar .free,.allocation-grid i.free{background:#7ebca9}.allocation-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;margin-top:.8rem;display:grid}.allocation-grid>div{min-width:0}.allocation-grid span,.allocation-grid strong{display:block}.allocation-grid span{color:#687a74;text-overflow:ellipsis;white-space:nowrap;font-size:.62rem;font-weight:750;overflow:hidden}.allocation-grid span i{border-radius:50%;width:.48rem;height:.48rem;margin-right:.3rem;display:inline-block}.allocation-grid strong{text-overflow:ellipsis;white-space:nowrap;margin-top:.22rem;font-size:.76rem;overflow:hidden}.upcoming-plan{background:#f2f0fa;border-radius:.9rem;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding:.8rem .9rem;display:flex}.upcoming-plan span,.upcoming-plan small{display:block}.upcoming-plan span{color:#565b91;font-size:.7rem;font-weight:850}.upcoming-plan small{color:#73768c;margin-top:.15rem;font-size:.65rem}.upcoming-plan>strong{color:#4d548d;white-space:nowrap;font-size:.85rem}.fixed-panel details{margin-top:1rem}.fixed-panel summary{cursor:pointer;color:#35675c;font-size:.84rem;font-weight:800}.fixed-list{margin-top:.65rem}.fixed-list>div{border-bottom:.06rem solid #e7ece9;justify-content:space-between;gap:1rem;padding:.72rem 0;font-size:.84rem;display:flex}.fixed-list b{white-space:nowrap}.one-offs>div{border-bottom:.06rem solid #e7ece9;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 0;display:flex}.one-offs>div:last-child{border-bottom:0}.one-offs span b,.one-offs span small{display:block}.one-offs span small{color:#6c7d77;margin-top:.2rem;font-size:.72rem}.one-offs strong{white-space:nowrap}.plan-editor{padding:0;overflow:hidden}.editor-toggle{text-align:left;background:#fff;border:0;justify-content:space-between;align-items:center;width:100%;padding:1.1rem 1.25rem;display:flex}.editor-toggle span b,.editor-toggle span small{display:block}.editor-toggle span small{color:#6c7d77;margin-top:.2rem;font-size:.72rem}.editor-toggle>strong{color:#2a6e60;font-size:1.4rem}.plan-editor form{border-top:.06rem solid #e7ece9;padding:0 1.25rem 1.25rem}.plan-editor fieldset{border:0;min-width:0;margin:1.2rem 0 0;padding:0}.plan-editor legend{color:#526a62;letter-spacing:.02em;margin-bottom:.75rem;font-size:.76rem;font-weight:850}.editor-grid{grid-template-columns:1fr 1fr;gap:.7rem;display:grid}.editor-list{gap:.5rem;display:grid}.editor-grid label>span:first-child,.editor-list label>span:first-child{color:#60736c;margin-bottom:.3rem;font-size:.7rem;font-weight:750;display:block}.editor-list label{grid-template-columns:1fr 8rem;align-items:center;gap:.75rem;display:grid}.editor-list label>span:first-child{margin:0}.money-input{background:#fff;border:.08rem solid #d3ddda;border-radius:.7rem;align-items:center;display:flex;overflow:hidden}.money-input input,.editor-grid input{background:#fff;border:0;border-radius:.7rem;outline:0;width:100%;min-width:0;padding:.7rem}.money-input input{background:0 0}.editor-grid>label>input{border:.08rem solid #d3ddda}.money-input b{color:#6e7f79;padding-right:.65rem;font-size:.75rem}.money-input:focus-within,.editor-grid input:focus{border-color:#2f796a;box-shadow:0 0 0 .14rem #2f796a1c}.editor-total{border-top:.06rem solid #e7ece9;justify-content:space-between;margin-top:.65rem;padding-top:.75rem;font-size:.8rem;display:flex}.editor-hint{color:#687a74;margin:1rem 0 0;font-size:.72rem;line-height:1.45}.overridden-field>span:first-child{justify-content:space-between;align-items:center;gap:.5rem;display:flex!important}.overridden-field>span:first-child b{color:#8c531f;letter-spacing:.03em;text-transform:uppercase;background:#fff0d8;border-radius:999px;padding:.18rem .4rem;font-size:.55rem}.overridden-field .money-input{border-color:#d99a4c;box-shadow:0 0 0 .1rem #d99a4c18}.overridden-field>small{color:#8b6b46;margin-top:.25rem;font-size:.6rem;display:block}.editor-list .overridden-field>small{grid-column:2;margin-top:-.45rem}.reset-month{color:#9b463b;background:0 0;border:0;margin:.8rem auto 0;padding:.5rem;font-size:.72rem;font-weight:800;display:block}.loan-summary-card{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.9rem 1rem;display:grid}.loan-summary-card h2{font-size:1.55rem}.loan-summary-card small{color:#6c7d77;margin-top:.2rem;font-size:.68rem;display:block}.loan-rate-summary{text-align:right}.loan-rate-summary strong{white-space:nowrap;margin-top:.2rem;display:block}.loan-summary-card>button{color:#1c6555;background:#e7f2ed;border:0;border-radius:.8rem;grid-column:1/-1;min-height:2.8rem;font-size:.78rem;font-weight:850}.loan-manager-heading>button{color:#276a5b;background:0 0;border:0;margin:0 0 1rem;padding:.35rem 0;font-size:.75rem;font-weight:850;display:block}.loan-manager-heading p{color:#697a74;margin:.5rem 0 0;font-size:.76rem;line-height:1.45}.loan-list{margin-top:.8rem}.loan-list-panel .section-heading>button{color:#1c6555;background:#e7f2ed;border:0;border-radius:999px;min-height:2.3rem;padding:0 .75rem;font-size:.7rem;font-weight:850}.loan-row{text-align:left;background:0 0;border:0;border-bottom:.06rem solid #e4eae7;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) minmax(0,.8fr) auto;align-items:center;gap:.8rem;width:100%;padding:.9rem 0;display:grid}.loan-row:last-child{border-bottom:0}.loan-row span strong,.loan-row span small{display:block}.loan-row span small{color:#71817b;margin-top:.2rem;font-size:.62rem}.loan-row>b{color:#2d6e60;white-space:nowrap;font-size:.65rem}.savings-summary{color:#fff;background:linear-gradient(145deg,#245e53,#183b35);border-radius:1.4rem;padding:1.35rem;box-shadow:0 .8rem 2rem #18332d22}.savings-summary .eyebrow{color:#bbd2ca}.savings-summary strong{letter-spacing:-.05em;margin-top:.45rem;font-size:2.5rem;line-height:1;display:block}.savings-summary small{color:#cedbd7;margin-top:.45rem;display:block}.pot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;display:grid}.pot-card{text-align:left;border:.1rem solid #0000;border-radius:1.15rem;flex-direction:column;justify-content:center;min-width:0;padding:.85rem .65rem;display:flex;box-shadow:0 .2rem .8rem #18332d0e}.pot-card.mint,.pot-icon.mint{background:#e1f2eb}.pot-card.blue,.pot-icon.blue{background:#e3edf7}.pot-card.sand,.pot-icon.sand{background:#f6ead1}.pot-card.selected{border-color:#2d7667;box-shadow:inset 0 0 0 .04rem #2d7667}.pot-card>.pot-glyph{color:#fff;border-radius:.7rem;place-items:center;width:2rem;height:2rem;display:grid}.pot-card.mint>.pot-glyph,.pot-icon.mint{background:#2f806a}.pot-card.blue>.pot-glyph,.pot-icon.blue{background:#427bb4}.pot-card.sand>.pot-glyph,.pot-icon.sand{background:#b47d2d}.pot-card small,.pot-card strong,.pot-card em{text-overflow:ellipsis;display:block;overflow:hidden}.pot-card small{color:#536a62;margin-top:.7rem;font-size:.68rem;font-weight:800}.pot-card strong{white-space:nowrap;margin-top:.15rem;font-size:.92rem}.pot-card i{background:#ffffffad;border-radius:999px;height:.25rem;margin-top:.65rem;display:block;overflow:hidden}.pot-card i b{border-radius:inherit;background:#307b6b;height:100%;display:block}.pot-card em{color:#5d716a;white-space:nowrap;margin-top:.3rem;font-size:.6rem;font-style:normal}.pot-card .placeholder{visibility:hidden}.segmented{background:#edf2ef;border-radius:.9rem;grid-template-columns:repeat(3,1fr);gap:.25rem;margin-top:1rem;padding:.25rem;display:grid}.segmented button{color:#60736c;background:0 0;border:0;border-radius:.7rem;min-height:2.65rem;font-size:.72rem;font-weight:800}.segmented button.active{color:#174e42;background:#fff;box-shadow:0 .1rem .4rem #18332d12}.amount-field.small{margin:1rem 0 .25rem}.amount-field.small input{font-size:2.6rem}.field-hint{color:#6d7d78;text-align:center;margin:.35rem 0 0;font-size:.73rem;line-height:1.45}.detail-panel.always-open{margin-top:1rem}.detail-panel .wide{grid-column:1/-1}.savings-entry{padding:0;overflow:hidden}.savings-entry form{border-top:.06rem solid #e7ece9;padding:0 1.25rem 1.25rem}.savings-list{margin-top:.75rem}.pot-icon{color:#fff;border-radius:.8rem;place-items:center;width:2.6rem;height:2.6rem;display:grid}html[data-theme=dark]{color:#eaf3ef;background:#101815}html[data-theme=dark] body{background:#101815}html[data-theme=dark] .eyebrow,html[data-theme=dark] .plan-headline small,html[data-theme=dark] .allocation-grid span,html[data-theme=dark] .history-copy small,html[data-theme=dark] .category-row small,html[data-theme=dark] .empty{color:#9aafa7}html[data-theme=dark] .panel,html[data-theme=dark] .quick-card,html[data-theme=dark] .quick-entry-toggle,html[data-theme=dark] .editor-toggle,html[data-theme=dark] .plan-overview,html[data-theme=dark] .login-card,html[data-theme=dark] .profile-popover,html[data-theme=dark] .expense-modal,html[data-theme=dark] .confirm-modal{color:#eaf3ef;background:#1a2723;box-shadow:0 .45rem 1.5rem #0005}html[data-theme=dark] .person,html[data-theme=dark] .bottom-nav{color:#eaf3ef;background:#1d2a26ed;border-color:#34453f}html[data-theme=dark] .bottom-nav .active{color:#8ed3bd;background:#29433a}html[data-theme=dark] .theme-setting>span{color:#9aafa7}html[data-theme=dark] .theme-pill{background:#111b18}html[data-theme=dark] .theme-pill button{color:#94a9a1}html[data-theme=dark] .theme-pill button.active{color:#a6e0cd;box-shadow:none;background:#2a4038}html[data-theme=dark] .profile-popover .logout-button{color:#f1afa3;background:#3a2925}html[data-theme=dark] .month-switcher button{color:#a7c7bc;background:#23332e}html[data-theme=dark] .topbar{border-color:#304039}html[data-theme=dark] .delete-modal-backdrop{background:#050a08c9}html[data-theme=dark] .confirm-modal>p{color:#a9bbb4}html[data-theme=dark] .quick-entry-content,html[data-theme=dark] .plan-editor form,html[data-theme=dark] .savings-entry form{border-color:#304039}html[data-theme=dark] .detail-panel,html[data-theme=dark] .history-filters,html[data-theme=dark] .history-metrics>div,html[data-theme=dark] .segmented{background:#111c18}html[data-theme=dark] .segmented button{color:#9eb2aa}html[data-theme=dark] .segmented button.active{color:#b9eadb;background:#2a463c;box-shadow:inset 0 0 0 .06rem #4f7f6f}html[data-theme=dark] input,html[data-theme=dark] select,html[data-theme=dark] .description-field input,html[data-theme=dark] .history-search input{color:#eaf3ef;background:#15211d;border-color:#3a4b45}html[data-theme=dark] .money-input{background:#15211d;border-color:#3a4b45}html[data-theme=dark] .money-input input{background:0 0}html[data-theme=dark] input::placeholder{color:#6f847c}html[data-theme=dark] .detail-trigger,html[data-theme=dark] .filter-toggle{color:#b5cbc3;background:#15211d;border-color:#3a4b45}html[data-theme=dark] .detail-trigger.open,html[data-theme=dark] .filter-toggle.open{background:#233a32;border-color:#4c7768}html[data-theme=dark] .editor-hint,html[data-theme=dark] .loan-manager-heading p,html[data-theme=dark] .loan-summary-card small,html[data-theme=dark] .loan-row span small{color:#9aafa7}html[data-theme=dark] .overridden-field>span:first-child b{color:#ffd69b;background:#533d20}html[data-theme=dark] .overridden-field .money-input{border-color:#ba8442;box-shadow:0 0 0 .1rem #ba84421f}html[data-theme=dark] .overridden-field>small{color:#d2b07d}html[data-theme=dark] .loan-summary-card>button,html[data-theme=dark] .loan-list-panel .section-heading>button{color:#a6e0cd;background:#29433a}html[data-theme=dark] .loan-row{border-color:#304039}html[data-theme=dark] .loan-row>b,html[data-theme=dark] .loan-manager-heading>button{color:#8ed3bd}html[data-theme=dark] .activity-row,html[data-theme=dark] .fixed-list>div,html[data-theme=dark] .one-offs>div{border-color:#304039}html[data-theme=dark] .activity-row-remove,html[data-theme=dark] .history-heading>span,html[data-theme=dark] .section-heading>span{color:#9fc9bb;background:#263832}html[data-theme=dark] .section-toggle{color:#8ed3bd;border-color:#304039}html[data-theme=dark] .activity-meta time,html[data-theme=dark] .activity-meta .account-tag{color:#b4c7c0;background:#2a3934}html[data-theme=dark] .activity-meta .person-tag.patrick{color:#b9eadb;background:#275244}html[data-theme=dark] .activity-meta .person-tag.viktoria{color:#f2c5ce;background:#5b3540}html[data-theme=dark] .activity-meta .person-tag.joint{color:#d8cff3;background:#453d61}html[data-theme=dark] .category-row i,html[data-theme=dark] .allocation-bar{background:#31413b}html[data-theme=dark] .plan-headline .plan-free strong{color:#8ed3bd}html[data-theme=dark] .upcoming-plan{background:#292c43}html[data-theme=dark] .upcoming-plan span,html[data-theme=dark] .upcoming-plan>strong{color:#c4c8ff}html[data-theme=dark] .upcoming-plan small{color:#a7aac8}html[data-theme=dark] .fixed-panel summary{color:#8ed3bd}html[data-theme=dark] .settlement-card,html[data-theme=dark] .budget-card{background:#0f332b}html[data-theme=dark] .savings-summary{background:linear-gradient(145deg,#1f4a40,#102d27)}html[data-theme=dark] .pot-card.mint{color:#d8f3e8;background:#24463b}html[data-theme=dark] .pot-card.blue{color:#daeaf8;background:#263d50}html[data-theme=dark] .pot-card.sand{color:#f6e6c6;background:#493c28}html[data-theme=dark] .categories button.active{border-color:#8ed3bd;box-shadow:inset 0 0 0 .08rem #8ed3bd}html[data-theme=dark] .save:disabled{color:#74867f;background:#2b3833}html[data-theme=dark] .modal-cancel,html[data-theme=dark] .confirm-modal button:not(.delete-final){color:#bdd0c9;background:#2b3934}@media (width>=42rem){.shell{padding-top:2rem}}@media (width<=30rem){.shell{padding:1rem .75rem 6.8rem}.topbar{margin-bottom:.8rem}.person{padding-right:.55rem;font-size:.75rem}.budget-card,.quick-card,.panel,.plan-overview,.savings-summary{border-radius:1.2rem}.quick-card,.panel{padding:1rem}.categories{gap:.45rem}.categories button{width:2.6rem;height:2.6rem;min-height:2.6rem;padding:0}.categories button span{font-size:1.05rem}.pot-grid{gap:.4rem}.pot-card{padding:.7rem .5rem}.detail-panel{grid-template-columns:1fr}.detail-panel .check-field,.detail-panel .wide{grid-column:auto}.editor-grid{grid-template-columns:1fr}.plan-headline{grid-template-columns:1fr 1fr;gap:.65rem}.plan-headline>div{min-width:0}.plan-headline strong{text-overflow:ellipsis;white-space:nowrap;font-size:1rem;overflow:hidden}.plan-headline .plan-free strong{font-size:1.65rem}.allocation-grid{grid-template-columns:1fr 1fr}.allocation-grid>div{background:#f4f6f4;border-radius:.7rem;padding:.45rem .55rem}html[data-theme=dark] .allocation-grid>div{background:#111c18}.editor-list label{grid-template-columns:1fr 7rem}.loan-row{grid-template-columns:minmax(0,1fr) auto;gap:.65rem}.loan-row>span:nth-child(3){grid-column:1}.loan-row>b{text-align:right;grid-area:2/2}.budget-foot{gap:.5rem;font-size:.68rem}.history-metrics{gap:.35rem}.history-metrics>div{padding:.6rem .5rem}.history-metrics strong{font-size:.72rem}.history-filters{grid-template-columns:1fr 1fr}.history-filters select:last-child{grid-column:1/-1}.activity-row-content{grid-template-columns:2.5rem minmax(0,1fr) auto;gap:.55rem}.modal-backdrop{align-items:end;padding:0}.expense-modal{width:100%;max-height:calc(100dvh - max(.35rem, env(safe-area-inset-top)));overscroll-behavior:contain;padding:1.1rem 1rem calc(1rem + env(safe-area-inset-bottom));border-radius:1.35rem 1.35rem 0 0;scroll-padding-block:.75rem 5rem}.confirm-modal{width:100%;padding:1.2rem 1rem calc(1rem + env(safe-area-inset-bottom));border-radius:1.35rem 1.35rem 0 0}.savings-entry{padding:0}.edit-grid{grid-template-columns:1fr 1fr;gap:.6rem}.edit-grid .wide{grid-column:1/-1}.modal-actions{grid-template-columns:1fr}.modal-cancel{min-height:2.8rem}}
