@import "https://fonts.googleapis.com/css2?family=Schoolbell&display=swap";
:root{--paper:#f5f2eb;--paper-deep:#f0ede4;--ink:#1a1a1a;--warning:#c50;--white:#fff}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--paper);color:var(--ink);letter-spacing:0;margin:0;font-family:Schoolbell,cursive}button,input,textarea,select{font:inherit}button{color:inherit}input{color:var(--ink);background:0 0;border:0;min-width:0}input:focus{outline:0}.app-page{place-items:center;min-height:100svh;padding:20px;display:grid}.app-stage{place-items:center;width:min(94vw,350px);display:grid}.symbol-defs{display:none}.shape{pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0;overflow:visible}.clipboard-shell{aspect-ratio:300/420;width:min(94vw,340px);position:relative}.clipboard-shape{z-index:0}.clipboard-content{z-index:1;flex-direction:column;display:flex;position:absolute;inset:52px 34px 25px}.screen{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.screen h1,.screen h2,.screen h3,.screen p{margin:0}.screen h1{font-size:clamp(56px,16vw,72px);font-weight:400;line-height:.92}.screen h2{margin-bottom:14px;font-size:34px;font-weight:400;line-height:1}.screen h3{font-size:26px;font-weight:400;line-height:1}.tiny-label{font-size:16px;line-height:1;display:block}.screen-home{justify-content:space-between;padding-bottom:10px}.home-title{padding-top:28px}.home-actions{justify-items:center;gap:8px;display:grid}.recent-note{gap:2px;line-height:1.05;display:grid}.recent-note span,.recent-note small{font-size:16px}.recent-note strong{font-size:24px;font-weight:400}.back-link,.plain-link{cursor:pointer;background:0 0;border:0;align-self:flex-start;margin:0 0 12px;padding:0;font-size:18px;line-height:1}.plain-link{text-underline-offset:4px;margin:9px 0 12px;font-size:20px;text-decoration:underline;text-decoration-thickness:1px}.field-stack{gap:12px;display:grid}.field-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.sketch-field{gap:3px;width:100%;display:grid}.sketch-field span:first-child{font-size:17px;line-height:1}.field-box{width:100%;height:38px;position:relative}.sketch-field.sm .field-box{height:34px}.field-box strong{white-space:nowrap;align-items:center;font-size:19px;font-weight:400;display:flex;position:absolute;inset:0 10px 0 12px;overflow:hidden}.field-input{width:calc(100% - 18px);font-size:19px;line-height:1;position:absolute;inset:0 8px 0 10px}.people-list{flex-wrap:wrap;gap:7px;padding-top:2px;display:flex}.chip{justify-content:center;align-items:center;min-width:56px;height:24px;display:inline-flex;position:relative}.chip span{padding-top:1px;font-size:15px;line-height:1;position:relative}.chip.checked span{padding-left:12px}.person-chip,.chip-button{background:0 0;border:0;justify-content:center;align-items:center;width:66px;height:24px;padding:0;display:inline-flex;position:relative}.chip-button{cursor:pointer}.chip-input{text-align:center;width:58px;height:20px;padding:0 6px;font-size:14px;line-height:1;position:relative}.chip-button span{font-size:18px;line-height:1;position:relative}.checkbox-row{color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:0;font-size:19px;line-height:1;display:flex}.checkbox-row.compact{font-size:17px}.checkbox-row .shape{flex:0 0 17px;width:17px;height:17px;position:relative}.title-row{justify-content:space-between;align-items:start;gap:10px;display:flex}.running-total{justify-content:center;align-items:center;width:112px;height:30px;margin-top:2px;display:flex;position:relative}.running-total span{font-size:17px;line-height:1;position:relative}.item-list{gap:8px;display:grid}.setup-scroll,.item-list-scroll{max-height:235px;padding-right:2px;overflow:auto}.faded-context{opacity:.42}.item-row{cursor:pointer;text-align:left;background:0 0;border:0;width:100%;height:58px;padding:9px 13px 8px;display:grid;position:relative}.item-editor{cursor:default}.item-main,.item-chips{position:relative}.item-main{justify-content:space-between;align-items:baseline;gap:8px;min-width:0;display:flex}.item-main strong{text-overflow:ellipsis;white-space:nowrap;font-size:18px;font-weight:400;line-height:1;overflow:hidden}.item-main span{flex:none;font-size:17px;line-height:1}.item-chips{gap:4px;margin-top:5px;display:flex}.item-input-grid{grid-template-columns:minmax(0,1fr) 82px;display:grid}.item-name-input,.item-price-input input{height:20px;font-size:18px;line-height:1}.item-name-input{width:100%}.item-price-input{justify-content:flex-end;align-items:baseline;gap:3px;display:flex}.item-price-input span{font-size:15px}.item-price-input input{text-align:right;width:48px}.item-chips .chip{min-width:48px;height:20px}.item-chips .chip span{font-size:13px}.mini-add{margin-top:9px}.mini-add-button,.assign-open{cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:flex;position:relative}.mini-add-button{width:150px;height:36px;margin-top:8px}.mini-add-button span,.assign-open span{font-size:17px;line-height:1;position:relative}.assign-open{width:56px;height:20px}.assign-open span{font-size:13px}.charge-lines,.detail-stack,.result-list,.quick-people{gap:10px;display:grid}.service-charge-control{gap:5px;display:grid}.service-charge-top{justify-content:space-between;align-items:center;gap:10px;line-height:1;display:flex}.service-charge-top span,.service-charge-top strong{font-size:20px;font-weight:400}.service-charge-top strong{font-size:22px}.percent-stepper{align-items:center;gap:5px;display:flex}.step-button{cursor:pointer;transform-origin:50%;background:0 0;border:0;flex:0 0 34px;justify-content:center;align-items:center;height:25px;padding:0;transition:transform .15s linear;display:flex;position:relative}.step-button span,.percent-mark{font-size:22px;line-height:1;position:relative}.percent-input-wrap{flex:0 0 76px;height:32px;display:block;position:relative}.percent-input{color:var(--ink);text-align:center;background:0 0;border:0;width:100%;height:100%;padding:0 10px;line-height:1;position:relative}.percent-input:focus{outline:0}.amount-line,.result-person{justify-content:space-between;align-items:center;gap:10px;line-height:1;display:flex}.editable-amount-line{align-items:center}.amount-input-wrap{justify-content:center;align-items:center;gap:3px;width:100px;height:32px;display:flex;position:relative}.amount-input-wrap>span{font-size:15px;line-height:1;position:relative}.amount-input-wrap input{text-align:right;width:48px;font-size:20px;line-height:1;position:relative}.amount-line span,.result-person strong,.result-person span,.warning-line span{font-size:20px;font-weight:400}.amount-line strong,.result-person>span:last-child{font-size:22px;font-weight:400}.warning-line{color:var(--warning);justify-items:end;gap:1px;margin-top:2px;line-height:1;display:grid}.warning-line .shape{width:120px;height:14px;position:relative}.matched-line{justify-content:flex-end;align-items:center;gap:8px;font-size:20px;line-height:1;display:flex}.matched-line .shape{flex:0 0 17px;width:17px;height:17px;position:relative}.result-person{justify-content:start}.result-person strong{flex:1}.status-button,.result-open{color:var(--ink);cursor:pointer;background:0 0;border:0;padding:0}.status-button{flex:0 0 18px;height:18px;position:relative}.result-open{text-align:left;flex:1;justify-content:space-between;align-items:center;gap:10px;line-height:1;display:flex}.status-mark{flex:0 0 18px;height:18px;position:relative}.status-mark .shape{margin:2px;position:absolute}.paid-note{align-items:center;gap:9px;margin-top:14px;font-size:22px;display:flex}.paid-note .shape{flex:0 0 18px;width:18px;height:18px;position:relative}.quick-screen h2{margin-bottom:12px}.quick-amount{gap:1px;margin-bottom:8px;display:grid}.quick-amount span,.per-person span{font-size:18px;line-height:1}.quick-amount strong{font-size:44px;font-weight:400;line-height:.95}.quick-amount .shape{width:min(180px,100%);height:18px;position:relative}.quick-total-input{align-items:baseline;gap:6px;width:185px;display:flex}.quick-total-input span{font-size:26px}.quick-total-input input{width:145px;font-size:44px;line-height:.95}.quick-people{gap:4px}.per-person{gap:2px;margin-top:10px;display:grid}.quick-screen .divider{height:8px;margin:0}.quick-screen .per-person{margin-top:2px;padding-bottom:50px}.per-person strong{font-size:36px;font-weight:400;line-height:1}.divider{width:100%;height:12px;margin:4px 0;position:relative}.bottom-action{color:var(--white);cursor:pointer;transform-origin:50%;background:0 0;border:0;justify-content:center;align-items:center;height:48px;padding:0;transition:transform .15s linear;display:flex;position:absolute;bottom:0;left:0;right:0}.bottom-action span,.sketch-button span{font-size:23px;line-height:1;position:relative}.sketch-button{cursor:pointer;transform-origin:50%;background:0 0;border:0;justify-content:center;align-items:center;width:min(220px,100%);height:44px;padding:0;transition:transform .15s linear;display:flex;position:relative}.sketch-button.primary{color:var(--white)}.sketch-button.outline{color:var(--ink)}.sketch-button:active,.bottom-action:active,.assign-person:active,.assign-open:active,.chip-button:active,.mini-add-button:active,.result-open:active,.status-button:active,.step-button:active,.back-link:active,.plain-link:active{transform:scale(.97)}.sketch-button:focus-visible,.bottom-action:focus-visible,.assign-person:focus-visible,.assign-open:focus-visible,.chip-button:focus-visible,.field-input:focus-visible,.mini-add-button:focus-visible,.result-open:focus-visible,.status-button:focus-visible,.step-button:focus-visible,.percent-input:focus-visible,.chip-input:focus-visible,.back-link:focus-visible,.plain-link:focus-visible{outline:2px dotted var(--ink);outline-offset:3px}.bottom-sheet{height:252px;position:absolute;bottom:-2px;left:-18px;right:-18px}.sheet-shape{z-index:1}.sheet-content{z-index:2;gap:12px;display:grid;position:absolute;inset:42px 33px 22px}.sheet-content strong{margin-top:2px;font-size:22px;font-weight:400;line-height:1;display:block}.assign-options{gap:7px;display:flex}.assign-person{cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:62px;height:28px;padding:0;display:flex;position:relative}.assign-person span{padding-left:10px;font-size:15px;line-height:1;position:relative}.assign-person:nth-child(3) span{padding-left:0}@media (max-width:360px){.app-page{padding:10px}.clipboard-content{left:30px;right:30px}.screen h2{font-size:31px}.amount-line span,.result-person strong,.result-person span,.warning-line span{font-size:18px}}
