:root{--bg:#f5f4ed;--paper:#fffef9;--ink:#263e30;--muted:#7c8176;--green:#365b3e;--lime:#deecb8;--line:#dedfd3;--red:#b24f3d;--mono:ui-monospace,SFMono-Regular,Consolas,monospace}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}a{color:inherit;text-decoration:none}[hidden]{display:none!important}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #7e9c48;outline-offset:4px}.page{max-width:1240px;margin:auto;padding:0 58px}.header{height:104px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;font-size:28px;font-weight:800;letter-spacing:-1.6px}.brand-icon{display:inline-grid;place-items:center;background:var(--ink);color:var(--lime);width:33px;height:33px;border-radius:9px;font-size:29px;margin-right:9px;font-weight:400}.brand-dot{align-self:flex-start;font-size:10px;margin:5px 0 0 3px;letter-spacing:0}.header-right,.account-actions{display:flex;align-items:center;gap:22px}.public-badge,.eyebrow,.currency-badge,footer{font-family:var(--mono);font-size:10px;letter-spacing:1.2px;font-weight:500}.public-badge{color:var(--muted);display:flex;align-items:center;gap:7px}.public-badge i{width:6px;height:6px;border-radius:50%;background:#789052}.button{border:1px solid var(--line);border-radius:7px;padding:12px 18px;font-size:12px;font-weight:600;display:inline-flex;justify-content:center;align-items:center;gap:16px;transition:background .15s}.button:hover{background:#e8ebde}.quiet{background:transparent}.primary{background:var(--ink);border-color:var(--ink);color:var(--paper)}.primary:hover{background:#3d5c45}.intro{display:flex;align-items:center;justify-content:space-between;padding:58px 0 40px;gap:22px}.eyebrow{margin:0}.intro .eyebrow{color:#6f7c63}h1{font-size:clamp(38px,4.5vw,58px);line-height:1.09;letter-spacing:-2.8px;margin:24px 0 19px;font-weight:500}h1 span{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400}.intro-copy{font-size:13px;color:var(--muted);line-height:1.7;margin:0}.intro-mark{width:132px;height:148px;border:1px solid var(--line);border-radius:70px 70px 8px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(8deg);margin-right:18px;background:repeating-linear-gradient(0deg,transparent,transparent 5px,#e9e9df 5px,#e9e9df 6px)}.intro-mark span{font-size:83px;line-height:1}.intro-mark small{font-family:var(--mono);font-size:8px;letter-spacing:2px;margin-top:8px}.total-card{border:1px solid #d7dccb;border-radius:14px;padding:29px 34px 30px;background:var(--paper);box-shadow:0 5px 0 #e7e9df}.card-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.card-top .eyebrow{color:#73805e}.currency-badge{background:#f0f1e8;padding:7px 10px;border-radius:4px;font-size:9px;letter-spacing:.6px;color:#73805e}.total-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:30px 0 27px}.small{font-size:11px;line-height:1.6}.muted{color:var(--muted)}.total-heading p{margin:0 0 8px}.total-amount{font-size:clamp(42px,6.8vw,80px);font-weight:500;letter-spacing:-4px;line-height:1.1;font-variant-numeric:tabular-nums}.total-amount>span,.person-amount>span{font-family:var(--mono);font-size:11px;letter-spacing:0;color:var(--muted);font-weight:400}.next-target{display:flex;align-items:center;gap:13px;padding:13px 0 13px 25px;border-left:1px solid var(--line)}.next-target .eyebrow{font-size:9px;letter-spacing:.9px;color:var(--muted)}.next-target strong{font-size:26px;font-weight:500;letter-spacing:-.7px}.target-icon{font-size:25px;color:#819362}.rail{height:23px;background:#eeeee4;border-radius:5px;position:relative;overflow:hidden;background-image:repeating-linear-gradient(90deg,transparent,transparent calc(10% - 1px),#fffef9 calc(10% - 1px),#fffef9 10%)}.fill{position:absolute;top:0;bottom:0;background:var(--green);border-radius:4px;transition:width .5s}.negative .fill{background:var(--red);right:0}.zero-line{position:absolute;inset:0 auto 0 50%;width:2px;background:#c6cab7}.rail .fill{left:50%;max-width:50%}.rail.negative .fill{left:auto;right:50%}.axis{display:flex;justify-content:space-between;font-family:var(--mono);font-size:9px;color:#96998a;margin-top:9px;position:relative}.axis .zero{position:absolute;left:50%;transform:translateX(-50%)}.progress-caption{display:flex;justify-content:space-between;gap:12px;margin-top:17px;font-size:11px;color:var(--muted)}.progress-caption strong{color:var(--ink);font-weight:500}.milestone-heading{display:flex;justify-content:space-between;align-items:center;margin:29px 0 13px;padding-top:24px;border-top:1px solid #e9eade}.milestone-heading .eyebrow{font-size:9px;color:#7d866d}.milestone-heading .small{font-size:10px}.milestones{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.milestone{display:flex;align-items:center;justify-content:center;gap:6px;border:1px solid #e4e6d9;border-radius:5px;padding:10px 4px;color:#8d9281;font-family:var(--mono);font-size:10px}.milestone .dot{width:5px;height:5px;border:1px solid #a8af97;border-radius:50%}.milestone.reached{background:#e5edce;border-color:#d0dfb2;color:#486232}.milestone.reached .dot{background:#486232;border-color:#486232}.milestone.current{border-color:#819760;color:#486232;background:#f5f8ed}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:35px 0 17px}h2{font-size:17px;font-weight:500;letter-spacing:-.4px;margin:0}h2>span{color:#9d9e91;font-family:var(--mono);font-size:10px;margin-left:7px;letter-spacing:0}.individual-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.person-card{padding:25px 27px 24px;border:1px solid var(--line);border-radius:12px;background:#eeefe5}.person-card.bawid{background:#f0ede4}.person-heading,.person-label{display:flex;align-items:center;gap:12px}.person-heading{justify-content:space-between}.avatar{width:36px;height:36px;display:grid;place-items:center;background:#dfe6cd;border-radius:50%;font-family:Georgia,serif;font-size:18px}.bawid .avatar{background:#e3ddcc}.person-heading h3{font-size:14px;font-weight:500;margin:0 0 4px}.person-heading p{font-size:10px;color:var(--muted);margin:0}.person-symbol{font-size:21px;color:#8a9477}.person-amount{font-size:39px;font-weight:500;letter-spacing:-1.9px;margin:27px 0 20px;font-variant-numeric:tabular-nums}.person-card .rail{height:10px;background-color:#e0e3d4;background-image:none}.bawid .rail{background-color:#e3dfd3}.bawid .fill{background:#89845c}.negative-amount{color:var(--red)}.person-card .progress-caption{font-size:10px;margin-top:13px}.bottom-note{display:flex;align-items:center;gap:17px;border-top:1px solid var(--line);margin:40px 0 0;padding:25px 0}.note-icon{font-size:34px;color:#8d9a6f}.bottom-note p{font-size:11px;color:var(--muted);line-height:1.8;margin:0}.bottom-note strong{font-weight:400;color:var(--ink)}.note-number{font-family:Georgia,serif;font-size:40px;font-style:italic;letter-spacing:-3px;margin-left:auto;color:#b0b69e}footer{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding:22px 0 30px;font-size:8px;letter-spacing:.7px;color:#969b89}.footer-divider{padding:0 8px;color:#bdc0b1}.notice{padding:15px;background:#f4e4d8;border-radius:6px;font-size:13px;margin-bottom:15px}.notice button{border:0;background:transparent;text-decoration:underline;color:inherit}.team-panel{margin-top:35px;border-top:1px solid var(--line)}.team-panel .eyebrow{margin-bottom:8px;font-size:9px;color:var(--muted)}.ledger{margin-top:20px}.ledger-row{display:grid;grid-template-columns:85px 60px minmax(0,1fr) 100px 60px;align-items:center;gap:12px;padding:16px 0;border-top:1px solid var(--line);font-size:12px}.ledger-note{overflow-wrap:anywhere;color:var(--muted)}.ledger-amount{text-align:right;font-family:var(--mono);font-size:12px}.delete-button{border:0;color:var(--red);background:transparent;font-size:10px;padding:8px 0}.empty-ledger{padding:35px 0;text-align:center;color:var(--muted);font-size:13px}dialog{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:14px;padding:28px;width:min(440px,calc(100% - 32px));max-height:90dvh;overflow-y:auto;box-shadow:0 20px 90px #17281933}dialog::backdrop{background:#17281975;backdrop-filter:blur(3px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.dialog-top .eyebrow{font-size:9px;color:var(--muted)}.close{background:transparent;border:0;font-size:25px;color:var(--muted);padding:0 4px}dialog h2{font-family:Georgia,serif;font-size:29px;font-weight:400;margin-bottom:14px}dialog p{font-size:12px;line-height:1.6}label{font-size:12px;display:block;margin-top:19px}input,select{width:100%;padding:12px;border:1px solid #d3d8c8;border-radius:5px;background:#fafbf5;color:var(--ink);margin-top:7px;font-size:16px}input::placeholder{color:#a1a695}.form-row{display:grid;grid-template-columns:1fr 1.25fr;gap:14px}.form-row label{min-width:0}.full{width:100%;margin-top:8px;padding:14px}.form-error{color:var(--red);min-height:0;margin:13px 0}.form-error:empty{display:none}.type-toggle{border:0;display:flex;gap:8px;padding:0;margin:20px 0 0}.type-toggle label{flex:1;margin:0;cursor:pointer}.type-toggle input{position:absolute;opacity:0;width:1px;height:1px}.type-toggle span{display:block;text-align:center;border:1px solid var(--line);padding:12px;border-radius:6px}.type-toggle input:checked+span{border-color:var(--green);background:#e8eddb}.type-toggle input:focus-visible+span{outline:3px solid #7e9c48;outline-offset:3px}.danger{color:#fff;background:var(--red);border-color:var(--red)}.danger:hover{background:#953d2f}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--ink);color:var(--paper);border-radius:8px;padding:14px 22px;font-size:12px;box-shadow:0 5px 30px #0002;z-index:10;max-width:90%;text-align:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:1500px){.page{max-width:1320px}.intro{padding-top:70px}}@media(max-width:700px){.page{padding:0 22px}.header{height:82px}.brand{font-size:24px}.brand-icon{width:29px;height:29px}.public-badge{display:none}.header-right,.account-actions{gap:6px}.header .button{padding:10px 11px;font-size:11px}.intro{padding:37px 0 28px}.intro .eyebrow{font-size:8px;letter-spacing:.8px}h1{letter-spacing:-1.8px;font-size:39px;margin-top:20px}.intro-copy{font-size:11px;max-width:270px}.intro-mark{display:none}.total-card{padding:23px 21px;border-radius:11px}.total-heading{margin-top:25px;align-items:flex-start}.total-amount{font-size:48px;letter-spacing:-2.8px}.total-amount>span{font-size:9px}.next-target{padding:5px 0 5px 12px;gap:0;margin-top:4px}.target-icon{display:none}.next-target strong{font-size:21px}.next-target .eyebrow{font-size:7px;letter-spacing:.5px}.currency-badge{font-size:7px;padding:6px}.card-top .eyebrow{font-size:8px;letter-spacing:.9px}.total-heading .small{font-size:10px}.milestones{gap:4px}.milestone{font-size:8px;padding:10px 2px;gap:3px}.milestone .dot{display:none}.milestone-heading{gap:6px;margin-top:23px;padding-top:20px}.milestone-heading .eyebrow{font-size:8px;letter-spacing:.6px}.milestone-heading .small{font-size:8px}.progress-caption{font-size:10px}.section-heading{margin-top:29px}.section-heading>.small{font-size:9px;max-width:110px;text-align:right}h2{font-size:15px}.individual-grid{gap:12px}.person-card{padding:19px 15px}.person-label{gap:7px}.avatar{width:28px;height:28px;font-size:15px}.person-heading h3{font-size:13px}.person-heading p{font-size:8px;max-width:90px;line-height:1.5}.person-symbol{display:none}.person-amount{font-size:29px;letter-spacing:-1.4px;overflow-wrap:anywhere;margin-top:22px}.person-amount>span{font-size:8px}.person-card .progress-caption{font-size:8px;display:block;line-height:1.6}.person-card .progress-caption>span{display:block}.person-card .axis{font-size:7px}.bottom-note{margin-top:29px}footer{font-size:7px;flex-wrap:wrap;line-height:1.7}footer>span:last-child{display:none}.ledger-row{grid-template-columns:70px 45px 1fr 48px;gap:8px;font-size:10px}.ledger-note{grid-column:1/5;grid-row:2}.ledger-amount{font-size:10px}.delete-button{grid-column:4;grid-row:1}.team-panel .button{font-size:10px;padding:11px}.form-row{grid-template-columns:1fr}dialog{padding:23px}.person-card .negative-amount{font-size:26px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.rail.negative .fill{background:var(--red)}
@media(max-width:700px){.total-amount>span,.person-amount>span{display:block;line-height:1;margin-top:7px}.total-heading{flex-wrap:wrap}.total-heading>div:first-child{max-width:100%}.total-amount{overflow-wrap:anywhere}}
