:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#202a31;background:#fafbfc;font-synthesis:none;font-size:16px;--accent:#17694b;--muted:#78828b;--line:#e8ecef;--surface:#fff}
*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.3}button:focus-visible,summary:focus-visible{outline:3px solid #80bba3;outline-offset:3px}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}button{border:0;background:none;color:inherit}button svg{display:block}button,input,textarea{touch-action:manipulation}[hidden]{display:none!important}
.app{max-width:700px;padding:0 28px;margin:88px auto 40px}.header{display:flex;align-items:center;justify-content:space-between;margin-bottom:34px}.heading{display:flex;align-items:center;gap:13px}.brand{font-size:23px;font-weight:750;color:var(--accent);margin-right:6px;letter-spacing:-2px}h1{font-size:27px;font-weight:600;letter-spacing:-.8px;margin:0}.count{font-size:14px;background:#edf0f2;color:#737e87;padding:3px 8px;border-radius:7px;min-width:25px;text-align:center}.data-menu{position:relative}.data-menu summary{list-style:none;display:grid;place-items:center;width:44px;height:44px;border-radius:12px;color:#6f7b84;cursor:pointer}.data-menu summary::-webkit-details-marker{display:none}.data-menu summary:hover{background:#eef1f3}.menu-panel{position:absolute;right:0;top:48px;width:210px;z-index:5;background:white;border:1px solid var(--line);border-radius:14px;padding:6px;box-shadow:0 8px 25px #1c283312}.menu-panel button{display:block;text-align:left;font-size:14px;padding:13px 12px;border-radius:8px;width:100%}.menu-panel button:hover{background:#f2f5f4}
.composer{display:flex;align-items:center;background:white;border:1px solid #dce3e7;box-shadow:0 3px 7px #202a3103;border-radius:15px;padding:7px;margin-bottom:25px;transition:border-color .15s}.composer:focus-within{border-color:#6b9e89;box-shadow:0 0 0 3px #17694b0a}.composer input{min-width:0;flex:1;padding:12px 11px;outline:none;border:0;background:transparent;color:inherit;font-size:16px}.composer input::placeholder{color:#929ba3}.add-button{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:var(--accent);color:white;flex-shrink:0}.add-button:hover{background:#10543c}.task-list{list-style:none;margin:0;padding:0}.task{position:relative;display:flex;align-items:center;min-height:69px;border-bottom:1px solid var(--line);gap:2px;background:#fafbfc}.check{width:44px;min-height:48px;display:grid;place-items:center;flex-shrink:0}.check-mark{display:grid;place-items:center;border:1.6px solid #cbd3d9;border-radius:50%;width:21px;height:21px;color:white}.check:hover .check-mark{border-color:var(--accent);background:#edf5f1}.task-title{flex:1;min-width:0;text-align:left;line-height:1.5;padding:19px 8px;overflow-wrap:anywhere;white-space:pre-wrap;font-size:16px}.task-title:hover{color:var(--accent)}.grip{width:38px;min-height:48px;display:grid;place-items:center;touch-action:none;cursor:grab;color:#a0a9b0;border-radius:8px}.grip:hover{color:#58666e;background:#edf0f2}.grip:active{cursor:grabbing}.grip svg{width:18px}.task.dragging{opacity:.4}.task.drop-before::before,.task.drop-after::after{content:"";position:absolute;left:0;right:0;height:2px;background:var(--accent);z-index:2}.task.drop-before::before{top:0}.task.drop-after::after{bottom:0}.reorder{position:relative}.reorder>summary{list-style:none;cursor:pointer;width:32px;min-height:44px;display:grid;place-items:center;color:#a0a9b0}.reorder>summary::-webkit-details-marker{display:none}.reorder .menu-panel{top:42px;width:172px}.completed{margin-top:34px;color:var(--muted)}.completed>summary{font-size:14px;cursor:pointer;padding:12px 0;user-select:none}.completed>summary span{margin-left:6px;color:#9aa3aa}.completed .task-title{color:#929aa1;text-decoration:line-through}.completed .check-mark{background:#c2cec8;border-color:#c2cec8}.completed .check-mark svg{width:14px;height:14px;stroke-width:2.5}.empty{padding:53px 0 61px;text-align:center}.empty-mark{display:inline-grid;place-items:center;width:45px;height:45px;background:#edf3f0;border-radius:15px;color:#658a76}.empty p{font-size:17px;font-weight:500;margin:18px 0 8px}.empty>span:last-child{font-size:14px;color:var(--muted)}footer{text-align:center;margin-top:45px;font-size:12px;color:#909aa2}.toast{position:fixed;bottom:max(24px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:space-between;gap:24px;background:#26382e;color:white;padding:13px 15px 13px 20px;border-radius:13px;box-shadow:0 8px 25px #0002;font-size:14px;max-width:calc(100% - 32px);width:max-content;z-index:10}.toast button{font-weight:600;color:#c1e8cc;padding:8px}.error{border:1px solid #ecc2bd;background:#fff3f1;border-radius:12px;padding:14px;color:#912e29;line-height:1.5;font-size:14px;margin-bottom:18px}.error button{font-weight:600;text-decoration:underline;padding:8px}.primary{background:var(--accent);color:white;border-radius:9px}.danger{color:#ac4c46}dialog{width:calc(100% - 32px);max-width:500px;border:1px solid var(--line);border-radius:19px;padding:25px;color:inherit;box-shadow:0 25px 100px #0002}dialog::backdrop{background:#1b2a3440;backdrop-filter:blur(3px)}h2{font-size:19px;font-weight:600;margin:0 0 20px}textarea{width:100%;resize:vertical;min-height:110px;border:1px solid #d4dce1;border-radius:10px;padding:12px;line-height:1.5;color:inherit}textarea:focus{outline:2px solid #80bba3;outline-offset:1px}.dialog-actions{display:flex;align-items:center;gap:6px;margin-top:20px;flex-wrap:wrap}.dialog-actions span{flex:1}.dialog-actions button{padding:12px 10px;font-size:14px}noscript{display:block;padding:20px}
@media(max-width:600px){.app{margin-top:34px;padding:0 20px}.header{margin-bottom:26px}h1{font-size:26px}.composer{margin-bottom:18px}.task{min-height:70px}.task-title{padding-left:5px}.check{width:36px}.grip{width:32px}.reorder>summary{width:28px}.empty{padding-top:50px}footer{margin-top:36px}dialog{padding:20px}.brand{margin-right:3px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.schedule-editor{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 0;margin:18px 0}.toggle-label{display:flex;align-items:flex-start;gap:9px;font-size:14px;line-height:1.6;margin:12px 0;color:#3b5145}.toggle-label input{width:17px;height:17px;accent-color:var(--accent);flex-shrink:0;margin-top:3px}.schedule-advanced{margin:16px 0;border-top:1px solid var(--line);padding-top:12px}.schedule-advanced>summary{cursor:pointer;font-size:14px;color:#496655;line-height:1.6;padding:6px 0}.weekday-field{border:0;padding:0;margin:16px 0;color:#627067;font-size:14px}.weekdays{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.weekdays label{position:relative}.weekdays input{position:absolute;opacity:0;width:1px;height:1px}.weekdays span{display:block;border:1px solid #d4dce1;padding:8px 9px;border-radius:8px;cursor:pointer}.weekdays input:checked+span{background:#e6f0eb;border-color:#83ab95;color:#155e44}.weekdays input:focus-visible+span{outline:2px solid #17694b;outline-offset:2px}.date-add{display:flex;gap:7px;align-items:center}.date-add input{flex:1}.date-add button{background:#edf4f0;padding:10px;border-radius:8px;font-size:14px;color:#246c50}.schedule-preview{border-radius:10px;background:#f1f5f3;padding:12px;margin-top:15px;font-size:13px;line-height:1.6;color:#557364}.schedule-preview ol{padding-left:20px;margin:6px 0}.schedule-preview p:empty{display:none}.rem-history{padding-left:20px;font-size:13px;color:#79857e;line-height:1.7}.first-step{font-size:14px;color:#397054;margin:5px 0 12px}.review-badge{color:#94651f}.review-help{border-left:2px solid #bca774;padding-left:12px;margin:12px 0;font-size:14px;line-height:1.5}.review-help p{margin:0 0 6px}.review-help button{font-size:13px;color:#17694b;padding:8px}.schedule-editor [hidden]{display:none!important}#rem-preview-error,#snooze-error{color:#9c513a}#rem-time,#snooze-time,#rem-quiet-start,#rem-quiet-end{font-variant-numeric:tabular-nums}#snooze-dialog .reminder-options{margin-bottom:18px}#snooze-task-name{overflow-wrap:anywhere}.dialog-actions{position:sticky;bottom:-25px;background:white;padding:12px 0;margin-bottom:-10px;border-top:1px solid #e8ecef;z-index:2}@media(max-width:600px){.dialog-actions{bottom:-20px}}
.header{margin-bottom:20px}.project-tabs{display:flex;gap:7px;overflow-x:auto;scrollbar-width:thin;padding:0 0 15px;margin-bottom:13px}.project-tab{white-space:nowrap;border-radius:9px;padding:10px 13px;min-height:42px;font-size:14px;color:#6a757e}.project-tab:hover{background:#edf1ef}.project-tab[aria-pressed="true"]{color:#155e44;background:#e6f0eb;font-weight:600}.task-name{display:block}.task-description{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;font-size:14px;line-height:1.5;color:#7b858c;margin-top:3px;white-space:normal}.task-metadata{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:12px;line-height:1.5;margin-top:7px;color:#7c858b;white-space:normal}.project-badge{color:#5d776c}.priority-high{color:#b05c3c}.priority-low{color:#7688a0}.reminder-due{color:#b05c3c}.completed .task-title{text-decoration:none}.completed .task-name{text-decoration:line-through}.field{display:flex;flex-direction:column;gap:7px;font-size:14px;color:#627067;margin:15px 0}.field input,.field select,.field textarea{font:inherit;font-size:16px;color:#202a31;background:white;border:1px solid #d4dce1;border-radius:10px;padding:11px 12px;width:100%;min-width:0}.field textarea{min-height:70px}.field input:focus,.field select:focus{outline:2px solid #80bba3;outline-offset:1px}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field-pair .field{margin:0}.field-note{font-size:13px;color:#7c858b;line-height:1.5;margin:12px 0}.reminder-options{display:flex;gap:6px;flex-wrap:wrap}.reminder-options button,.notification-toggle{font-size:13px;color:#246c50;border-radius:7px;padding:9px 10px;background:#edf4f0}.notification-toggle{font-size:14px;padding:10px 12px}.reminders{background:#f0f5f2;border:1px solid #dbe6df;border-radius:13px;padding:16px;margin-bottom:20px}.reminders h2{font-size:14px;color:#557364;margin:0 0 7px}.reminder-card+.reminder-card{border-top:1px solid #dbe6df;margin-top:10px;padding-top:10px}.reminder-title{display:block;text-align:left;line-height:1.5;padding:6px 0;overflow-wrap:anywhere}.reminder-actions{display:flex;flex-wrap:wrap;gap:5px}.reminder-actions button{font-size:13px;padding:9px 10px;background:#fff;border:1px solid #e1e8e3;border-radius:8px;color:#3f6b55}dialog{max-height:calc(100dvh - 32px);overflow-y:auto}#notification-status:empty{display:none}@media(max-width:400px){.field-pair{grid-template-columns:1fr;gap:8px}.field input[type="datetime-local"]{max-width:100%}.task-metadata{gap:4px 8px}.project-tab{padding:9px 11px}}
