:root{--bg:#f5f5ef;--ink:#223b32;--muted:#7b847c;--green:#285849;--line:#e7e9e1}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}button,input{font:inherit}button{cursor:pointer;border:1px solid var(--line);border-radius:9px;padding:11px 15px;background:#fff;color:var(--ink)}button:hover{background:#edf1e9}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible{outline:3px solid #a7c7ad}header{height:94px;padding:0 5%;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);background:#fafbf7}.brand{display:flex;align-items:center;gap:12px;color:var(--green);text-decoration:none;font-size:35px}.brand span{font-size:25px;font-weight:650;letter-spacing:-1px}.brand small{font-size:9px;letter-spacing:2px;margin:6px 0 0 18px;color:var(--muted)}.status{margin-left:auto;font-size:11px;color:#63836b;margin-right:16px}main{max-width:1430px;margin:auto;padding:46px 5%}.intro{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px}.eyebrow{font-size:10px;letter-spacing:1.7px;color:#829081;font-weight:650}h1{font-size:38px;letter-spacing:-1.4px;font-weight:550;margin:12px 0}p{color:var(--muted);line-height:1.6;margin:8px 0}h2{font-size:17px;font-weight:600;margin:0}h3{font-size:16px}.primary{background:var(--green);color:#fff;border-color:var(--green)}.primary:hover{background:#366a57}.stats{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:18px;margin-bottom:38px}.stats article{padding:25px 28px;background:#fff;border:1px solid var(--line);border-radius:15px}.stats article div{font-size:13px;color:var(--muted)}.stats strong{font-size:34px;font-weight:550;letter-spacing:-1px;display:block;margin:17px 0 12px;font-variant-numeric:tabular-nums}.stats small{font-size:11px;color:var(--muted)}.stats .hero{background:var(--green);color:#fff;border-color:var(--green);position:relative;overflow:hidden}.hero:after{content:'';position:absolute;width:180px;height:180px;border:1px solid #ffffff18;border-radius:50%;right:-50px;bottom:-95px}.stats .hero div,.stats .hero small{color:#d0ded3}.hero span{float:right}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px}nav{display:flex;gap:26px;margin-bottom:22px;border-bottom:1px solid var(--line)}nav button{background:none;border:none;padding:0 0 15px;border-radius:0;color:var(--muted)}nav button.active{border-bottom:2px solid var(--green);color:var(--green);font-weight:600}.panel{background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden}.panelhead{padding:24px;display:flex;align-items:center;justify-content:space-between;gap:10px}.panelhead p{font-size:12px;margin-bottom:0}.tablehead,.item{display:grid;grid-template-columns:minmax(160px,1fr) 140px 120px 30px;align-items:center;gap:12px;padding:12px 24px}.tablehead{background:#fafbf8;color:#8c948b;font-size:10px;letter-spacing:.5px}.item{border-top:1px solid #f0f1eb;min-height:65px}.item:hover{background:#fcfcf8}.name{display:flex;gap:13px;align-items:center;font-size:13px}.badge{background:#f1f3ea;width:34px;height:34px;display:grid;place-items:center;border-radius:9px;color:#73876c;font-size:17px;flex-shrink:0}.amount{text-align:right;font-variant-numeric:tabular-nums;font-weight:550}.alloc{width:100%;text-align:right;background:#fafbf8;border:1px solid #e9ece4;padding:9px;border-radius:7px;color:var(--green)}.edit{border:0;background:none;padding:5px;color:#8b968b}.salary{padding:25px}.salary h2{font-size:23px;margin-top:14px}.salary p{font-size:12px}.salary label{display:block;margin:25px 0 9px;font-size:11px;color:var(--muted)}#salary{width:100%;font-size:27px;padding:13px;border:1px solid #dfe5d8;border-radius:9px;color:var(--ink);background:#fafbf7;outline-color:#92b798}.divider{height:1px;background:var(--line);margin:25px 0}.row{display:flex;justify-content:space-between;align-items:center;gap:12px}.small{font-size:12px}.remainder{background:#edf3e8;padding:17px;margin:17px 0;border-radius:9px}.remainder span{display:block;font-size:11px;color:#647c5d}.remainder strong{font-size:28px;font-weight:550;display:block;margin-top:8px}.hint{margin-bottom:20px}.full{width:100%;margin-top:8px;font-size:12px}.quiet{border:none;background:none;color:var(--muted)}.offline{padding:25px 15px}.offline .icon{font-size:24px;color:#72876c}.offline p{font-size:12px}.offline button{background:none;border:0;padding-left:0;font-size:12px}.tiny{font-size:10px!important}.footnote{font-size:11px;color:#92998e;margin-top:18px}.empty{padding:40px 24px;color:var(--muted)}.history{padding:16px 24px;border-top:1px solid var(--line)}.history small{color:var(--muted);display:block;margin-top:6px}dialog{border:1px solid var(--line);border-radius:18px;padding:25px;width:min(460px,94vw);color:var(--ink)}dialog::backdrop{background:#152c2560;backdrop-filter:blur(3px)}dialog label{display:block;font-size:12px;margin-top:18px}dialog input{display:block;width:100%;padding:12px;border:1px solid var(--line);border-radius:8px;margin-top:8px}.actions{display:flex;justify-content:space-between;margin-top:25px}#formError,#draftError{font-size:12px;color:#b14d3f}.danger{color:#b14d3f!important}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:14px 23px;border-radius:10px;display:none;z-index:5}@media(max-width:1050px){.workspace{grid-template-columns:minmax(0,1fr) 280px;gap:18px}.tablehead,.item{padding:12px;grid-template-columns:minmax(120px,1fr) 110px 95px 24px;gap:7px}.stats strong{font-size:27px}.brand small{display:none}}@media(max-width:760px){header{height:72px;padding:0 5%;gap:8px}.status{font-size:0;margin-right:0}.status:first-letter{font-size:12px}header button{font-size:11px;padding:10px}.brand span{font-size:21px}main{padding-top:28px}h1{font-size:29px}.intro{display:block}.intro>.primary{margin-top:15px}.stats{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:24px}.stats .hero{grid-column:1/-1}.stats article{padding:20px}.stats strong{font-size:25px}.stats small{font-size:10px}.workspace{display:flex;flex-direction:column}.workspace>section{order:2}aside{order:1}.offline{display:none}.salary{padding:20px}.salary .divider{margin:15px 0}.salary label{margin-top:15px}.salary .remainder{margin:12px 0}.salary .hint{margin:8px 0}.salary h2{font-size:20px}nav{gap:20px;margin-top:10px}.panelhead{padding:18px}.panelhead h2{font-size:15px}.panelhead button{font-size:11px}.tablehead,.item{grid-template-columns:minmax(95px,1fr) 90px 85px 20px;font-size:11px;gap:5px}.name{font-size:11px;gap:6px}.badge{display:none}.amount{font-size:12px}.alloc{font-size:12px}.tablehead{font-size:9px}}

.balance-input{width:100%;min-width:0;padding:9px 8px;text-align:right;font-weight:550;font-variant-numeric:tabular-nums;color:var(--ink);border:1px solid #dfe5d8;border-radius:7px;background:#fff}.balance-input:focus{outline:2px solid #92b798;background:#f6f9f2}.balance-input:invalid{border-color:#b14d3f}@media(max-width:760px){.balance-input{font-size:12px;padding:9px 4px}.panelhead p{font-size:11px}}

.workspace>aside{position:sticky;top:18px;align-self:start}.envelope-list .item,.envelope-list .tablehead{grid-template-columns:minmax(120px,1fr) 110px 100px 110px 24px;gap:9px;padding-left:18px;padding-right:18px}.after-head,.after-amount{text-align:right}.after-amount{font-weight:600;font-variant-numeric:tabular-nums;color:#7b847c}.after-amount.has-addition{color:#285849;background:#edf3e8;padding:9px 6px;border-radius:7px}.salary-preview{margin-top:18px;padding-top:15px;border-top:1px solid var(--line);line-height:1.5;align-items:flex-start}.salary-preview b{white-space:nowrap}.distribution-strip{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:12px;background:#edf3e8;padding:12px 18px;border-block:1px solid #dfe5d8;font-size:12px}.distribution-strip[hidden]{display:none}.distribution-strip b{margin-left:auto;white-space:nowrap}.distribution-strip button{font-size:11px;padding:8px 10px}.workspace>section>.panel{overflow:visible}.salary{overflow:hidden}@media(max-width:1100px){.envelope-list .item,.envelope-list .tablehead{grid-template-columns:minmax(90px,1fr) 85px 80px 90px 20px;gap:6px;padding-left:12px;padding-right:12px}.envelope-list .badge{display:none}.envelope-list .name{font-size:12px}.after-amount{font-size:12px}}@media(max-width:760px){.workspace>aside{position:static;align-self:stretch}.envelope-list .item,.envelope-list .tablehead{grid-template-columns:minmax(80px,1fr) 72px 68px 78px 16px;gap:4px;padding-inline:8px}.envelope-list .name{font-size:11px}.envelope-list .tablehead{font-size:8px}.after-amount{font-size:11px}.distribution-strip{font-size:11px;padding:10px}.distribution-strip button{padding:8px}.salary-preview{margin-top:12px}}

.intro{gap:24px;align-items:center}.intro h1{font-size:29px;max-width:650px;letter-spacing:-.8px;margin:0}.toolbar{display:flex;gap:8px;flex-shrink:0;align-items:center}.toolbar button{white-space:nowrap}.stats{grid-template-columns:repeat(4,minmax(0,1fr))}.stats strong{font-size:29px}.stats .salary-card{background:#365e86;color:#fff;border-color:#365e86}.stats .salary-card div,.stats .salary-card small{color:#d9e6f4}.brand span{font-size:21px;letter-spacing:-.6px}@media(max-width:1150px){.intro{align-items:flex-start;flex-direction:column}.stats strong{font-size:25px}.stats article{padding:21px}.intro h1{font-size:28px}}@media(max-width:760px){.intro{display:flex;gap:18px}.intro h1{font-size:27px}.toolbar{width:100%;flex-wrap:wrap}.toolbar button{font-size:12px;padding:10px 12px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stats .hero{grid-column:auto}.stats strong{font-size:23px}.stats article{padding:18px 14px}.brand span{font-size:17px}.brand{gap:7px}}

.workspace{display:block}.workspace>aside{position:static;display:block;margin-top:20px}.envelope-tools{display:flex;gap:8px;padding:16px 24px 0}.envelope-tools button{padding:9px 14px;font-size:12px}.salary.panel{padding:20px 24px;border-radius:12px;background:#fafbf8}.salary h2{font-size:16px;margin:0 0 15px}.income-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.1fr;gap:24px;align-items:center}.salary label{margin:0 0 6px;font-size:11px}#salary{font-size:19px;padding:10px;background:white}.income-stat{display:flex;flex-direction:column;gap:9px}.income-stat span{font-size:11px;color:var(--muted)}.income-stat b{font-size:18px;font-weight:550}.income-actions{display:flex;gap:12px;margin-top:15px}.income-actions button{font-size:12px;padding:10px 14px}.salary .hint{font-size:11px;margin:12px 0 0}.offline{display:block;padding:8px 0}.offline button{font-size:11px}.row-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px}.delete-entry{font-size:19px;line-height:1;border:0;background:none;color:#a96557;padding:5px}.delete-entry:hover{background:#fbeee9}.reserved-mark{padding:5px;color:#c6cbc3}.envelope-list .item,.envelope-list .tablehead{grid-template-columns:minmax(140px,1fr) 140px 130px 140px 55px}.item,.tablehead{grid-template-columns:minmax(160px,1fr) 140px 120px 55px}@media(max-width:760px){.workspace{display:block}.workspace>aside{margin-top:16px}.envelope-tools{padding:14px 16px 0}.salary.panel{padding:18px 16px}.income-grid{grid-template-columns:1fr 1fr;gap:18px}.income-stat b{font-size:17px}.envelope-list .item,.envelope-list .tablehead{grid-template-columns:minmax(75px,1fr) 64px 60px 70px 42px;gap:3px;padding-inline:6px}.row-actions{gap:0}.delete-entry{padding:4px}.item,.tablehead{grid-template-columns:minmax(90px,1fr) 85px 75px 42px}.envelope-list .name{font-size:10px}.envelope-list .tablehead{font-size:8px}.income-actions{flex-wrap:wrap}}

.hidden{display:none!important}.main-navigation{max-width:1430px;margin:22px auto 0;padding:0 5%;display:flex;gap:10px}.main-navigation button{background:none;border-color:transparent;color:#728074}.main-navigation button.active{background:#e5eddf;color:#285849;border-color:#d6e1ce}.main-navigation+main{padding-top:28px}.order-controls{display:flex;gap:2px;align-items:center;flex-shrink:0}.drag-handle{touch-action:none;cursor:grab;user-select:none;padding:6px 3px;font-size:21px;background:none;border:0;color:#73876c}.order-arrows{display:flex;flex-direction:column}.order-arrows button{padding:0 3px;font-size:12px;border:0;background:none;line-height:18px}.dragging{opacity:.5;background:#e5eddf!important}.drop-target{box-shadow:inset 0 -3px #285849;background:#edf3e8!important}.envelope-list .badge{display:none}.name{gap:9px}.envelope-list .item,.envelope-list .tablehead{grid-template-columns:minmax(160px,1fr) 140px 130px 140px 55px}@media(max-width:760px){.envelope-list .item{grid-template-columns:1fr 1fr 1fr 44px;gap:8px;padding:14px 12px}.envelope-list .item>.name{grid-column:1/-1;font-size:13px}.envelope-list .tablehead{grid-template-columns:1fr 1fr 1fr 44px}.envelope-list .tablehead>span:first-child{display:none}.envelope-list .balance-input,.envelope-list .alloc{font-size:14px}.envelope-list .after-amount{font-size:13px}.order-arrows{flex-direction:row;gap:2px}.order-arrows button{font-size:16px;padding:3px 7px}.main-navigation{margin-top:12px}.drag-handle{padding:4px 6px}}

.main-navigation{flex-wrap:wrap}.main-navigation a{padding:10px 16px;color:#285849;text-decoration:none;border-radius:10px;border:1px solid #dce4d9}

.main-navigation{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.main-navigation button,.main-navigation a{display:flex;flex-direction:column;align-items:flex-start;padding:20px!important;border:1px solid #ccd9ca!important;background:#fff;font-size:17px;color:#285849}.main-navigation small{font-size:12px;margin-top:8px}.main-navigation .active{background:#e2eedc}@media(max-width:600px){.main-navigation{grid-template-columns:1fr}.main-navigation button,.main-navigation a{padding:13px!important}}