@font-face{font-family:Inter;src:url('/fonts/inter-cyrillic.woff2') format('woff2');font-weight:100 900;font-display:swap;unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;src:url('/fonts/inter-latin.woff2') format('woff2');font-weight:100 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--ink:#1f2831;--accent:#1f2831;--muted:#93979c;--line:#20293112;--paper:#ffeab1}
html{background:#fff;scrollbar-width:thin}body{margin:0;background:#fff;color:var(--ink);font-family:Inter,Arial,sans-serif;overscroll-behavior-x:none}button,input,textarea,select{font-family:inherit}button{ -webkit-tap-highlight-color:transparent}button:focus-visible,[role=button]:focus-visible{outline:2px solid #405d78;outline-offset:4px}
.app{width:100%;max-width:560px;min-height:100dvh;margin:0 auto;padding:0 0 116px}.header{height:61px;margin:0;padding:16px 24px 8px;display:flex;justify-content:space-between;align-items:center}.header h1{margin:0;font-size:22px;line-height:27px;letter-spacing:-.5px;font-weight:650}.header-actions{display:flex;align-items:center;gap:6px}.icon-button{width:40px;height:40px;display:grid;place-items:center;color:#969ba0;border-radius:0}.icon-button svg{width:18px;height:18px;stroke-width:1.5}.icon-button:hover{color:var(--ink)}.completed-counter{position:relative;min-width:24px;height:24px;border-radius:8px;background:#2029311a;font-size:14px;font-weight:400;padding:0 6px;color:var(--ink)}.completed-counter:before{content:'';position:absolute;inset:-10px}.completed-counter.pulse{animation:counter-pulse .4s ease}
.current-section{margin:0 8px 32px}.task-list{margin:0;padding:0;list-style:none}.task{display:block;position:relative;min-height:65px;padding:16px 24px;border:0;background:white;color:var(--ink);cursor:pointer;touch-action:pan-y;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;transform:translate(var(--gesture-x,0px),var(--gesture-y,0px));isolation:isolate}.task:after{content:'';position:absolute;bottom:0;height:1px;left:24px;right:24px;background:var(--line)}.task-name{display:block;font-size:14px;font-weight:600;line-height:17px;overflow-wrap:anywhere;white-space:pre-wrap;color:var(--task-color,var(--ink))}.task-metadata{display:flex;flex-wrap:wrap;gap:3px 8px;margin:0 0 5px;font-size:9px;line-height:12px;letter-spacing:.01em;color:#83898e;text-transform:uppercase}.task-metadata>span{color:inherit}.task-description{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:4px 0 0;font-size:12px;line-height:15px;font-weight:400;white-space:pre-wrap;color:var(--ink)}.task-description strong{font-weight:650;color:inherit}.task.current-task{min-height:223px;padding:16px 16px 16px;background:var(--paper);border:0;border-radius:0;box-shadow:0 22px 20px -17px #20293134,0 11px 20px -15px #20293133}.current-task:after{display:none}.current-task .task-name{font-size:24px;line-height:27px;letter-spacing:-.35px;font-weight:600;margin-bottom:12px}.current-task .task-metadata{margin-bottom:12px;color:#827c65;font-size:9px;line-height:11px}.current-task .task-description{-webkit-line-clamp:5;font-size:13px;line-height:15px;margin:0}.task.deferred-task .task-metadata{color:#969a9d}.task.deferred-task .task-name{opacity:.7}
.project-tabs{display:flex;flex-wrap:wrap;overflow:visible;gap:2px 12px;padding:0 24px;margin:0 0 10px;align-content:start}.project-tab{display:block;position:relative;padding:1px 0;min-height:24px;font-size:16px;line-height:22px;font-weight:600;white-space:normal;overflow-wrap:anywhere;border:0;border-radius:0;color:var(--tab-color,var(--ink));opacity:.45;box-shadow:none;background:none}.project-tab:hover,.project-tab[aria-pressed=true]{opacity:1;color:var(--tab-color,var(--ink));background:none}.project-tab[aria-pressed=true]{font-weight:650}.project-tabs+.reminders[hidden]+.task-list{margin-top:12px}.floating-add{position:fixed;z-index:5;bottom:calc(24px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:48px;height:48px;background:#000;color:white;display:grid;place-items:center;border-radius:0;box-shadow:0 0 0 8px #ffffffdd}.floating-add svg{width:24px;height:24px;stroke-width:1.5}.floating-add:hover{background:#1f2831}.empty{padding:60px 24px;color:var(--muted)}.empty p{font-size:16px;color:var(--ink)}.error{margin:12px 24px;border-radius:4px}.toast{bottom:calc(86px + env(safe-area-inset-bottom));z-index:20;border-radius:6px;background:#1f2831;gap:16px;font-size:12px;padding:8px 12px;max-width:calc(100% - 32px)}.toast button{color:#ffeab1;white-space:nowrap}.toast-extra{color:#ffeab1!important}
.reminders{margin:8px 24px 16px;padding:12px;background:#fff8e7;border:0;border-radius:0}.reminder-title{font-size:13px;font-weight:550}.reminder-actions button{font-size:11px;min-height:34px;padding:7px 9px;background:white;border:0;color:var(--ink)}.review-help summary{font-size:12px;cursor:pointer}.review-help{border-color:#d3b774}.reminder-card{touch-action:pan-y}
.screen-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.screen-heading h2{margin:0;font-size:22px;color:var(--ink)}.settings-dialog,.completed-dialog{border:0;border-radius:8px;background:#fff;max-width:480px;padding:24px}.settings-group{border-top:1px solid var(--line);padding:14px 0}.settings-group:first-of-type{border-top:0}.settings-row{display:block;width:100%;text-align:left;min-height:44px;font-size:14px;color:var(--ink);padding:10px 0}.settings-row[aria-pressed=true]{font-weight:650;color:#aa580f}.gesture-help{font-size:13px;color:#737b81;line-height:1.8;border-top:1px solid var(--line);padding-top:18px}.gesture-help summary{cursor:pointer}.settings-dialog .field{font-size:12px}.settings-dialog .field select{font-size:14px}.completed-dialog .task{padding-left:0;padding-right:0;cursor:default;display:flex;align-items:center;gap:14px}.completed-dialog .task:after{left:0;right:0}.completed-copy{flex:1;min-width:0}.completed-dialog .task-name{color:#636b72}.completed-restore{font-size:12px;min-height:44px;padding:5px;color:#7d858c}.completed-dialog .task-metadata{font-size:10px;text-transform:none}.completed-dialog .task-name{text-decoration:none}
.editor-dialog{inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;border:0;border-radius:0;padding:0;box-shadow:none;background:#fff;overscroll-behavior:contain}.editor-dialog::backdrop{background:#fff;backdrop-filter:none}.editor-dialog>form{max-width:680px;margin:0 auto;padding:18px 24px 0;min-height:100%}.note-heading{display:flex;align-items:center;gap:12px;margin:0 0 20px}.note-heading .icon-button{margin-left:-10px;color:var(--ink)}.note-heading h2{margin:0;font-size:12px;font-weight:400;color:#8b9297}.task-title-field textarea{font-size:26px;line-height:1.3;font-weight:550;letter-spacing:-.5px;min-height:100px}.task-properties{grid-template-columns:1fr 1fr;gap:24px;margin:16px 0 30px}.task-properties .field input:not([type=range]){background:white;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:10px 0}.importance-field input[type=range]{padding:0;min-height:30px;accent-color:#b47721;border:0;background:none}.range-labels{display:flex;justify-content:space-between;gap:10px;font-size:10px;color:#949a9e}.description-section{margin:24px 0}.description-toolbar{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#93999e;margin-bottom:12px}.description-toolbar button{width:32px;height:32px;background:#f5f6f7;border:0}.description-editor{min-height:260px;border:0!important;border-radius:0;padding:0!important;font-size:16px;line-height:1.65;color:var(--ink)}.description-editor:empty:before{content:attr(data-placeholder);color:#a7abb0;pointer-events:none}.description-editor:focus{box-shadow:none;outline:0}.note-actions{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:12px}.note-actions button{font-size:13px;min-height:44px;padding:8px 0}.editor-dialog .dialog-actions{bottom:0;background:#fffffff5;padding:16px 0 calc(16px + env(safe-area-inset-bottom));margin:20px 0 0;backdrop-filter:blur(12px)}.primary{background:#1f2831;color:white;border-radius:4px}.editor-dialog .primary{padding:12px 20px}.reminder-entry{border-radius:4px}.field-note{color:#858c92}.editor-disclosure>summary{color:#768089}.editor-dialog .task-title-field textarea:focus{box-shadow:0 1px 0 #1f283133}.field input:focus,.field select:focus{outline-color:#9caab5}.note-actions .danger{color:#bd3535}
.task.gesture-held{box-shadow:0 4px 24px #20293120;z-index:3;background:#fff9e8}.task.current-task.gesture-held{background:var(--paper)}.task.gesture-dragging{opacity:.88;z-index:4;box-shadow:0 8px 30px #20293125}.task.gesture-swiping{z-index:4}.task.drop-before:before,.task.drop-after:before{content:'';position:absolute;left:24px;right:24px;height:2px;background:#738aa0;top:0}.task.drop-after:before{top:auto;bottom:0}.completion-flight{position:fixed;pointer-events:none;z-index:100;transform-origin:center;box-shadow:0 15px 25px #20293122}.task.keyboard-hint:focus-visible{outline-offset:-4px}@keyframes counter-pulse{50%{transform:scale(1.4);background:#ffeab1}}
@media(min-width:700px){.app{padding-top:24px}.header{height:68px}.current-section{margin-left:8px;margin-right:8px}.editor-dialog>form{padding-top:32px}.settings-dialog,.completed-dialog{padding:28px}.task.current-task{min-height:200px}}
@media(max-width:400px){.header{padding-left:20px;padding-right:20px}.project-tabs{padding-left:20px;padding-right:20px;gap:2px 10px}.project-tab{font-size:15px}.task{padding-left:20px;padding-right:20px}.current-task .task-name{font-size:23px}.task-properties{grid-template-columns:1fr;gap:18px}.settings-dialog,.completed-dialog{padding:20px}.editor-dialog>form{padding:12px 20px 0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.completion-flight{display:none}}

.toast{gap:10px}.toast>span{min-width:0;line-height:1.4}.toast button{flex-shrink:0;padding:8px 4px}.toast #toast-close{width:32px;height:32px;display:grid;place-items:center;padding:6px;color:#d1d6db}.toast #toast-close svg{width:16px;height:16px;stroke-width:1.5}
