:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--color-page:#f4eee3;--color-surface:#fffcf6;--color-surface-sunken:#f1eadd;--color-ink:#1f1a14;--color-ink-muted:#5c5246;--color-rule:#ddd2c1;--color-control-border:#857866;--color-accent:#a33f19;--color-accent-hover:#8a3413;--color-on-accent:#fff;--color-accent-soft:#f6e1d4;--color-focus:#1f5fc4;--color-error:#b0261c;--color-error-soft:#fbe6e2;--color-shadow:31 26 20;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "SFMono-Regular", "Cascadia Mono", "Segoe UI Mono", Menlo, Consolas, monospace;--text-xs:.8125rem;--text-sm:.9375rem;--text-md:1rem;--text-lg:1.25rem;--text-xl:1.5625rem;--text-2xl:clamp(1.953rem, 1.6rem + 1.6vw, 2.441rem);--text-display:clamp(2.441rem, 1.9rem + 2.8vw, 3.815rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--radius-sm:.5rem;--radius-md:.75rem;--radius-lg:1.25rem;--radius-full:999px;--shadow-panel:0 1px 2px rgb(var(--color-shadow) / .06), 0 12px 32px -12px rgb(var(--color-shadow) / .18);--duration-fast:.12s;--duration-base:.2s;--ease-out:cubic-bezier(.2, .8, .2, 1);--control-height:3rem}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--color-page:#15120f;--color-surface:#211c17;--color-surface-sunken:#1a1612;--color-ink:#f3ebdf;--color-ink-muted:#b9ad9c;--color-rule:#3b342b;--color-control-border:#8a7d6b;--color-accent:#f0915f;--color-accent-hover:#f6a87e;--color-on-accent:#1d120b;--color-accent-soft:#3d2618;--color-focus:#8ab4ff;--color-error:#ff9b8f;--color-error-soft:#3a1e1a;--color-shadow:0 0 0}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--color-page);min-block-size:100vh;color:var(--color-ink);font-family:var(--font-sans);font-size:var(--text-md);margin:0;line-height:1.5}h1,h2,p,dl,dd,fieldset{margin:0}fieldset{border:0;min-inline-size:0;padding:0}button,input{font:inherit;color:inherit}[hidden]{display:none!important}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;block-size:1px;inline-size:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.page{inline-size:min(100% - 2 * var(--space-4), 64rem);padding-block:var(--space-6) var(--space-7);margin-inline:auto}.masthead{max-inline-size:36rem;margin-block-end:var(--space-6)}.eyebrow{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent);font-weight:600}.title{font-size:var(--text-display);letter-spacing:-.02em;margin-block:var(--space-1) var(--space-3);font-weight:750;line-height:1.05}.lede{font-size:var(--text-lg);color:var(--color-ink-muted);line-height:1.4}.layout{gap:var(--space-5);align-items:start;display:grid}@media (min-width:48rem){.layout{gap:var(--space-6);grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.receipt{position:sticky;inset-block-start:var(--space-5)}}.panel{background:var(--color-surface);border:1px solid var(--color-rule);border-radius:var(--radius-lg);box-shadow:var(--shadow-panel);padding:var(--space-5)}@media (min-width:30rem){.panel{padding:var(--space-6)}}.panel-title{font-size:var(--text-sm);letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink-muted);margin-block-end:var(--space-5);font-weight:650}.entry{gap:var(--space-5);display:grid}.field{gap:var(--space-2);display:grid}.label{font-weight:600;font-size:var(--text-md);padding:0}legend.label{margin-block-end:var(--space-2)}.sublabel{font-size:var(--text-sm);color:var(--color-ink-muted);margin-block-start:var(--space-2)}.hint{font-size:var(--text-sm);color:var(--color-ink-muted)}.error{font-size:var(--text-sm);color:var(--color-error);font-weight:600}.error:empty{display:none}.error:before{content:"";block-size:1em;inline-size:1em;vertical-align:-.15em;background:currentColor;margin-inline-end:var(--space-1);display:inline-block;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 1.5a8.5 8.5 0 1 0 0 17 8.5 8.5 0 0 0 0-17Zm-1 4h2v6H9v-6Zm0 8h2v2H9v-2Z'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 1.5a8.5 8.5 0 1 0 0 17 8.5 8.5 0 0 0 0-17Zm-1 4h2v6H9v-6Zm0 8h2v2H9v-2Z'/%3E%3C/svg%3E") 50%/contain no-repeat}.input-wrap{align-items:center;display:flex;position:relative}.input{inline-size:100%;min-block-size:var(--control-height);padding-block:var(--space-2);padding-inline:var(--space-4);background:var(--color-surface);border:1.5px solid var(--color-control-border);border-radius:var(--radius-md);font-variant-numeric:tabular-nums;transition:border-color var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out)}.input::placeholder{color:var(--color-ink-muted);opacity:.75}.input:hover{border-color:var(--color-ink-muted)}.input:focus-visible{outline-offset:1px;border-color:var(--color-focus)}.input--money{font-size:var(--text-xl);min-block-size:3.5rem;padding-inline-start:2.25rem;font-weight:600}.input--custom{padding-inline-end:2.25rem}.affix{color:var(--color-ink-muted);pointer-events:none;font-weight:600;position:absolute}.affix--start{font-size:var(--text-xl);inset-inline-start:var(--space-4)}.affix--end{inset-inline-end:var(--space-4)}.has-error .input{border-color:var(--color-error);background:var(--color-error-soft)}.presets{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.preset{min-block-size:var(--control-height);border:1.5px solid var(--color-control-border);border-radius:var(--radius-md);background:var(--color-surface);font-variant-numeric:tabular-nums;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);font-weight:650}.preset:hover{background:var(--color-accent-soft);border-color:var(--color-accent)}.preset:active{transform:scale(.97)}.preset[aria-pressed=true]{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.preset[aria-pressed=true]:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.preset[aria-pressed=true]:before{content:"✓ ";content:"✓ " / ""}.stepper{grid-template-columns:var(--control-height) minmax(0, 7rem) var(--control-height);gap:var(--space-2);align-items:center;display:grid}.input--people{text-align:center;font-size:var(--text-lg);padding-inline:var(--space-2);font-weight:650}.step{inline-size:var(--control-height);block-size:var(--control-height);border:1.5px solid var(--color-control-border);border-radius:var(--radius-full);background:var(--color-surface-sunken);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);place-items:center;display:grid}.step svg{fill:none;stroke:currentColor;stroke-width:2.25px;stroke-linecap:round}.step:hover{background:var(--color-accent-soft);border-color:var(--color-accent)}.step:active{transform:scale(.94)}.step[aria-disabled=true]{cursor:not-allowed;opacity:.45;background:var(--color-surface-sunken);border-color:var(--color-control-border);transform:none}.switch{gap:var(--space-3);cursor:pointer;grid-template-columns:auto 1fr;align-items:center;min-block-size:2.75rem;font-weight:600;display:grid;position:relative}.switch-input{z-index:1;opacity:0;cursor:pointer;block-size:1.75rem;inline-size:3rem;margin:0;position:absolute}.switch-track{border-radius:var(--radius-full);border:1.5px solid var(--color-control-border);background:var(--color-surface-sunken);block-size:1.75rem;inline-size:3rem;transition:background-color var(--duration-base) var(--ease-out);position:relative}.switch-thumb{border-radius:var(--radius-full);background:var(--color-control-border);block-size:1.125rem;inline-size:1.125rem;transition:transform var(--duration-base) var(--ease-out), background-color var(--duration-base) var(--ease-out);position:absolute;inset-block-start:.1875rem;inset-inline-start:.1875rem}.switch-input:checked+.switch-track{background:var(--color-accent);border-color:var(--color-accent)}.switch-input:checked+.switch-track .switch-thumb{background:var(--color-on-accent);transform:translate(1.25rem)}[dir=rtl] .switch-input:checked+.switch-track .switch-thumb{transform:translate(-1.25rem)}.switch-input:hover+.switch-track{border-color:var(--color-accent)}.switch-input:focus-visible+.switch-track{outline:3px solid var(--color-focus);outline-offset:2px}.field--switch .hint{padding-inline-start:calc(3rem + var(--space-3))}.placeholder{min-block-size:12rem;padding:var(--space-5);border:1.5px dashed var(--color-rule);border-radius:var(--radius-md);text-align:center;color:var(--color-ink-muted);place-items:center;display:grid}.placeholder-text{max-inline-size:22ch}.headline{border-block-end:2px dashed var(--color-rule);padding-block-end:var(--space-5)}.headline-label{color:var(--color-ink-muted);font-weight:600}.headline-amount{font-size:var(--text-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--color-accent);overflow-wrap:anywhere;margin-block:var(--space-1) var(--space-2);font-weight:750;line-height:1.1}.headline-note{max-inline-size:40ch}.lines{gap:var(--space-2);padding-block:var(--space-4);border-block-end:2px dashed var(--color-rule);display:grid}.line{justify-content:space-between;gap:var(--space-1) var(--space-4);flex-wrap:wrap;display:flex}.line dd{font-family:var(--font-mono);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.line--total{font-weight:700;font-size:var(--text-lg);border-block-start:1px solid var(--color-rule);margin-block-start:var(--space-1);padding-block-start:var(--space-2)}.line--extra{color:var(--color-ink-muted)}.muted{color:var(--color-ink-muted);font-weight:400}.fineprint{font-size:var(--text-sm);color:var(--color-ink-muted);max-inline-size:60ch;padding-block-start:var(--space-4)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.preset:active,.step:active{transform:none}}@media (forced-colors:active){.preset[aria-pressed=true],.switch-input:checked+.switch-track{border-width:3px}}
