:root{--cloth: #1f3a2e;--cloth-line: rgba(246, 240, 228, .045);--paper: #f6f0e4;--paper-shade: #ebe2d0;--ink: #221d16;--ink-soft: #6b604f;--tomato: #c8412b;--tomato-ink: #fff6ee;--mustard: #e3a92b;--display: "Fraunces", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;font-family:var(--sans);color:var(--paper);background-color:var(--cloth);background-image:repeating-linear-gradient(0deg,var(--cloth-line) 0 22px,transparent 22px 44px),repeating-linear-gradient(90deg,var(--cloth-line) 0 22px,transparent 22px 44px),radial-gradient(120% 80% at 50% 0%,rgba(255,255,255,.06),transparent 60%);padding:0 16px}.table{max-width:64rem;margin:0 auto;padding-block:clamp(2rem,6vw,4.5rem) 2rem;display:grid;grid-template-columns:1fr;gap:2rem}@media(min-width:52rem){.table{grid-template-columns:1.05fr .95fr;grid-template-areas:"head head" "form receipt";column-gap:3.5rem;align-items:start}.masthead{grid-area:head}.order{grid-area:form}.receipt{grid-area:receipt;position:sticky;top:2rem}}.kicker{margin:0 0 .6rem;font:600 .72rem/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--mustard)}h1{margin:0;font:700 clamp(2.8rem,9vw,5.2rem) / .92 var(--display);font-variation-settings:"opsz" 144;letter-spacing:-.02em}h1 em{font-weight:500;font-style:italic;color:var(--mustard)}.lede{margin:1rem 0 0;max-width:30rem;font-size:1.05rem;line-height:1.5;color:#f6f0e4b8}.order{display:grid;gap:1.6rem}.field{margin:0;padding:0;border:0;min-width:0}.field>label,.field>legend{display:block;margin-bottom:.55rem;padding:0;font:600 .72rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#f6f0e49e}input{font:inherit;color:inherit}input:focus-visible,button:focus-visible,.toggle input:focus-visible+.track{outline:3px solid var(--mustard);outline-offset:2px}.money-input{display:flex;align-items:baseline;gap:.4rem;border-bottom:2px solid rgba(246,240,228,.35);padding-bottom:.2rem;transition:border-color .15s}.money-input:focus-within{border-color:var(--mustard)}.money-input span{font:500 2rem/1 var(--display);color:var(--mustard)}.money-input input{flex:1;min-width:0;background:none;border:0;outline:none;font:500 clamp(2.4rem,7vw,3.4rem) / 1.1 var(--display);font-variant-numeric:lining-nums tabular-nums}.money-input input::placeholder{color:#f6f0e440}.tips{display:grid;grid-template-columns:repeat(3,1fr) 1.4fr;gap:.5rem}@media(max-width:26rem){.tips{grid-template-columns:repeat(3,1fr)}.tips .custom{grid-column:1 / -1}}.chip{display:flex;align-items:center;justify-content:center;gap:.1rem;min-height:3.2rem;padding:0 .75rem;border:1.5px solid rgba(246,240,228,.3);border-radius:999px;background:transparent;color:var(--paper);font:600 1.15rem/1 var(--mono);cursor:pointer;transition:background .15s,color .15s,border-color .15s,transform .1s}.chip small{font-size:.7em;opacity:.7}.chip:hover{border-color:var(--paper)}.chip:active{transform:translateY(1px)}.chip[aria-pressed=true],.chip.custom.active{background:var(--tomato);border-color:var(--tomato);color:var(--tomato-ink)}.chip.custom{cursor:text}.chip.custom input{width:100%;min-width:0;background:none;border:0;outline:none;text-align:right;font:600 1.05rem/1 var(--mono)}.chip.custom input::placeholder{color:#f6f0e480;font-weight:400;text-align:center}.chip.custom:focus-within{border-color:var(--mustard)}.chip.custom.active input::placeholder{color:var(--tomato-ink)}.stepper{display:inline-flex;align-items:stretch;border:1.5px solid rgba(246,240,228,.3);border-radius:999px;overflow:hidden}.stepper button{width:3.2rem;border:0;background:transparent;color:var(--paper);font:500 1.5rem/1 var(--mono);cursor:pointer}.stepper button:hover{background:#f6f0e414}.stepper input{width:4rem;padding:.6rem 0;border:0;border-inline:1.5px solid rgba(246,240,228,.18);background:transparent;text-align:center;font:600 1.4rem/1 var(--mono);outline:none}.toggle{display:flex;align-items:flex-start;gap:.9rem;cursor:pointer;line-height:1.35}.toggle input{position:absolute;opacity:0;width:1px;height:1px}.toggle .track{flex:none;position:relative;width:2.9rem;height:1.6rem;margin-top:.1rem;border-radius:999px;background:#f6f0e433;transition:background .18s}.toggle .track:after{content:"";position:absolute;top:.2rem;left:.2rem;width:1.2rem;height:1.2rem;border-radius:50%;background:var(--paper);transition:transform .18s}.toggle input:checked+.track{background:var(--tomato)}.toggle input:checked+.track:after{transform:translate(1.3rem)}.toggle strong{display:block;font-weight:600}.toggle .hint{font-size:.88rem;color:#f6f0e499}.receipt{--edge: 10px;position:relative;padding:2rem 1.75rem 4rem;background:var(--paper);color:var(--ink);font-family:var(--mono);box-shadow:0 30px 50px -20px #0000008c,0 2px 0 var(--paper-shade) inset;transform:rotate(.6deg);-webkit-mask:radial-gradient(var(--edge) at 50% 0,#0000 97%,#000) 50% 0 / calc(var(--edge) * 2) 51% repeat-x,radial-gradient(var(--edge) at 50% 100%,#0000 97%,#000) 50% 100% / calc(var(--edge) * 2) 51% repeat-x;mask:radial-gradient(var(--edge) at 50% 0,#0000 97%,#000) 50% 0 / calc(var(--edge) * 2) 51% repeat-x,radial-gradient(var(--edge) at 50% 100%,#0000 97%,#000) 50% 100% / calc(var(--edge) * 2) 51% repeat-x}.receipt-head{margin:0 0 1.4rem;padding-bottom:.9rem;border-bottom:2px solid var(--ink);font:600 .72rem/1 var(--mono);letter-spacing:.3em;text-transform:uppercase;text-align:center}.per{display:grid;gap:.3rem;text-align:center;margin-bottom:1.6rem}.per-label{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}.per-amount{font:700 clamp(3rem,12vw,4.4rem) / 1 var(--display);font-variant-numeric:lining-nums tabular-nums;letter-spacing:-.02em;color:var(--tomato)}.per-sub{font-size:.82rem;color:var(--ink-soft)}.lines{margin:0;display:grid;gap:.55rem;font-size:.95rem}.lines>div{display:flex;align-items:baseline;gap:.5rem}.lines>div[hidden]{display:none}.lines dt{white-space:nowrap}.lines>div:before{content:"";order:1;flex:1;border-bottom:2px dotted rgba(34,29,22,.35);transform:translateY(-.25em)}.lines dd{order:2;margin:0;font-weight:600;font-variant-numeric:tabular-nums}.lines .rule{margin-top:.3rem;padding-top:.7rem;border-top:1px dashed var(--ink);font-weight:600}.lines .extra{color:var(--tomato)}.stamp{position:absolute;right:1.4rem;bottom:1.4rem;margin:0;padding:.25rem .6rem;border:2px solid var(--tomato);border-radius:4px;color:var(--tomato);font:600 .7rem/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;transform:rotate(-8deg);opacity:.75}.error{margin:1.4rem 0 0;padding:.6rem .75rem;background:#c8412b1a;border-left:3px solid var(--tomato);font-size:.85rem}body.empty .per-amount{color:#221d1640}body.empty .stamp{opacity:.2}.foot{max-width:64rem;margin:0 auto;padding-block:1rem 2.5rem;font:400 .72rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#f6f0e466}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media(prefers-reduced-motion:reduce){*{transition:none!important}.receipt,.stamp{transform:none}}
