:root{--ink:#0a0a0a;--paper:#fff;--page:#f5f0e1;--page-text:#0a0a0a;--dots:#00000021;--shadow:#0a0a0a;--yellow:#ffd60a;--cyan:#5ce1e6;--pink:#ff90e8;--lime:#b8ff5c;--error:#b00020;--line:3px solid var(--ink);--heavy:"Arial Black", "Helvetica Neue", Impact, system-ui, sans-serif;--mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--page-text);background:var(--page);font-family:system-ui,sans-serif;line-height:1.4}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--page:#121212;--page-text:#f5f0e1;--dots:#ffffff1a;--shadow:#f5f0e1;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--page:#121212;--page-text:#f5f0e1;--dots:#ffffff1a;--shadow:#f5f0e1;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--page) radial-gradient(var(--dots) 1px, transparent 1px) 0 0 / 18px 18px;max-width:32rem;min-height:100vh;margin:0 auto;padding:0 16px 40px}header{grid-template-columns:1fr auto;align-items:start;gap:10px;padding:16px 0 4px;display:grid}.brand{grid-row:span 2}header>button{justify-self:end}header .confirm{grid-column:1/-1}button.theme{text-transform:none;grid-column:2;width:44px;padding:0;font-size:1.4rem}h1{font-family:var(--heavy);text-transform:uppercase;letter-spacing:-.02em;margin:0;font-size:clamp(2rem,10vw,2.75rem);line-height:.95}h1 span{background:var(--pink);color:var(--ink);border:var(--line);box-shadow:4px 4px 0 var(--shadow);padding:0 6px;transition:transform .2s;display:inline-block;transform:rotate(-3deg)}h1:hover span{transform:rotate(3deg)scale(1.05)}.tagline{font-weight:700;font-family:var(--mono);margin:6px 0 0;font-size:.9rem}header .confirm{color:var(--page-text)}h2{font-family:var(--heavy);text-transform:uppercase;letter-spacing:.02em;margin:0 0 8px;font-size:1.05rem}h2:focus{outline:none}h2 label{font:inherit;margin:0}label{margin-bottom:4px;font-weight:700;display:block}label[for=details]{font-family:var(--heavy);text-transform:uppercase;font-size:1rem;font-weight:400}p{margin:4px 0}main{counter-reset:card}section,.bill-line,.checklist,details{background:var(--card,var(--paper));color:var(--ink);border:var(--line);box-shadow:5px 5px 0 var(--shadow);margin-top:22px;padding:14px 14px 12px;position:relative}main>section:first-of-type{--card:var(--yellow)}main>section:nth-of-type(2){--card:var(--cyan)}main>section:nth-of-type(3){--card:var(--pink)}main>section:nth-of-type(4){--card:var(--lime)}section{counter-increment:card}section:before{content:counter(card, decimal-leading-zero);background:var(--ink);color:var(--card);font:900 .8rem var(--mono);padding:3px 8px;position:absolute;top:-13px;right:10px;transform:rotate(4deg)}input,textarea,button{font:inherit;color:var(--ink);border-radius:0}input[type=text],input:not([type]),textarea{border:var(--line);background:var(--paper);width:100%;min-height:44px;padding:6px 10px}textarea{resize:vertical}input:disabled{color:#444;background:repeating-linear-gradient(45deg,#dedede 0 8px,#efefef 8px 16px)}input[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--error)}button{border:var(--line);background:var(--paper);min-width:44px;min-height:44px;box-shadow:4px 4px 0 var(--ink);text-transform:uppercase;letter-spacing:.03em;cursor:pointer;padding:6px 14px;font-weight:800;transition:transform 80ms,box-shadow 80ms}header>button,header .confirm button,main>button.link{box-shadow:4px 4px 0 var(--shadow)}button:hover:not(:disabled){box-shadow:6px 6px 0 var(--ink);transform:translate(-2px,-2px)}button:active:not(:disabled){box-shadow:0 0 0 var(--ink);transform:translate(4px,4px)}button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}button.solid{background:var(--ink);color:var(--paper)}button.link{background:var(--yellow);min-height:44px;margin-top:14px;padding:6px 14px}button.icon{width:44px;min-width:44px;min-height:44px;box-shadow:3px 3px 0 var(--ink);padding:0}button.icon:hover:not(:disabled){background:var(--pink)}:focus-visible{outline:3px dashed var(--ink);outline-offset:3px}header :focus-visible,main>button.link:focus-visible{outline-color:var(--shadow)}h2:focus-visible{outline:3px dashed var(--ink)}input[type=text],input:not([type]),textarea,.money{transition:transform 80ms,box-shadow 80ms}input:not([type=checkbox]):focus,textarea:focus{outline:none}input[type=text]:focus-visible,input:not([type]):focus-visible,textarea:focus-visible,.money:focus-within{box-shadow:5px 5px 0 var(--ink);transform:translate(-2px,-2px)}input:not([type=checkbox]):focus-visible,textarea:focus-visible{background:#fff6c2}.money input:focus-visible{box-shadow:none;transform:none}.row{align-items:center;gap:10px;display:flex}.row>input:not([type=checkbox]){flex:1;min-width:0}.name{overflow-wrap:anywhere;flex:1;font-weight:700}.amount{font:800 1rem var(--mono);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;min-width:6rem}.money{border:var(--line);background:var(--paper);box-shadow:4px 4px 0 var(--ink);display:flex}.money:has(input[aria-invalid=true]){border-color:var(--error)}.money span{background:var(--ink);color:var(--yellow);font:900 1rem var(--mono);align-items:center;padding:0 12px;display:flex}.money input{font:800 1.5rem var(--mono);border:0;min-height:52px}.hint{color:#333;font-weight:400}.error:not(:empty){color:var(--error);background:var(--paper);border:2px solid var(--error);padding:2px 8px;font-weight:700;display:inline-block}.error:empty,.notice:empty{border:0;margin:0;padding:0}.notice:not(:empty){color:var(--ink);background:var(--yellow);border:var(--line);margin-top:12px;padding:8px 12px;font-weight:700;transform:rotate(-1deg)}ul{margin:6px 0;padding:0;list-style:none}.people li{border-bottom:2px dashed var(--ink);min-height:48px}.bubble{white-space:pre-wrap;background:var(--paper);border:var(--line);-webkit-user-select:text;user-select:text;border-radius:0 18px 18px;margin-top:10px;padding:10px 12px;font-size:.95rem}.confirm{width:100%}.confirm p{font-weight:800}.bill-line{--card:var(--yellow);flex-wrap:wrap;justify-content:space-between}.bill-line h2{margin:0}.status{font-family:var(--heavy);background:var(--ink);color:var(--yellow);border:var(--line);box-shadow:6px 6px 0 var(--yellow);margin:22px 0 0;padding:14px;font-size:1.3rem;line-height:1.15}.status.done{background:var(--lime);color:var(--ink);box-shadow:6px 6px 0 var(--shadow);animation:.5s ease-out pop}.meter{appearance:none;border:var(--line);background:var(--paper);width:100%;height:18px;margin-top:12px;display:block}.meter::-webkit-progress-bar{background:var(--paper)}.meter::-webkit-progress-value{background:var(--lime);border-right:var(--line);transition:width .3s}.meter::-moz-progress-bar{background:var(--lime)}.checklist{--card:var(--cyan);padding:4px 12px}.checklist label{border-bottom:2px dashed var(--ink);cursor:pointer;min-height:52px;margin:0 -4px;padding:0 4px;font-weight:400;transition:background .15s}.checklist li:last-child label{border-bottom:0}.checklist label:has(input:checked){background:var(--lime)}.checklist label:hover{background:var(--paper)}.checklist label:has(input:checked):hover{background:var(--lime)}.checklist input{width:26px;height:26px;accent-color:var(--ink);cursor:pointer;margin:0 4px}.checklist .hint{font-size:.85rem;display:block}details{--card:var(--pink)}summary{cursor:pointer;min-height:44px;font-family:var(--heavy);text-transform:uppercase;padding:10px 0 6px}details>.row{margin-top:8px}main>*{animation:.35s ease-out both rise}main>:nth-child(2){animation-delay:50ms}main>:nth-child(3){animation-delay:.1s}main>:nth-child(4){animation-delay:.15s}main>:nth-child(5){animation-delay:.2s}main>:nth-child(n+6){animation-delay:.25s}@keyframes rise{0%{opacity:0;transform:translateY(14px)}}@keyframes pop{0%{transform:scale(.9)rotate(-2deg)}60%{transform:scale(1.04)rotate(1deg)}to{transform:none}}@media (prefers-reduced-motion:reduce){*,:before{transition:none!important;animation:none!important}}
