:root{--bg:#f6f6f3;--surface:#fff;--text:#1c1c1a;--muted:#6b6b66;--line:#e3e3dd;--accent:#2f6f4e;--accent-text:#fff;--late:#b3261e;--warn-bg:#fff4e0;--warn-text:#7a4a00;--chip:#ecece6;--high:#b3261e;--medium:#8a5a00;--shadow:0 1px 2px #0000000f, 0 4px 16px #0000000f;--radius:12px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#151515;--surface:#1f1f1e;--text:#ededea;--muted:#9a9a94;--line:#2e2e2c;--accent:#5fb88a;--accent-text:#0d1f15;--late:#ff8a80;--warn-bg:#3a2c12;--warn-text:#f3c77a;--chip:#2a2a28;--high:#ff8a80;--medium:#f3c77a;--shadow:0 1px 2px #0000004d, 0 4px 16px #0000004d}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent;margin:0;font:16px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:var(--accent)}h1{margin:.25rem 0 .75rem;font-size:1.6rem;line-height:1.2}h2{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:1.5rem 0 .5rem;font-size:.8rem}.page{max-width:640px;padding:calc(env(safe-area-inset-top) + 12px) 16px calc(env(safe-area-inset-bottom) + 96px);margin:0 auto}.loading,.page-error{max-width:640px;color:var(--muted);margin:3rem auto;padding:0 16px}.page-error{color:var(--late)}.muted{color:var(--muted)}.late{color:var(--late);font-weight:600}.top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.top p{margin:0}.top-links{gap:8px;display:flex}.btn{border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--text);font:inherit;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:.95rem;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.5;cursor:default}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text);font-weight:600}.btn.small{min-height:32px;padding:0 10px;font-size:.85rem}.btn.wide{width:100%;min-height:48px}.btn.back{color:var(--accent);background:0 0;border:none;padding-left:0}.icon-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;width:40px;height:40px;font-size:1.1rem}.small-link{font-size:.85rem;text-decoration:none}.page-foot{flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 16px;margin-top:2.5rem;font-size:.85rem;display:flex}.link-button{min-height:40px;color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:none;padding:0 4px;text-decoration:underline}.page-foot a{align-items:center;min-height:40px;padding:0 4px;display:inline-flex}.fab{right:max(16px,50vw - 304px);bottom:calc(env(safe-area-inset-bottom) + 20px);background:var(--accent);width:56px;height:56px;color:var(--accent-text);text-align:center;box-shadow:var(--shadow);border-radius:50%;font-size:2rem;line-height:56px;text-decoration:none;position:fixed}.search{border:1px solid var(--line);background:var(--surface);width:100%;min-height:44px;color:var(--text);font:inherit;border-radius:10px;margin:4px 0 8px;padding:0 14px}.section-head{justify-content:space-between;align-items:baseline;display:flex}.section-head h2,.fold{align-items:center;gap:8px;display:flex}.fold{font:inherit;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);cursor:pointer;background:0 0;border:none;margin:1.5rem 0 .5rem;padding:0;font-size:.8rem}.caret{width:1em}.count{background:var(--chip);color:var(--muted);letter-spacing:0;border-radius:999px;padding:0 8px;font-size:.75rem}.section.overdue h2{color:var(--late)}.empty{color:var(--muted);margin:.25rem 0}.rows{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);margin:0;padding:0;list-style:none;overflow:hidden}.row{border-top:1px solid var(--line);align-items:center;gap:4px;padding:4px 12px 4px 4px;display:flex}.row:first-child{border-top:none}.row-main{min-width:0;color:inherit;flex-direction:column;flex:1;gap:2px;padding:10px 4px;text-decoration:none;display:flex}.row-main.pick{flex-direction:row;align-items:flex-start;gap:12px;padding-left:12px}.row-main.pick>span{flex-direction:column;gap:2px;display:flex}.row-name{overflow-wrap:anywhere;font-weight:500}.done-name{color:var(--muted);text-decoration:line-through}.row-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:.85rem;display:flex}.chip{background:var(--chip);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;border-radius:6px;max-width:100%;padding:0 6px;font-size:.78rem;overflow:hidden}.chip.prio-high{color:var(--high);font-weight:600}.chip.prio-medium{color:var(--medium)}.row-action{flex:none}.one-time-target{margin:12px 0}.choices{flex-direction:column;gap:8px;display:flex}.btn.choice{justify-content:space-between;min-height:48px}.pick-date{align-items:flex-end;gap:8px;display:flex}.pick-date label{flex:1}.check{cursor:pointer;background:0 0;border:none;flex:none;width:44px;height:44px;padding:10px}.check svg{border:2px solid var(--muted);fill:none;stroke:#0000;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;border-radius:50%;width:24px;height:24px;transition:background .15s}.check:hover svg,.check:focus-visible svg{border-color:var(--accent);stroke:var(--accent)}.check.checked svg{background:var(--accent);border-color:var(--accent);stroke:var(--accent-text)}.alert{background:var(--warn-bg);color:var(--warn-text);border-radius:var(--radius);margin:8px 0;padding:12px 16px}.alert ul{margin:4px 0 0;padding-left:20px}.alert a{color:inherit}.fields{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);grid-template-columns:max-content 1fr;gap:8px 16px;margin:0;padding:14px 16px;display:grid}.fields dt{color:var(--muted);font-size:.9rem}.fields dd{overflow-wrap:anywhere;margin:0}.notes{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px 16px;font-size:.95rem}.log{margin:0;padding:0;list-style:none}.log li{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:10px 0;display:flex}.log-date{color:var(--muted);min-width:9em;font-size:.85rem}.log-detail{overflow-wrap:anywhere;flex:1}.warn{background:var(--warn-bg);color:var(--warn-text);border-radius:10px;margin:8px 0;padding:10px 12px;font-size:.92rem}.note{color:var(--muted);margin:0;font-size:.9rem}.actions{justify-content:flex-end;gap:8px;margin:12px 0;display:flex}.actions.wrap{flex-wrap:wrap;justify-content:flex-start}.sticky-actions{padding:12px 16px calc(env(safe-area-inset-bottom) + 12px);background:linear-gradient(transparent, var(--bg) 30%);position:fixed;bottom:0;left:0;right:0}.sticky-actions .btn{max-width:608px;margin:0 auto;display:flex}.plain{padding-left:20px}.form{flex-direction:column;gap:14px;display:flex}.form label,.form fieldset{border:none;flex-direction:column;gap:6px;min-width:0;margin:0;padding:0;display:flex}.form label>span:first-child,.form legend{color:var(--muted);margin-bottom:6px;padding:0;font-size:.85rem}.form label.inline{flex-direction:row;align-items:center;gap:8px}.form label.inline>span:first-child{color:var(--text);margin:0;font-size:.95rem}input[type=text],input[type=date],input[type=number],input[type=search],select,textarea{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:10px;width:100%;min-height:44px;padding:8px 12px}textarea{resize:vertical;line-height:1.4}input:focus-visible,select:focus-visible,textarea:focus-visible,.btn:focus-visible,.check:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.with-clear{align-items:center;gap:8px;display:flex}.segmented{background:var(--chip);border-radius:10px;gap:3px;padding:3px;display:flex}.segmented button{min-height:38px;color:var(--text);font:inherit;cursor:pointer;text-transform:capitalize;background:0 0;border:none;border-radius:8px;flex:1;font-size:.92rem}.segmented button.on{background:var(--surface);box-shadow:var(--shadow);font-weight:600}.rule{gap:10px!important}.builder{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.builder input[type=number]{width:5em}.builder select{flex:1;width:auto;min-width:8em}.days{gap:4px;width:100%;display:flex}.days button{border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--text);font:inherit;cursor:pointer;border-radius:8px;flex:1;font-size:.85rem}.days button.on{background:var(--accent);border-color:var(--accent);color:var(--accent-text);font-weight:600}.sheet{background:var(--surface);color:var(--text);width:100%;max-width:520px;box-shadow:var(--shadow);border:none;border-radius:16px;padding:0}.sheet::backdrop{background:#0006}.sheet-body{padding:8px 16px 16px}.sheet-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.sheet-head h2{text-transform:none;letter-spacing:0;color:var(--text);margin:8px 0;font-size:1.05rem}@media (width<=600px){.sheet{max-width:none;padding-bottom:env(safe-area-inset-bottom);border-radius:16px 16px 0 0;margin:auto 0 0}}.toasts{left:0;right:0;bottom:calc(env(safe-area-inset-bottom) + 88px);pointer-events:none;z-index:10;flex-direction:column;align-items:center;gap:8px;padding:0 16px;display:flex;position:fixed}.toast{pointer-events:auto;background:var(--text);width:100%;max-width:520px;color:var(--bg);box-shadow:var(--shadow);border-radius:10px;align-items:center;gap:12px;padding:10px 14px;display:flex}.toast span{flex:1}.toast.error{background:var(--late);color:#fff}.toast-action{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;font-weight:700}.signin{text-align:center;padding-top:20vh}.quick-add{flex-direction:column;gap:8px;margin-bottom:10px;display:flex}.quick-add-line{gap:8px;display:flex}.quick-add-line .search{flex:1;min-width:0;margin:0}.quick-add-due{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.quick-add-due label{align-items:center;gap:8px;display:flex}.quick-add-due select,.quick-add-due input[type=date]{border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--text);font:inherit;border-radius:8px;padding:0 10px}.details{flex-direction:column;gap:10px;display:flex}.detail{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:4px 8px;display:grid}.detail label{color:var(--muted);grid-column:1/-1;font-size:.9em}.detail input{min-width:0}.add-detail{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;margin-top:12px}.new-version{top:calc(env(safe-area-inset-top) + 8px);z-index:20;margin:calc(env(safe-area-inset-top) + 8px) max(16px, calc((100% - 560px) / 2)) 0;border:1px solid var(--line);background:var(--surface);max-width:560px;color:var(--text);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px 10px 16px;display:flex;position:sticky;box-shadow:0 6px 24px #0000002e}
