:root{--paper: #f5eeda;--paper-dim: #ece3c9;--ink: #223052;--ink-faint: #22305299;--rule: #b8c7d6;--margin-red: #c4574e;--stamp-violet: #5c3d99;--kraft: #b08d57;--desk: #33291d;--hand: "Caveat", "Segoe Print", cursive;--form: "Libre Franklin", system-ui, sans-serif;--row: 46px;--margin-w: 56px}*{box-sizing:border-box}body{margin:0;background:radial-gradient(1100px 400px at 50% -8%,#ffffff14,transparent 65%),var(--desk);color:var(--ink);font-family:var(--form);font-size:16px;line-height:1.5}.desk{max-width:860px;margin:0 auto;padding:18px 16px 56px}:focus-visible{outline:2.5px solid var(--paper);outline-offset:2px;border-radius:2px}.sheet :focus-visible,.keeper :focus-visible,dialog :focus-visible{outline-color:var(--ink)}.topbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:6px 2px 16px;color:var(--paper)}.wordmark{font-weight:800;letter-spacing:.02em;font-size:1.05rem}.topbar-note{opacity:.75;font-size:.85rem;flex:1}.wallet-area{display:flex;align-items:center;gap:10px}.wallet-info{text-align:right;line-height:1.25}.wallet-info span{font-weight:600;font-size:.88rem;display:block}.wallet-info code{font-size:.7rem;opacity:.7}.note{background:var(--paper);color:var(--ink);border-radius:3px;padding:9px 14px;margin:0 0 12px;font-size:.92rem;box-shadow:0 2px 6px #0006;border-left:4px solid var(--kraft)}.note.ok{border-left-color:var(--stamp-violet)}.note.err{border-left-color:var(--margin-red)}.note a{color:var(--ink)}.page-tabs{display:flex;gap:6px;flex-wrap:wrap;padding:0 10px}.page-tab{font:600 .85rem var(--form);color:#fff7e6;background:var(--kraft);border:none;border-bottom:none;border-radius:7px 7px 0 0;padding:8px 16px 10px;cursor:pointer;opacity:.82;box-shadow:inset 0 -6px 8px -8px #000}.page-tab[aria-selected=true]{background:var(--paper);color:var(--ink);opacity:1;box-shadow:none;font-weight:800}.page-tab .tab-closed{font-size:.7rem;opacity:.75;margin-left:6px}.book{filter:drop-shadow(0 14px 22px #00000073)}.sheet{position:relative;background:linear-gradient(90deg,var(--paper-dim),var(--paper) 26px),var(--paper);border-radius:3px 6px 6px 3px;padding:26px 30px 30px calc(var(--margin-w) + 18px);min-height:420px}.sheet:before{content:"";position:absolute;top:0;bottom:0;left:var(--margin-w);width:1.5px;background:var(--margin-red);opacity:.65}.sheet-loading{font-family:var(--hand);font-size:1.3rem;color:var(--ink-faint)}.sheet-head{border-bottom:2px solid var(--rule);padding-bottom:10px;margin-bottom:2px}.sheet-title-row{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.sheet-kicker{font:600 .68rem var(--form);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint)}.sheet-title{font-family:var(--hand);font-weight:700;font-size:2.2rem;margin:0;line-height:1.05}.sheet-terms{margin:8px 0 0;font-size:.88rem;color:var(--ink)}.sheet-terms b{font-weight:800;font-variant-numeric:tabular-nums}.sheet-details{margin:2px 0 0;font-size:.88rem;color:var(--ink-faint)}.entries{list-style:none;margin:0;padding:0}.entry{position:relative;display:flex;align-items:center;gap:10px;min-height:var(--row);border-bottom:1px solid var(--rule);padding:4px 0}.entry .no{position:absolute;left:calc(-1 * var(--margin-w) - 4px);width:calc(var(--margin-w) - 12px);text-align:center;font:500 .78rem var(--form);color:var(--margin-red);opacity:.85;font-variant-numeric:tabular-nums}.entry .who{display:flex;align-items:baseline;gap:9px;min-width:0}.entry .who b{font-family:var(--hand);font-weight:600;font-size:1.45rem;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entry .who code{font-size:.68rem;color:var(--ink-faint)}.entry .you-mark{font:600 .68rem var(--form);color:var(--stamp-violet);letter-spacing:.06em}.entry .leader{flex:1;border-bottom:2px dotted var(--ink-faint);opacity:.45;height:1px;margin:0 4px;min-width:24px}.entry .amt{font-weight:600;font-variant-numeric:tabular-nums;font-size:.95rem;white-space:nowrap}.blank-rule{min-height:var(--row);border-bottom:1px solid var(--rule)}.empty-invite{font-family:var(--hand);font-size:1.35rem;color:var(--ink-faint);padding:10px 0 2px;margin:0}.stamp{display:inline-block;font:800 .72rem var(--form);letter-spacing:.16em;text-transform:uppercase;color:var(--stamp-violet);border:3px solid currentColor;border-radius:5px;padding:3px 9px;transform:rotate(-5deg);mix-blend-mode:multiply;opacity:.88;filter:url(#inkbleed);white-space:nowrap}.stamp-small{font-size:.6rem;padding:2px 7px;vertical-align:middle}.stamp-red{color:var(--margin-red)}@keyframes stamp-in{0%{transform:rotate(-14deg) scale(2.3);opacity:0}60%{transform:rotate(-4deg) scale(.94);opacity:.95}to{transform:rotate(-5deg) scale(1);opacity:.88}}.stamp-in{animation:stamp-in .4s cubic-bezier(.2,.9,.3,1.2) both}@media(prefers-reduced-motion:reduce){.stamp-in{animation:none}*{transition:none!important}}.sign-line{display:flex;align-items:flex-end;gap:12px;min-height:var(--row);border-bottom:1px solid var(--rule);padding:4px 0 6px}.sign-line input{flex:1;border:none;background:transparent;border-bottom:1.5px dashed var(--ink-faint);font-family:var(--hand);font-size:1.5rem;color:var(--ink);padding:0 4px 2px;border-radius:0}.sign-line input::placeholder{color:var(--ink-faint);opacity:.8}.sign-line input:focus{outline:none;border-bottom:1.5px solid var(--ink)}.sum{display:flex;justify-content:flex-end;gap:18px;align-items:baseline;margin-top:14px;padding-top:8px;border-top:3px double var(--ink);font-size:.9rem}.sum b{font-size:1.05rem;font-weight:800;font-variant-numeric:tabular-nums}.sum .sum-label{color:var(--ink-faint)}.page-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.paid-note{font-family:var(--hand);font-size:1.3rem;color:var(--stamp-violet);margin:14px 0 0}.btn{font:600 .9rem var(--form);cursor:pointer;white-space:nowrap;padding:10px 18px;border-radius:6px;border:1.5px solid var(--ink);background:transparent;color:var(--ink)}.btn:hover{background:#2230520d}.btn:active{transform:translateY(1px)}.btn-ink{background:var(--ink);color:var(--paper)}.btn-ink:hover{background:#2f4070}.btn-red{border-color:var(--margin-red);color:var(--margin-red)}.btn-red:hover{background:#c4574e14}.btn-paper{border-color:var(--paper);color:var(--desk);background:var(--paper)}.btn[disabled]{opacity:.55;cursor:wait}.keeper{margin-top:26px;background:var(--kraft);border-radius:6px;padding:20px;color:#2c2113;box-shadow:inset 0 1px #ffffff40,0 10px 18px #0005}.keeper h3{margin:0 0 2px;font-weight:800;font-size:1.05rem;letter-spacing:.01em}.keeper-note{margin:0 0 14px;font-size:.85rem;opacity:.85}.keeper-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.slip{background:var(--paper);border-radius:4px;padding:16px;box-shadow:0 2px 5px #00000038;color:var(--ink)}.slip h4{margin:0 0 10px;font-weight:800;font-size:.92rem}.slip .slip-gap{margin-top:18px}.slip-note{font-size:.88rem;color:var(--ink-faint);margin:0 0 10px}.slip label{display:block;font-size:.8rem;font-weight:600;margin-bottom:10px}.slip label small{font-weight:400;color:var(--ink-faint)}.slip input{width:100%;margin-top:4px;padding:9px 11px;font:400 .95rem var(--form);border:1px solid var(--rule);border-radius:4px;background:#fffdf6;color:var(--ink)}.slip input:focus{outline:2px solid var(--ink);outline-offset:1px}dialog{border:none;border-radius:6px;padding:0;background:transparent;max-width:380px;width:92vw}dialog::backdrop{background:#1a140dcc}.slip-dialog{padding:22px}.slip-dialog h3{margin:0 0 4px;font-weight:800;font-size:1.05rem}.dialog-row{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.colophon{margin-top:34px;color:#f5eeda99;font-size:.82rem;text-align:center}.colophon a{color:#f5eedacc}.colophon-small{opacity:.7}@media(max-width:600px){:root{--margin-w: 40px;--row: 42px}.sheet{padding:20px 16px 24px calc(var(--margin-w) + 12px)}.entry .no{left:calc(-1 * var(--margin-w) - 8px)}.entry .who b{font-size:1.25rem}.entry .who code{display:none}.sheet-title{font-size:1.8rem}.stamp{font-size:.62rem;border-width:2.5px}.topbar-note{display:none}.sign-line{flex-direction:column;align-items:stretch;gap:8px;border-bottom:none}.sign-line input{border-bottom:1.5px dashed var(--ink-faint);min-height:38px}}.btn-quiet{background:none;border:none;padding:0;margin-top:2px;font:500 .72rem var(--form);color:var(--paper);opacity:.65;text-decoration:underline;cursor:pointer}.btn-quiet:hover{opacity:1}.wallet-list{display:grid;gap:8px;margin-top:6px}.wallet-option{display:flex;align-items:center;gap:12px;width:100%;font:600 .95rem var(--form);color:var(--ink);text-align:left;background:#fffdf6;border:1px solid var(--rule);border-radius:6px;padding:10px 14px;cursor:pointer}.wallet-option:hover{border-color:var(--ink);background:#fff}.wallet-option img{border-radius:6px}.member-dash{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;background:var(--paper);border-radius:4px 4px 0 0;padding:14px 20px;margin:0 6px;border-bottom:2px solid var(--rule);box-shadow:0 -2px 8px #00000030}.dash-who{display:grid;gap:2px}.dash-name-view{display:flex;align-items:baseline;gap:10px}.dash-name{font-family:var(--hand);font-weight:700;font-size:1.7rem;line-height:1.1}.dash-edit-btn{background:none;border:none;padding:0;cursor:pointer;font:500 .75rem var(--form);color:var(--stamp-violet);text-decoration:underline}.dash-edit-btn:hover{opacity:.75}.dash-edit-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:4px 0}.dash-edit-row input{flex:1;min-width:180px;border:none;background:transparent;border-bottom:1.5px dashed var(--ink-faint);border-radius:0;font-family:var(--hand);font-size:1.35rem;color:var(--ink);padding:0 4px 2px}.dash-edit-row input:focus{outline:none;border-bottom-color:var(--ink);border-bottom-style:solid}.dash-who code{font-size:.68rem;color:var(--ink-faint)}.dash-stats{display:flex;gap:22px}.dash-stat{display:grid;justify-items:end;gap:0}.dash-stat b{font-size:1.05rem;font-weight:800;font-variant-numeric:tabular-nums}.dash-stat span{font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint)}.dash-due b{color:var(--stamp-violet)}@media(max-width:600px){.member-dash{margin:0}.dash-stats{width:100%;justify-content:space-between}.dash-stat{justify-items:start}}
