@font-face{font-family:'Inter Tight';src:url('/fonts/inter-tight-500.ttf') format('truetype');font-display:swap;font-weight:500}
@font-face{font-family:'Inter Tight';src:url('/fonts/inter-tight-400.ttf') format('truetype');font-display:swap;font-weight:400}
:root{--ground:#0b0b0b;--paper:#f2f0ea;--stone:#e3dbcb;--yellow:#ffd60a;--orange:#ff5a2e;--blue:#3a84ff;--pink:#ff4f9a;--green:#2ee88a;--ink:#0b0b0b;font-family:'Inter Tight','Helvetica Neue',Arial,sans-serif;background:var(--ground);color:#f2f2ee;font-size:16px;font-weight:400}*{box-sizing:border-box}body{margin:0}main{max-width:1800px;margin:auto;padding:0 32px}button,input,textarea{font:inherit;color:inherit}button{border:1.5px solid currentColor;border-radius:9999px;padding:10px 18px;background:transparent;cursor:pointer;white-space:nowrap;font-weight:400}button:hover{opacity:.75}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:var(--orange);color:var(--ink);border-color:var(--orange)}a{color:inherit}input,textarea{background:transparent;border:1.5px solid currentColor;border-radius:10px;padding:10px 12px;max-width:100%;min-width:0}textarea{resize:vertical}input:invalid:not(:placeholder-shown){outline-color:#f23b2a}input:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #3a84ff;outline-offset:3px}[hidden]{display:none!important}.appbar{display:flex;align-items:center;gap:24px;min-height:84px;border-bottom:1px solid #3a3a38}.brand{text-decoration:none;font-size:32px;display:flex;align-items:center;gap:12px}.brand span{font-size:22px}.appbar>span{font-size:14px;color:#a8a8a2}.appbar>button{margin-left:auto}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;padding:32px 0 24px}.eyebrow{font-size:11px;letter-spacing:.08em;margin:0 0 10px}.page-heading h1{font-size:88px;line-height:.96;font-weight:500;letter-spacing:-.065em;margin:0}.actions{display:flex;gap:8px;flex-wrap:wrap}.bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px}.tile{border-radius:24px;padding:24px;color:var(--ink);min-width:0}.paper{background:var(--paper)}.stone{background:var(--stone)}.yellow{background:var(--yellow)}h2{font-size:22px;line-height:28px;font-weight:400;margin:0}p{line-height:1.45;margin:12px 0}label,.label{font-size:12px;font-weight:500;line-height:16px}label{display:grid;gap:8px}.intro{grid-column:span 8}.intro #receipt-title{font-size:32px;font-weight:500;border:0;border-bottom:1px dotted var(--ink);border-radius:0;padding:12px 0;width:100%;margin:4px 0 16px}.meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:14px}.status-pill{border:1px solid var(--ink);border-radius:9999px;padding:5px 10px;font-size:12px}.total-tile{grid-column:span 4;display:flex;flex-direction:column;justify-content:space-between;gap:16px}.total-tile strong{font-size:clamp(36px,4.5vw,64px);font-weight:400;line-height:1;letter-spacing:-.045em;font-variant-numeric:tabular-nums}.total-tile>span:last-child{font-size:14px}.people-tile,.split-tile,.comments-tile{grid-column:1/-1}.people{display:flex;flex-wrap:wrap;gap:12px}.person-edit{display:flex;gap:8px;align-items:center;border:1px solid currentColor;border-radius:9999px;padding:6px 8px}.person-edit input{width:105px;border:0;padding:2px;font-size:16px;border-radius:0}.person-edit button{padding:0;width:28px;height:28px;border:0;line-height:1}.avatar{width:28px;height:28px;flex:none;border-radius:50%;border:1px solid #0b0b0b;display:inline-flex;justify-content:center;align-items:center;font-size:12px}.avatar-0{background:var(--blue)}.avatar-1{background:var(--pink)}.avatar-2{background:var(--yellow)}.avatar-3{background:var(--green)}.section-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.section-head p{font-size:14px;margin:6px 0 0}.hint,.scroll-hint{font-size:12px;line-height:1.5}.people-tile .hint{margin-bottom:0}#editor{border-bottom:1px solid;margin-bottom:24px;padding-bottom:24px}.charges{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:24px}.charges input{width:100%}.scroll{overflow:auto;max-width:100%}table{border-collapse:separate;border-spacing:0;font-size:14px;width:100%}th{font-weight:500;text-align:left}th,td{padding:16px 12px;border-bottom:1px solid #9a9992;vertical-align:middle}#matrix{min-width:1450px}#matrix th:not(:first-child),#matrix td:not(:first-child){text-align:center;min-width:84px}#matrix th:first-child,#matrix td:first-child{position:sticky;left:0;background:var(--paper);width:270px;min-width:270px;max-width:270px;z-index:2;padding-left:0}#matrix th:last-child,#matrix td:last-child{position:sticky;right:0;background:var(--paper);min-width:120px;width:120px;border-left:1px solid #9a9992;z-index:3}#matrix thead th{border-bottom:1.5px solid var(--ink);height:52px}.item-name{font-size:16px;line-height:22px}.item-price{font-size:12px;margin-top:8px;font-variant-numeric:tabular-nums}.row-status{display:block;font-size:12px;line-height:16px;margin-top:8px}.cell-check{display:flex;justify-content:center;align-items:center;min-height:44px}input[type=checkbox]{accent-color:#0b0b0b;width:22px;height:22px;margin:0;cursor:pointer}.pct-cell{display:flex;justify-content:center;align-items:center;gap:2px}.percentage{width:67px;padding:8px 2px;text-align:center}.switch-label{display:flex;align-items:center;justify-content:center;gap:8px}.mode-switch{appearance:none;width:42px!important;height:26px!important;border:1.5px solid #0b0b0b;border-radius:9999px;padding:0;position:relative;background:transparent;flex:none}.mode-switch:before{content:'';position:absolute;width:16px;height:16px;border-radius:50%;background:#0b0b0b;left:4px;top:3.5px;transition:transform .15s}.mode-switch:checked{background:#0b0b0b}.mode-switch:checked:before{background:var(--paper);transform:translateX(16px)}.row-all{font-size:11px;padding:4px 8px;margin-top:8px}#matrix tfoot td{border-bottom:0;font-weight:500;white-space:nowrap}#status{font-size:14px;margin-bottom:0}.edit-table{min-width:640px}.edit-table input{width:100%}.edit-table td:first-child{width:60%}.edit-table td:nth-child(2){width:100px}.edit-table td:nth-child(3){width:150px}.edit-table button{padding:8px 12px}.summary-tile{grid-column:span 8}.receipt-tile{grid-column:span 4}#person-totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.person-total{display:flex;align-items:center;gap:12px;border-bottom:1px solid #8a877e;padding:16px 0}.person-total .avatar{width:40px;height:40px;font-size:16px}.person-total .person-name{flex:1;min-width:0;overflow-wrap:anywhere}.person-total strong{font-weight:400;font-size:22px;font-variant-numeric:tabular-nums}.person-total small{font-size:12px;display:block;margin-top:5px}dl{margin:24px 0}dl div{display:flex;justify-content:space-between;gap:16px;margin:16px 0;font-size:14px}dd{margin:0;white-space:nowrap;font-variant-numeric:tabular-nums}.sum{border-top:1.5px solid;padding-top:16px;font-size:22px}.receipt-tile #match{font-size:12px}.receipt-tile>p:last-child{display:flex;justify-content:space-between;font-size:14px}.receipt-tile strong{font-weight:500}.comments-tile{max-width:100%}#comments{margin:16px 0}.comment{border-top:1px solid #96948c;padding:16px 0;display:flex;gap:12px}.comment-main{min-width:0;flex:1}.comment-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:14px}.comment-meta time{font-size:12px}.comment p{white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0}#comment-form{display:grid;grid-template-columns:200px 1fr;gap:16px;align-items:start}#comment-form input,#comment-form textarea{width:100%;font-size:16px}#post-comment{justify-self:start}#comment-status{font-size:14px}.link-row{display:flex;gap:8px;margin-top:8px}.link-row input{flex:1;width:100%;font-size:14px}#share-link{margin-top:20px}#notice{border:1px solid #f2f2ee;border-radius:16px;padding:16px;margin-bottom:12px}#conflict{margin-bottom:12px}footer{display:flex;justify-content:space-between;gap:16px;color:#a8a8a2;padding:24px 0;font-size:12px;line-height:1.5}.editing-disabled{pointer-events:none;opacity:.65}@media(max-width:1000px){.intro{grid-column:span 7}.total-tile{grid-column:span 5}.summary-tile{grid-column:span 7}.receipt-tile{grid-column:span 5}.person-total{flex-wrap:wrap}.person-total strong{font-size:20px}.charges{grid-template-columns:repeat(2,1fr)}.page-heading{align-items:start}.actions{max-width:400px;justify-content:flex-end}#matrix th:first-child,#matrix td:first-child{width:220px;min-width:220px;max-width:220px}}@media(max-width:639px){main{padding:0 12px}.appbar{gap:12px;min-height:72px}.appbar>span{display:none}.page-heading{display:block;padding:24px 0}.page-heading h1{font-size:64px}.actions{justify-content:flex-start;margin-top:24px;max-width:none}.actions button{font-size:14px;padding:10px 14px}.tile{grid-column:1/-1;padding:20px;border-radius:24px}.total-tile strong{font-size:56px}.section-head{align-items:flex-start;flex-wrap:wrap}.people{gap:8px}.person-edit input{width:80px}.person-edit{flex:1;min-width:145px}.person-edit input{flex:1}.person-total{display:grid;grid-template-columns:40px 1fr}.person-total strong{grid-column:2}.charges{grid-template-columns:1fr 1fr;gap:12px}#matrix th:first-child,#matrix td:first-child{width:135px;min-width:135px;max-width:135px}#matrix th:last-child,#matrix td:last-child{min-width:75px;width:75px;padding:10px 5px}.switch-label{gap:3px}.scroll-hint{max-width:280px}#comment-form{grid-template-columns:1fr}footer{flex-direction:column}.link-row{flex-wrap:wrap}.link-row input{flex-basis:100%}#person-totals{gap:0 12px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.person-payment{text-align:right}.paid-control{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:10px;font-size:12px}.paid-control input{width:18px;height:18px}.small-button{font-size:11px;padding:2px 8px}.person-payment small{max-width:180px}#payment-summary{font-size:14px}@media(max-width:639px){.person-payment{grid-column:2;text-align:left}.paid-control{justify-content:flex-start}}
.import-help{margin:0 0 20px;font-size:14px;max-width:760px;color:var(--paper)}.import-help summary{cursor:pointer;width:fit-content}.import-help p{font-size:14px;line-height:1.5}
