:root{--ash:#f2f0eb;--ash-2:#e6e3dc;--paper:#fbfaf7;--ink:#1f2124;--ink-2:#4b5056;--smoke:#8a8f94;--line:#d6d2c9;--ember:#e0561b;--ember-2:#b8420f;--moss:#3c7a4e;--moss-2:#2d5f3b;--tan:#d9b382;--tan-2:#b8905c;--radius:14px;--safe-b:env(safe-area-inset-bottom,0px);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{background:var(--ash);color:var(--ink);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums;margin:0;font-family:Sora,system-ui,-apple-system,Segoe UI,sans-serif;font-size:16px;line-height:1.45}button,input,select{font:inherit;color:inherit}h1,h2,h3,p{margin:0}h1{letter-spacing:-.02em;font-size:1.6rem;font-weight:600;line-height:1.15}h2{letter-spacing:-.01em;font-size:1.15rem;font-weight:600}.app{flex-direction:column;max-width:520px;min-height:100dvh;margin:0 auto;display:flex}.screen{padding:20px 20px calc(96px + var(--safe-b));flex-direction:column;flex:1;gap:22px;display:flex}.muted{color:var(--ink-2)}.small{font-size:.875rem}.tiny{color:var(--smoke);font-size:.8rem}.btn{appearance:none;border-radius:var(--radius);cursor:pointer;background:var(--ink);color:var(--paper);border:0;min-height:52px;padding:15px 20px;font-size:1rem;font-weight:600;transition:transform 80ms,background .12s}.btn:active{transform:scale(.985)}.btn:focus-visible,.chip:focus-visible,.tab:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--ember);outline-offset:2px}.btn.ember{background:var(--ember)}.btn.moss{background:var(--moss)}.btn.quiet{background:var(--ash-2);color:var(--ink)}.btn.ghost{color:var(--ink-2);text-underline-offset:3px;background:0 0;padding-left:6px;padding-right:6px;text-decoration:underline}.btn.block{width:100%}.btn.big{min-height:64px;font-size:1.15rem}.btn:disabled{opacity:.45;cursor:default}.row{align-items:center;gap:10px;display:flex}.row.between{justify-content:space-between}.row.wrap{flex-wrap:wrap}.stack{flex-direction:column;gap:10px;display:flex}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:12px;padding:18px;display:flex}.card.ember{border-color:var(--ember)}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{appearance:none;border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:999px;min-height:40px;padding:9px 14px;font-size:.925rem}.chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}label.field{color:var(--ink-2);flex-direction:column;gap:6px;font-size:.925rem;display:flex}.field input,.field select{appearance:none;background:var(--paper);border:1px solid var(--line);color:var(--ink);border-radius:10px;width:100%;min-height:48px;padding:12px 14px;font-size:1.05rem}.stepper{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);grid-template-columns:56px 1fr 56px;align-items:center;display:grid;overflow:hidden}.stepper button{appearance:none;background:var(--ash-2);cursor:pointer;border:0;height:64px;font-size:1.6rem}.stepper output{text-align:center;letter-spacing:-.03em;font-size:2.4rem;font-weight:600}.ration{flex-wrap:wrap;align-items:flex-end;gap:8px 6px;min-height:40px;display:flex}.cig{width:44px;height:14px;display:block}@keyframes ember-glow{0%,to{opacity:.75}50%{opacity:1}}.cig .tip{animation:1.6s ease-in-out infinite ember-glow}@media (prefers-reduced-motion:reduce){.cig .tip{animation:none}.btn{transition:none}}.bignum{letter-spacing:-.04em;font-size:3.4rem;font-weight:600;line-height:1}.bignum small{letter-spacing:0;color:var(--ink-2);margin-left:6px;font-size:1.1rem;font-weight:500}.entries{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.entries li{border-top:1px solid var(--line);grid-template-columns:76px 1fr auto;align-items:center;gap:10px;padding:10px 0;display:grid}.entries li:first-child{border-top:0}.entries .slipmark{color:var(--ember);font-weight:600}.entries button{appearance:none;color:var(--smoke);cursor:pointer;background:0 0;border:0;min-height:36px;padding:6px}.tabs{background:var(--paper);border-top:1px solid var(--line);max-width:520px;padding-bottom:var(--safe-b);grid-template-columns:repeat(4,1fr);margin:0 auto;display:grid;position:fixed;bottom:0;left:0;right:0}.tab{appearance:none;color:var(--smoke);cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;min-height:56px;padding:12px 0 10px;font-size:.85rem;font-weight:500;display:flex}.tab[aria-current=page]{color:var(--ink);font-weight:600}.tab svg{width:22px;height:22px}.sheet-backdrop{z-index:20;background:#1f212473;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--ash);width:100%;max-width:520px;max-height:94dvh;padding:22px 20px calc(24px + var(--safe-b));border-radius:22px 22px 0 0;flex-direction:column;gap:18px;display:flex;overflow:auto}.sheet.ember{background:var(--ember);color:var(--paper)}.sheet.ember .muted,.sheet.ember .tiny{color:#fbfaf7cc}.sheet.ember .chip{color:var(--paper);background:#fbfaf724;border-color:#fbfaf766}.sheet.ember .chip[aria-pressed=true]{background:var(--paper);color:var(--ember-2);border-color:var(--paper)}.sheet.ember .btn{background:var(--paper);color:var(--ember-2)}.sheet.ember .btn.ghost{color:var(--paper);background:0 0}.sheet.ember .field input{color:var(--paper);background:#fbfaf724;border-color:#fbfaf766}.sheet.ember .card{background:#fbfaf71f;border-color:#fbfaf74d}.sheet.moss{background:var(--moss);color:var(--paper)}.sheet.moss .muted,.sheet.moss .tiny{color:#fbfaf7cc}.sheet.moss .btn{background:var(--paper);color:var(--moss-2)}.sheet.moss .btn.ghost{color:var(--paper);background:0 0}.timer{letter-spacing:-.05em;text-align:center;font-size:5rem;font-weight:600;line-height:1}.bars{align-items:flex-end;gap:4px;height:120px;display:flex}.bars .col{flex-direction:column;flex:1;justify-content:flex-end;align-items:stretch;height:100%;display:flex;position:relative}.bars .plan{border-top:2px dashed var(--smoke);position:absolute;left:0;right:0}.bars .actual{background:var(--ink);border-radius:3px 3px 0 0;min-height:2px}.bars .actual.over{background:var(--ember)}.bars .actual.future{background:var(--line)}.axis{gap:4px;margin-top:6px;display:flex}.axis span{text-align:center;color:var(--smoke);flex:1;font-size:.7rem}.stat{flex-direction:column;gap:2px;display:flex}.stat b{letter-spacing:-.02em;font-size:1.5rem;font-weight:600}.stats{grid-template-columns:1fr 1fr;gap:14px 18px;display:grid}.timeline{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.timeline li{grid-template-columns:92px 1fr;align-items:baseline;gap:12px;display:grid}.timeline li b{font-weight:600}.timeline li.done b{color:var(--moss)}.timeline li.todo{color:var(--smoke)}.brand{color:var(--ink-2);align-items:center;gap:10px;font-weight:600;display:flex}.brand svg{width:26px;height:26px}.credit{text-align:center;color:var(--smoke);font-size:.8rem}.credit a{color:inherit}.hbar{grid-template-columns:130px 1fr auto;align-items:center;gap:10px;font-size:.925rem;display:grid}.hbar i{background:var(--ink);border-radius:5px;height:10px;display:block}.hbar i.ember{background:var(--ember)}.wordmark{letter-spacing:-.02em;color:var(--ink);align-items:center;gap:10px;font-weight:600;line-height:1;display:inline-flex}.landing{gap:28px;padding-bottom:40px}.landing header a,.landing-foot a{color:inherit}.hero{flex-direction:column;gap:16px;display:flex}.figure{width:100%;height:auto;margin:4px 0 6px;display:block}.display{letter-spacing:-.03em;font-size:clamp(2rem,8vw,2.6rem);line-height:1.05}.lede{color:var(--ink-2);max-width:34em;font-size:1.05rem}.how ol{color:var(--ink-2);flex-direction:column;gap:12px;margin:12px 0 0;padding-left:1.3em;display:flex}.how li b{color:var(--ink);font-weight:600}.landing-foot{border-top:1px solid var(--line);flex-direction:column;gap:6px;padding-top:16px;display:flex}.prose{gap:14px;max-width:38em}.prose h2{margin-top:8px}.prose a{color:inherit}.streak{color:var(--moss);font-weight:600}.badges{grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;list-style:none;display:grid}.badges li{border:1px solid var(--line);color:var(--smoke);background:var(--ash);border-radius:10px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.badges li b{color:inherit;font-weight:600}.badges li.on{background:var(--paper);border-color:var(--moss);color:var(--ink)}.badges li.on .tiny{color:var(--moss)}.board{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.board li{border-top:1px solid var(--line);grid-template-columns:28px 1fr auto auto;align-items:center;gap:10px;padding:10px 0;display:grid}.board li:first-child{border-top:0}.board li.you .who b{color:var(--moss)}.board .rank{color:var(--smoke);font-weight:600}.board .who{flex-direction:column;min-width:0;display:flex}.board .who b{font-weight:600}.board .pts{flex-direction:column;align-items:flex-end;line-height:1.1;display:flex}.board .pts b{font-size:1.2rem;font-weight:600}.code{letter-spacing:.12em;color:var(--ink);font-weight:600}.cheerline{color:var(--moss);font-weight:500}
