:root{--paper: #f6f1e7;--ink: #1e1c19;--ochre: #e0a32e;--vermilion: #c0492e;--sage: #6e8b6a;--blue: #2c4a7c;--font-display: "Futura", "Futura PT", "Avenir Next", "Century Gothic", ui-sans-serif, system-ui, sans-serif;--font-body: "Avenir Next", "Avenir", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-data: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--bg: var(--paper);--fg: var(--ink);--muted: rgba(30, 28, 25, .55);--faint: rgba(30, 28, 25, .34);--rule: rgba(30, 28, 25, .16);--rule-strong: var(--ink);--field-bg: rgba(255, 255, 255, .55);--overlay: rgba(30, 28, 25, .42);--raised: #fbf8f1;--flash: rgba(224, 163, 46, .42);--flash-sage: rgba(110, 139, 106, .34);--hover-wash: rgba(30, 28, 25, .04);--token-wash: rgba(224, 163, 46, .3);--active-wash: rgba(192, 73, 46, .07);--c-master: var(--blue);--c-today: var(--ochre);--c-done: var(--sage);--c-active: var(--vermilion);--c-today-text: #96690c;--focus: var(--blue);--dur-quick: .15s;--dur-move: .3s;--ease-brisk: cubic-bezier(.2, 0, 0, 1);--ease-settle: cubic-bezier(.34, 1.3, .64, 1);color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--bg: #16140f;--fg: #ede6d6;--muted: rgba(237, 230, 214, .56);--faint: rgba(237, 230, 214, .32);--rule: rgba(237, 230, 214, .17);--rule-strong: rgba(237, 230, 214, .82);--field-bg: rgba(237, 230, 214, .06);--overlay: rgba(0, 0, 0, .62);--raised: #1f1c16;--flash: rgba(232, 178, 76, .3);--flash-sage: rgba(143, 174, 138, .26);--hover-wash: rgba(237, 230, 214, .05);--token-wash: rgba(232, 178, 76, .26);--active-wash: rgba(224, 103, 74, .14);--c-master: #6e93c9;--c-today: #e8b24c;--c-done: #8fae8a;--c-active: #e0674a;--c-today-text: #e8b24c;--focus: #6e93c9}}:root[data-theme=dark]{--bg: #16140f;--fg: #ede6d6;--muted: rgba(237, 230, 214, .56);--faint: rgba(237, 230, 214, .32);--rule: rgba(237, 230, 214, .17);--rule-strong: rgba(237, 230, 214, .82);--field-bg: rgba(237, 230, 214, .06);--overlay: rgba(0, 0, 0, .62);--raised: #1f1c16;--flash: rgba(232, 178, 76, .3);--flash-sage: rgba(143, 174, 138, .26);--hover-wash: rgba(237, 230, 214, .05);--token-wash: rgba(232, 178, 76, .26);--active-wash: rgba(224, 103, 74, .14);--c-master: #6e93c9;--c-today: #e8b24c;--c-done: #8fae8a;--c-active: #e0674a;--c-today-text: #e8b24c;--focus: #6e93c9;color-scheme:dark}:root[data-theme=light]{--bg: var(--paper);--fg: var(--ink);--muted: rgba(30, 28, 25, .55);--faint: rgba(30, 28, 25, .34);--rule: rgba(30, 28, 25, .16);--rule-strong: var(--ink);--field-bg: rgba(255, 255, 255, .55);--overlay: rgba(30, 28, 25, .42);--raised: #fbf8f1;--flash: rgba(224, 163, 46, .42);--flash-sage: rgba(110, 139, 106, .34);--hover-wash: rgba(30, 28, 25, .04);--token-wash: rgba(224, 163, 46, .3);--active-wash: rgba(192, 73, 46, .07);--c-master: var(--blue);--c-today: var(--ochre);--c-done: var(--sage);--c-active: var(--vermilion);--c-today-text: #96690c;--focus: var(--blue);color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}:where(button,input,select,textarea){font:inherit;color:inherit}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.icon{display:block}.app{min-height:100%;display:flex;flex-direction:column}.app__header{display:flex;align-items:center;gap:clamp(.7rem,2.5vw,1.75rem);flex-wrap:wrap;row-gap:.5rem;padding:calc(.9rem + env(safe-area-inset-top)) calc(1rem + env(safe-area-inset-right)) .75rem calc(1rem + env(safe-area-inset-left));border-bottom:3px solid var(--rule-strong)}.app__brand{display:flex;align-items:center;gap:.6rem}.app__marks{display:flex;align-items:center;gap:.28rem}.app__marks i{display:block;width:11px;height:11px;border-radius:50%;background:var(--c-master)}.app__marks i:nth-child(2){border-radius:0;background:var(--c-today)}.app__marks i:nth-child(3){height:6px;border-radius:11px 11px 0 0;background:var(--c-active)}.app__header h1{margin:0;font-family:var(--font-display);font-size:1rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;white-space:nowrap}.app__day{display:flex;align-items:baseline;gap:.45rem;font-family:var(--font-data);font-size:.72rem}.app__day-label{letter-spacing:.16em;text-transform:uppercase;color:var(--faint)}.app__day-value{color:var(--muted);font-variant-numeric:tabular-nums}.app__progress{flex:1 1 5rem;max-width:13rem;height:4px;background:var(--rule);overflow:hidden}.app__progress-fill{display:block;height:100%;background:var(--c-done);transition:width .25s ease-out}.app__actions{margin-left:auto;display:flex;align-items:center;gap:.35rem}.app__storage-warning{margin:0;padding:.6rem 1rem;border-bottom:2px solid var(--c-active);background:var(--active-wash);color:var(--c-active);font-family:var(--font-body);font-size:.82rem}.btn{font-family:var(--font-display);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:.42rem .8rem;background:transparent;color:var(--fg);border:2px solid var(--rule-strong);cursor:pointer}.btn:hover:not(:disabled){background:var(--fg);color:var(--bg)}.btn:disabled{opacity:.35;cursor:default}.btn--quiet{border-color:transparent;color:var(--muted);padding:.42rem .55rem}.btn--quiet:hover:not(:disabled){background:transparent;color:var(--fg)}.btn--small{padding:.22rem .55rem;font-size:.62rem;border-width:1px}.btn-primary,.btn-danger{font-family:var(--font-display);font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:.45rem .9rem;border:2px solid var(--rule-strong);background:var(--fg);color:var(--bg);cursor:pointer}.btn-danger{background:var(--c-active);border-color:var(--c-active);color:var(--paper)}.btn-primary:disabled,.btn-danger:disabled{opacity:.4;cursor:default}.icon-btn{display:grid;place-items:center;width:1.75rem;height:1.75rem;font-size:.95rem;background:transparent;color:var(--muted);border:1px solid transparent;cursor:pointer}.icon-btn:hover:not(:disabled){color:var(--fg);border-color:var(--rule)}.icon-btn:disabled{opacity:.3;cursor:default}.icon-btn--primary{color:var(--c-master)}.icon-btn--primary:hover:not(:disabled){background:var(--c-master);border-color:var(--c-master);color:var(--bg)}.app__menu{position:relative;display:inline-flex}.app__menu-list{position:absolute;right:0;top:calc(100% + .35rem);z-index:30;min-width:9rem;display:flex;flex-direction:column;background:var(--raised);border:2px solid var(--rule-strong)}.app__menu-list button{text-align:left;padding:.5rem .75rem;background:transparent;border:0;font-size:.9rem;cursor:pointer}.app__menu-list button:hover{background:var(--fg);color:var(--bg)}.app__sync-indicator{display:grid;place-items:center;width:1.6rem;height:1.6rem;background:transparent;border:0;cursor:pointer}.sync-dot{width:9px;height:9px;border-radius:50%;background:var(--faint)}.sync-dot--synced{background:var(--c-done)}.sync-dot--syncing,.sync-dot--offline{background:var(--c-today)}.sync-dot--error{background:var(--c-active)}.sync-dot--disconnected{background:var(--faint)}.board{display:grid;grid-template-columns:repeat(3,1fr);align-items:start;align-content:start;flex:1 1 auto;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}@media(max-width:900px){.board{grid-template-columns:1fr}}.col{padding:1.15rem clamp(.85rem,2vw,1.4rem) 2rem;min-width:0}.col+.col{border-left:1px solid var(--rule)}.col--collapsed{padding-bottom:.6rem}@media(max-width:900px){.add{flex-wrap:wrap}.add__input{flex:1 1 100%}.col{padding-bottom:1.1rem}.col+.col{border-left:0;border-top:1px solid var(--rule)}}.col__head{display:flex;align-items:center;gap:.6rem;padding-bottom:.35rem;border-bottom:3px solid var(--rule-strong)}.col__toggle{display:flex;align-items:center;gap:.5rem;flex:1 1 auto;min-width:0;padding:.15rem 0;background:transparent;border:0;text-align:left;cursor:pointer}.col__chevron{width:0;height:0;flex:none;border-left:6px solid currentColor;border-top:4px solid transparent;border-bottom:4px solid transparent;transform:rotate(90deg);transition:transform .18s ease-out}.col--collapsed .col__chevron{transform:rotate(0)}.col__name{font-family:var(--font-display);font-size:.8rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.col__count{font-family:var(--font-data);font-size:.72rem;font-variant-numeric:tabular-nums;color:var(--faint)}.col__body{padding-top:.1rem}.col__body[hidden]{display:none}.col__placeholder{margin:.9rem 0 0;font-size:.88rem;color:var(--faint)}.col--master .task__mark{background:var(--c-master)}.col--today .task__mark{background:var(--c-today)}.col--done .task__mark{background:var(--c-done)}.add{display:flex;align-items:center;gap:.4rem;padding:.55rem 0;border-bottom:1px solid var(--rule)}.add__field{position:relative;flex:1 1 8rem;min-width:0;display:flex}.add__input{flex:1 1 auto;min-width:0;position:relative;z-index:1;padding:.35rem .1rem;background:transparent;border:0;border-bottom:1px solid transparent;font-size:.95rem}.add__mirror{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;padding:.35rem .1rem;font-family:var(--font-body);font-size:.95rem;line-height:normal;white-space:pre;overflow:hidden;color:transparent;pointer-events:none}.add__token{display:inline-block;padding:.08rem .22rem;margin:0 -.22rem;border-radius:3px;background:var(--token-wash);color:transparent;animation:token-pop .15s var(--ease-settle)}@keyframes token-pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.add--committed .add__input{background-image:linear-gradient(90deg,transparent,var(--flash),transparent);background-repeat:no-repeat;background-size:55% 100%;animation:add-sweep .25s var(--ease-brisk)}@keyframes add-sweep{0%{background-position:-60% 0}to{background-position:160% 0}}.add__input::placeholder{color:var(--faint)}.add__input:focus{outline:none;border-bottom-color:var(--c-master)}.add__hint{display:flex;align-items:baseline;gap:.4rem;flex:none;font-family:var(--font-data);font-size:.66rem}.add__hint-due{padding:.1rem .35rem;background:var(--c-master);color:var(--bg);white-space:nowrap}.add__date{flex:none;width:6.6rem;padding:.2rem .25rem;background:var(--field-bg);border:1px solid var(--rule);font-family:var(--font-data);font-size:.7rem;color:var(--muted)}.add__date:disabled{opacity:.45}.add__recur{flex:none;font-family:var(--font-display);font-size:.62rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:.28rem .5rem;background:transparent;color:var(--muted);border:1px solid var(--rule);cursor:pointer}.add__recur--on{background:var(--fg);border-color:var(--fg);color:var(--bg)}.add__submit{flex:none;font-family:var(--font-display);font-size:.68rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:.3rem .7rem;background:var(--c-master);border:1px solid var(--c-master);color:var(--bg);cursor:pointer}.add__submit:disabled{opacity:.3;cursor:default}.task-list{list-style:none;margin:0;padding:0}.task{position:relative;margin-left:-.5rem;border-bottom:1px solid var(--rule);transition:background var(--dur-quick) var(--ease-brisk),box-shadow var(--dur-quick) var(--ease-brisk),transform var(--dur-quick) var(--ease-brisk)}@media(hover:hover){.task:not(.task--active):hover{background:var(--hover-wash)}}.task__surface{position:relative;z-index:1;display:grid;grid-template-columns:14px minmax(0,1fr) auto auto;grid-template-areas:"mark main due   check" ".    subs subs  subs";align-items:center;column-gap:.55rem;padding:.5rem;touch-action:pan-y;transition:transform var(--dur-move) var(--ease-settle)}.task--swiping .task__surface{transition:none}.task--swiping .task__surface,.task--flinging .task__surface{background:var(--bg)}.task__swipe-cue{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;display:flex;align-items:center;padding:0 .85rem;font-size:1.05rem;color:var(--bg);pointer-events:none}.task__swipe-cue--today{justify-content:flex-start;background:var(--c-today)}.task__swipe-cue--master{justify-content:flex-end;background:var(--c-master)}.task:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.task__mark{grid-area:mark;width:9px;height:9px;justify-self:center;border-radius:50%;background:var(--faint);transition:background var(--dur-quick) var(--ease-brisk)}.task__mark--recurring{border-radius:0;background:var(--faint)}button.task__mark{position:relative;padding:0;border:0;cursor:pointer;transition:transform var(--dur-quick) var(--ease-settle),background var(--dur-quick) var(--ease-brisk)}button.task__mark:after{content:"";position:absolute;top:-10px;right:-7px;bottom:-10px;left:-7px}button.task__mark:active{transform:scale(.85)}@media(hover:hover){button.task__mark:hover{transform:scale(1.35)}}.task__check{grid-area:check;justify-self:end;display:flex;align-items:center}.task__check input[type=checkbox],.subtask__check input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;position:relative;flex:none;margin:0;border:1.5px solid var(--rule-strong);border-radius:3px;background:transparent;cursor:pointer;transition:background var(--dur-quick) var(--ease-brisk),border-color var(--dur-quick) var(--ease-brisk),transform var(--dur-quick) var(--ease-settle)}.task__check input[type=checkbox]{width:1.1rem;height:1.1rem}.subtask__check input[type=checkbox]{width:.95rem;height:.95rem}.task__check input[type=checkbox]:after,.subtask__check input[type=checkbox]:after{content:"";position:absolute;left:50%;top:46%;width:.24rem;height:.46rem;border:solid var(--bg);border-width:0 2px 2px 0;transform:translate(-50%,-58%) rotate(45deg) scale(0);opacity:0}.task__check input[type=checkbox]:checked,.subtask__check input[type=checkbox]:checked,.task--completing .task__check input[type=checkbox]{background:var(--c-done);border-color:var(--c-done)}.task__check input[type=checkbox]:checked:after,.subtask__check input[type=checkbox]:checked:after,.task--completing .task__check input[type=checkbox]:after{animation:tick-draw .16s var(--ease-brisk) forwards}@keyframes tick-draw{0%{opacity:0;transform:translate(-50%,-58%) rotate(45deg) scale(.4)}to{opacity:1;transform:translate(-50%,-58%) rotate(45deg) scale(1)}}.task__check input[type=checkbox]:disabled,.subtask__check input[type=checkbox]:disabled{opacity:.5;cursor:default}@media(hover:hover){.task__check input[type=checkbox]:hover:not(:disabled),.subtask__check input[type=checkbox]:hover:not(:disabled){border-color:var(--fg);transform:scale(1.1)}}.task__check input[type=checkbox]:active:not(:disabled),.subtask__check input[type=checkbox]:active:not(:disabled){transform:scale(.9)}.task__main{grid-area:main;display:flex;align-items:baseline;gap:.45rem;min-width:0}.task__title{font-size:.95rem;line-height:1.35;overflow-wrap:anywhere}.task__title--done{color:var(--faint);text-decoration:line-through}.task__tag{flex:none;font-family:var(--font-data);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}.task__drag-handle{flex:none;color:var(--faint);cursor:grab;font-size:.8rem;line-height:1;-webkit-user-select:none;user-select:none;transition:color var(--dur-quick) var(--ease-brisk),transform var(--dur-quick) var(--ease-settle)}@media(hover:hover){.task__drag-handle:hover{color:var(--fg);transform:scale(1.15)}}.task__due{grid-area:due;justify-self:end;font-family:var(--font-data);font-size:.68rem;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--muted)}.task__due--none{color:var(--faint)}.task__due--overdue{color:var(--c-active);font-weight:700}.task__due--today{color:var(--c-today-text);font-weight:700}.task__due--soon{color:var(--c-today-text)}.task__due--upcoming{color:var(--muted)}.task__due--done{color:var(--faint)}.task__actions{grid-area:actions;display:flex;align-items:center;gap:.1rem}.task--editing{display:block}.task--active{box-shadow:inset 4px 0 0 var(--c-active);background:var(--active-wash)}.task--active .task__mark{background:var(--c-active)}.task--active .task__title,.task__title--active{font-weight:700}.task--done .task__title{color:var(--faint);text-decoration:line-through}.task--today{cursor:grab}.task--dragging{opacity:.4;transform:scale(.98);cursor:grabbing}.task--dragging .task__drag-handle{color:var(--fg);cursor:grabbing}.task--insert-before{box-shadow:inset 0 3px 0 var(--c-today)}.task-list__end{list-style:none;height:2.5rem}.task-list__end--active{box-shadow:inset 0 3px 0 var(--c-today)}@keyframes task-flash{0%{background:var(--flash)}40%{background:var(--flash)}to{background:transparent}}@keyframes task-flash-done{0%{background:var(--flash-sage)}40%{background:var(--flash-sage)}to{background:transparent}}@keyframes task-enter{0%{transform:translateY(-3px)}to{transform:translateY(0)}}.task--flash{animation:task-flash 2.6s ease-out,task-enter .3s var(--ease-settle);box-shadow:inset 3px 0 0 var(--c-today)}.task--flash-done{animation:task-flash-done 2.6s ease-out,task-enter .3s var(--ease-settle);box-shadow:inset 3px 0 0 var(--c-done)}@keyframes task-completing{0%{background:transparent;transform:translate(0);opacity:1}30%{background:var(--flash-sage);transform:translate(0);opacity:1}70%{background:var(--flash-sage);transform:translate(0);opacity:1}to{background:transparent;transform:translate(10px);opacity:0}}.task--completing{animation:task-completing .4s var(--ease-brisk) forwards;pointer-events:none}.task--completing .task__title{background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:0 62%;background-size:0% 1.5px;animation:task-strike .2s .12s var(--ease-brisk) forwards}@keyframes task-strike{to{background-size:100% 1.5px}}@keyframes task-departing-right{0%{transform:translate(0);opacity:1}to{transform:translate(40px);opacity:0}}.task--departing-right{animation:task-departing-right .25s var(--ease-brisk) forwards;pointer-events:none}.task__move{grid-area:check;justify-self:end;display:grid;place-items:center;width:1.6rem;height:1.6rem;padding:0;background:transparent;border:1px solid transparent;color:var(--c-today);cursor:pointer;opacity:0;transform:translate(-4px);pointer-events:none;transition:opacity var(--dur-quick) var(--ease-brisk),transform var(--dur-quick) var(--ease-brisk),background var(--dur-quick) var(--ease-brisk),border-color var(--dur-quick) var(--ease-brisk)}.task__move:disabled{color:var(--faint);cursor:default}@media(hover:hover){.task:hover .task__move,.task:focus-within .task__move,.task__move:focus-visible{opacity:1;transform:translate(0);pointer-events:auto}.task__move:hover:not(:disabled){background:var(--c-today);border-color:var(--c-today);color:var(--bg)}}.task__url-pill{display:inline-block;max-width:100%;padding:.1rem .38rem;font-family:var(--font-data);font-size:.78rem;color:var(--c-master);border:1px solid var(--rule);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task__url-pill:hover{border-color:var(--c-master)}.task__url-pill--active{border-color:var(--c-active);color:var(--c-active)}.task--done .task__url-pill{color:var(--faint)}.task__activate,.subtask__activate{padding:0;margin:0;background:transparent;border:0;font:inherit;color:inherit;text-align:left;cursor:pointer}.task__activate:hover,.subtask__activate:hover{color:var(--c-active)}.subtasks,.task__surface>.subtask-list{grid-area:subs;min-width:0}.subtask-list{list-style:none;margin:.3rem 0 .1rem;padding:0}.subtask{display:flex;align-items:center;gap:.4rem;padding:.14rem 0;font-size:.86rem}.subtask__check{display:flex;align-items:center;gap:.45rem;flex:1 1 auto;min-width:0}.subtask__title{color:var(--muted);overflow-wrap:anywhere}.subtask__title--done{color:var(--faint);text-decoration:line-through}.subtask__title--active{color:var(--c-active);font-weight:700}.subtask__actions{display:flex;gap:.05rem;flex:none}.subtask__actions .icon-btn{width:1.35rem;height:1.35rem;font-size:.8rem}.subtask__edit,.subtask-add{display:flex;align-items:center;gap:.35rem;padding:.2rem 0}.subtask__edit input,.subtask-add input{flex:1 1 auto;min-width:0;padding:.22rem .35rem;background:var(--field-bg);border:1px solid var(--rule);font-size:.86rem}.subtask__edit button,.subtask-add button{flex:none;font-family:var(--font-display);font-size:.62rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:.24rem .5rem;background:transparent;border:1px solid var(--rule);cursor:pointer}.subtask__edit button:hover:not(:disabled),.subtask-add button:hover:not(:disabled){background:var(--fg);color:var(--bg)}.subtask-add button:disabled{opacity:.35;cursor:default}.edit-form{display:flex;flex-direction:column;gap:.45rem;padding:.35rem 0}.edit-form input[type=text]{padding:.35rem .45rem;background:var(--field-bg);border:1px solid var(--rule);font-size:.95rem}.edit-form__row{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;font-size:.82rem;color:var(--muted)}.edit-form__row input[type=date]{padding:.22rem .35rem;background:var(--field-bg);border:1px solid var(--rule);font-family:var(--font-data);font-size:.74rem}.edit-form__row label{display:flex;align-items:center;gap:.35rem}.edit-form .task__actions{display:flex;gap:.4rem;opacity:1}.edit-form .task__actions button{font-family:var(--font-display);font-size:.66rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:.3rem .7rem;background:transparent;border:1px solid var(--rule-strong);cursor:pointer}.edit-form .task__actions button[type=submit]{background:var(--fg);color:var(--bg)}.edit-panel{display:flex;flex-direction:column;gap:.5rem;padding:.35rem 0;animation:edit-panel-in .12s var(--ease-brisk)}@keyframes edit-panel-in{0%{opacity:0;transform:scale(.99)}to{opacity:1;transform:scale(1)}}.edit-panel__title{padding:.35rem .45rem;background:var(--field-bg);border:1px solid var(--rule);font-size:.95rem}.edit-panel__row{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;font-size:.82rem;color:var(--muted)}.edit-panel__date{padding:.22rem .35rem;background:var(--field-bg);border:1px solid var(--rule);font-family:var(--font-data);font-size:.74rem}.edit-panel__recur{display:flex;align-items:center;gap:.35rem}.edit-panel__subtasks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.3rem}.edit-panel__subtask{display:flex;align-items:center;gap:.35rem;padding-left:.9rem}.edit-panel__subtask input[type=text]{flex:1 1 auto;min-width:0;padding:.24rem .35rem;background:var(--field-bg);border:1px solid var(--rule);font-size:.86rem}.edit-panel__add{align-self:flex-start;padding:.2rem 0;background:transparent;border:0;font-family:var(--font-display);font-size:.8rem;color:var(--muted);cursor:pointer}.edit-panel__add:hover{color:var(--fg)}.edit-panel__actions{display:flex;align-items:center;gap:.3rem;margin-top:.1rem}.edit-panel__move{display:inline-flex;align-items:center;gap:.3rem;padding:.28rem .6rem;background:transparent;border:1px solid var(--rule);font-family:var(--font-display);font-size:.66rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background var(--dur-quick) var(--ease-brisk),border-color var(--dur-quick) var(--ease-brisk),color var(--dur-quick) var(--ease-brisk),transform var(--dur-quick) var(--ease-brisk)}.edit-panel__move--today{color:var(--c-today-text)}.edit-panel__move--master{color:var(--c-master)}.edit-panel__move:hover:not(:disabled){border-color:currentColor}.edit-panel__move--today:hover:not(:disabled){background:var(--c-today);border-color:var(--c-today);color:var(--bg)}.edit-panel__move--master:hover:not(:disabled){background:var(--c-master);border-color:var(--c-master);color:var(--bg)}.edit-panel__move:disabled{opacity:.4;cursor:default}.edit-panel__delete{margin-left:auto}.edit-panel__done{margin-left:auto;font-family:var(--font-display);font-size:.66rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:.3rem .7rem;background:var(--fg);color:var(--bg);border:1px solid var(--rule-strong);cursor:pointer}.history{border-top:3px solid var(--rule-strong);padding:.9rem calc(1rem + env(safe-area-inset-right)) calc(2.5rem + env(safe-area-inset-bottom)) calc(1rem + env(safe-area-inset-left))}.history>button{font-family:var(--font-display);font-size:.7rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;padding:.35rem 0;background:transparent;border:0;color:var(--muted);cursor:pointer}.history>button:hover{color:var(--fg)}.history__body{display:flex;flex-direction:column;gap:1.1rem;margin-top:.8rem}.history__date{margin:0 0 .3rem;padding-bottom:.2rem;border-bottom:1px solid var(--rule);font-family:var(--font-data);font-size:.68rem;font-variant-numeric:tabular-nums;letter-spacing:.1em;color:var(--faint)}.history__list{list-style:none;margin:0;padding:0}.history__entry{padding:.12rem 0;font-size:.88rem;color:var(--muted)}.history__entry--subtask{padding-left:1.1rem;font-size:.82rem;color:var(--faint)}.history__entry-btn{display:block;width:100%;padding:.06rem .25rem;margin-left:-.25rem;background:transparent;border:0;border-radius:0;font:inherit;color:inherit;text-align:left;cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;transition:background-color .12s ease-out}.history__entry-btn:hover{color:var(--fg);background:var(--raised)}.history__entry-btn--pressing{background:var(--rule);color:var(--fg)}.history__entry--editing{padding:.2rem 0}.history__entry--editing .edit-form{gap:.35rem}.shortcut-help__backdrop,.confirm-dialog__backdrop,.sync-settings__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:1rem;background:var(--overlay)}.confirm-dialog__backdrop{z-index:200}.shortcut-help,.confirm-dialog,.sync-settings{width:min(30rem,100%);max-height:85vh;overflow-y:auto;padding:1.25rem;background:var(--raised);border:3px solid var(--rule-strong)}.shortcut-help__head,.sync-settings__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.9rem}.shortcut-help__head h2,.sync-settings__head h2,.confirm-dialog__title{margin:0 0 .75rem;font-family:var(--font-display);font-size:.9rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.shortcut-help__head h2,.sync-settings__head h2{margin-bottom:0}.shortcut-help__group{margin-bottom:1rem}.shortcut-help__group h3{margin:0 0 .35rem;padding-bottom:.2rem;border-bottom:1px solid var(--rule);font-family:var(--font-data);font-size:.66rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--faint)}.shortcut-help__row{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:.18rem 0;font-size:.87rem}kbd{padding:.1rem .4rem;background:var(--field-bg);border:1px solid var(--rule);font-family:var(--font-data);font-size:.72rem;white-space:nowrap}.confirm-dialog__body,.sync-settings__body{font-size:.92rem;color:var(--muted)}.confirm-dialog__body p{margin:0 0 .6rem}.sync-settings__body{display:flex;flex-direction:column;gap:.75rem}.sync-settings__body p{margin:0}.confirm-dialog__actions,.sync-settings__actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1.1rem;flex-wrap:wrap}.confirm-dialog__actions button:not(.btn-primary):not(.btn-danger),.sync-settings__actions button:not(.btn-primary):not(.btn-danger){font-family:var(--font-display);font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:.45rem .9rem;background:transparent;border:2px solid var(--rule-strong);cursor:pointer}.sync-settings__form{display:flex;gap:.5rem;margin:.2rem 0}.sync-settings__form input{flex:1;min-width:0;padding:.4rem .5rem;background:var(--field-bg);border:1px solid var(--rule);font-family:var(--font-data);font-size:.8rem}.sync-settings__status{display:flex;align-items:center;gap:.45rem;font-family:var(--font-data);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--fg)}.sync-settings__error{padding:.5rem .6rem;border:1px solid var(--c-active);color:var(--c-active);font-size:.84rem}.sync-settings__note{font-size:.8rem;color:var(--muted)}.sync-settings__token-link,.sync-settings__gist-link{font-size:.82rem;color:var(--c-master);text-decoration:none}.sync-settings__token-link:hover,.sync-settings__gist-link:hover{text-decoration:underline}.toast{position:fixed;left:50%;bottom:calc(1.25rem + env(safe-area-inset-bottom));transform:translate(-50%);z-index:150;display:flex;align-items:center;gap:1rem;max-width:calc(100vw - 2rem);padding:.6rem .7rem .6rem 1rem;background:var(--raised);border:2px solid var(--rule-strong);box-shadow:0 6px 20px #00000040;animation:toast-in .16s ease-out}.toast__message{font-size:.9rem;color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toast__undo{flex:none;font-family:var(--font-display);font-size:.66rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:.3rem .7rem;background:var(--fg);color:var(--bg);border:1px solid var(--rule-strong);cursor:pointer}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,.6rem)}to{opacity:1;transform:translate(-50%)}}.icon-btn,.btn,.add__submit,.add__recur,.edit-panel__done{transition:background var(--dur-quick) var(--ease-brisk),border-color var(--dur-quick) var(--ease-brisk),color var(--dur-quick) var(--ease-brisk),transform var(--dur-quick) var(--ease-brisk)}.icon-btn:active:not(:disabled),.btn:active:not(:disabled),.add__submit:active:not(:disabled),.add__recur:active,.edit-panel__move:active:not(:disabled),.edit-panel__done:active{transform:translateY(1px)}@media(hover:none){.task__drag-handle{display:none}.icon-btn{width:2.4rem;height:2.4rem}.history__entry-btn{padding:.3rem .25rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
