@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-latin-var.woff2) format("woff2-variations");font-weight:400 700;font-style:normal;font-display:swap}:root{--bg: #f2f0e6;--fg: #22251f;--dim: #767b6e;--line: #d2cfbf;--red: #a3301f;--amber: #8a6111;--green: #2f6b32;--mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "DejaVu Sans Mono", monospace;color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--bg: #0f1210;--fg: #ccd4c6;--dim: #6c7667;--line: #2b3129;--red: #e0796d;--amber: #d6ad5f;--green: #86c67c}}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--mono);font-size:13.5px;line-height:1.55;font-variant-ligatures:none;-webkit-text-size-adjust:100%}#app{max-width:46ch;margin:0 auto;padding:max(10px,env(safe-area-inset-top)) 1ch calc(16px + env(safe-area-inset-bottom))}.bar{display:flex;align-items:center;justify-content:space-between;gap:1ch;background:var(--fg);color:var(--bg);padding:2px 1ch;font-weight:700}.bar.keys{margin-top:12px;font-weight:400;gap:0}.bar button{background:none;border:0;color:inherit;font:inherit;padding:9px 1ch;cursor:pointer}.bar button:active,.bar button:focus-visible{background:var(--bg);color:var(--fg);outline:none}@media(hover:hover){.bar button:hover{background:var(--bg);color:var(--fg)}}.sysline{color:var(--dim);padding:3px 1ch 10px;margin:0}.sysline .warn{color:var(--amber)}ul.chores{list-style:none;margin:0;padding:0}li.chore{border-top:1px solid var(--line);padding:9px 1ch 10px}li.chore:last-child{border-bottom:1px solid var(--line)}.chore .r1,.chore .r3{display:flex;align-items:baseline;justify-content:space-between;gap:1ch}.chore .r3{align-items:center;margin-top:2px}.chore .open{background:none;border:0;color:inherit;font:inherit;padding:2px 0;margin:0;cursor:pointer;text-align:left;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chore .sigil{color:var(--status, var(--dim))}.chore .name{font-weight:700}@media(hover:hover){.chore .open:hover .name{background:var(--fg);color:var(--bg)}}.chore .open:active .name{background:var(--fg);color:var(--bg)}.chore .when{color:var(--status, var(--dim));white-space:nowrap}.chore .gauge{display:block;color:var(--status, var(--dim));letter-spacing:0;user-select:none}.chore .who{color:var(--dim);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chore .note{display:block;color:var(--dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chore .acts{display:flex;gap:0;flex:0 0 auto}.chore .undo{color:var(--dim);margin-top:2px}li.chore[data-status=overdue]{--status: var(--red)}li.chore[data-status=today],li.chore[data-status=soon]{--status: var(--amber)}li.chore[data-status=ok]{--status: var(--green)}button{font-family:inherit;cursor:pointer}.key{background:none;border:0;color:var(--fg);font:inherit;padding:10px .5ch;white-space:nowrap}.key:active,.key:focus-visible{background:var(--fg);color:var(--bg);outline:none}@media(hover:hover){.key:hover{background:var(--fg);color:var(--bg)}}.key.dim{color:var(--dim)}.key.tight{padding:2px .5ch}.key[disabled]{color:var(--dim)}.empty{color:var(--dim);padding:18px 1ch;margin:0}dialog{border:0;padding:0;background:transparent;max-width:100%;max-height:100%}dialog::backdrop{background:#0009}dialog .sheet{position:relative;background:var(--bg);color:var(--fg);border:1px solid var(--fg);padding:16px 1.5ch 12px;width:min(46ch,calc(100vw - 2ch));max-height:88vh;overflow:auto}dialog h2{position:absolute;top:-.78em;left:1.5ch;margin:0;padding:0 .75ch;background:var(--bg);font-size:inherit;font-weight:700}dialog h3{font-size:inherit;font-weight:400;color:var(--dim);margin:14px 0 4px;padding:0}dialog h3:after{content:" " attr(data-rule)}dialog p{margin:0 0 2px;color:var(--dim)}dialog p.fg{color:var(--fg)}dialog .row{display:flex;gap:1ch;align-items:center;justify-content:flex-end;margin-top:14px}dialog .row.spread{justify-content:space-between}.kv{display:grid;grid-template-columns:10ch 1fr}.kv dt{color:var(--dim)}.kv dd{margin:0}label{display:block;color:var(--dim);margin:10px 0 2px}input[type=text],input[type=number],input[type=password],input[type=date],textarea{width:100%;font:inherit;color:var(--fg);background:transparent;border:1px solid var(--line);border-radius:0;padding:9px 1ch;min-height:40px}input:focus-visible,textarea:focus-visible{outline:none;border-color:var(--fg)}input::placeholder,textarea::placeholder{color:var(--dim)}textarea{min-height:56px;resize:vertical}.hint{color:var(--dim);margin:6px 0 0}.error{color:var(--red);margin:10px 0 0}table.tally{width:100%;border-collapse:collapse}table.tally th{text-align:right;font-weight:400;color:var(--dim);padding:2px 0}table.tally th:first-child,table.tally td:first-child{text-align:left}table.tally td{text-align:right;padding:2px 0}ol.log{list-style:none;margin:0;padding:0}ol.log li{display:flex;justify-content:space-between;gap:1ch}ol.log .by{color:var(--dim)}#toast{position:fixed;left:0;right:0;bottom:0;background:var(--fg);color:var(--bg);padding:7px 1ch calc(7px + env(safe-area-inset-bottom));z-index:10}.login{padding-top:12vh}.login .banner{margin:0 0 2px;font-weight:700}.login .sysline{padding-left:0}.login .rule{color:var(--line);margin:0 0 14px;overflow:hidden;white-space:nowrap}.login .row{display:flex;justify-content:flex-start;margin-top:16px}.cursor{display:inline-block;width:1ch;height:1.05em;background:var(--fg);vertical-align:text-bottom;animation:blink 1.1s step-end infinite}@keyframes blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.cursor{animation:none}}
