:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f8fafc;--surface:#fff;--text:#0f172a;--muted:#64748b;--line:#e2e8f0;--accent:#0f172a;--accent-text:#f8fafc;--must-do:#d97706;--danger:#b91c1c;--tag:#e0e7ff;--tag-text:#3730a3;--radius:12px;--tap:44px;-webkit-text-size-adjust:100%;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.4}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0f172a;--surface:#1e293b;--text:#f1f5f9;--muted:#94a3b8;--line:#334155;--accent:#f1f5f9;--accent-text:#0f172a;--must-do:#fbbf24;--danger:#f87171;--tag:#312e81;--tag-text:#c7d2fe}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}button,input{font:inherit;color:inherit}button{min-height:var(--tap);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);cursor:pointer;padding:0 14px}button:disabled{opacity:.4;cursor:default}button.primary{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}button.danger{color:var(--danger)}:focus-visible{outline:2px solid var(--must-do);outline-offset:2px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app{max-width:40rem;min-height:100dvh;padding:env(safe-area-inset-top) max(16px, env(safe-area-inset-right)) env(safe-area-inset-bottom) max(16px, env(safe-area-inset-left));flex-direction:column;margin:0 auto;display:flex}main{flex:1}.tabs{gap:8px;padding:12px 0;display:flex}.tabs button{color:var(--muted);background:0 0;border-color:#0000;flex:1;font-weight:600}.tabs button[aria-current=page]{background:var(--surface);border-color:var(--line);color:var(--text)}.app-footer{padding:10px 0 calc(10px + env(safe-area-inset-bottom));background:var(--bg);color:var(--muted);text-align:center;font-size:.875rem;position:sticky;bottom:0}.app-footer p{margin:0}.update{left:16px;right:16px;bottom:calc(56px + env(safe-area-inset-bottom));border-radius:var(--radius);background:var(--accent);max-width:38rem;color:var(--accent-text);justify-content:space-between;align-items:center;gap:12px;margin:0 auto;padding:10px 14px;display:flex;position:fixed}.update button{color:inherit;background:0 0;border-color:currentColor}.screen-header h1{margin:8px 0 4px;font-size:1.75rem;line-height:1.2}.screen h2{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:24px 0 8px;font-size:.875rem}.progress,.empty,.task-origin{color:var(--muted);margin:0 0 12px}.empty{text-align:center;margin-top:24px}.back{color:var(--muted);background:0 0;border-color:#0000;margin-top:8px;padding-left:0}.plan-bar{border:1px dashed var(--line);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:8px 12px;margin:12px 0;padding:12px 14px;display:flex}.plan-bar p{flex:100%;margin:0}.plan-bar.locked{color:var(--muted);border-style:solid}.add-task{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.add-task>input{min-height:var(--tap);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);flex:100%;padding:0 14px;font-size:1rem}.must-do-toggle{min-height:var(--tap);color:var(--muted);flex:1;align-items:center;gap:8px;display:flex}.tasks{gap:8px;margin:0;padding:0;list-style:none;display:grid}.task{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:4px 4px 4px 12px}.task-main{min-height:var(--tap);align-items:center;gap:8px;display:flex}.task input[type=checkbox]{width:22px;height:22px;accent-color:var(--accent);flex:none}.task-text{flex-direction:column;flex:1;align-items:flex-start;gap:2px;min-width:0;padding:6px 0;display:flex}.task-text .tag{margin-left:4px}.task-title{text-align:left;overflow-wrap:anywhere;background:0 0;border:0;align-self:stretch;min-width:0;padding:0 4px}.task-title-input{border:1px solid var(--line);background:var(--bg);border-radius:8px;align-self:stretch;min-height:36px;padding:0 8px;font-size:1rem}.task[data-status=done] .task-title{color:var(--muted);text-decoration:line-through}.task[data-status=dropped] .task-title,.task[data-status=moved] .task-title{color:var(--muted)}.task .must-do,.task .more{width:var(--tap);color:var(--muted);background:0 0;border-color:#0000;padding:0;font-size:1.125rem}.task .must-do[aria-pressed=true]{color:var(--must-do)}.task-actions{flex-wrap:wrap;gap:8px;padding:4px 8px 8px 0;display:flex}.task.review .task-origin{margin:0 0 4px 4px;font-size:.875rem}.day-picker{min-height:var(--tap);border:1px solid var(--line);border-radius:var(--radius);align-items:center;gap:8px;padding:0 0 0 12px;display:flex}.day-picker input{background:0 0;border:0;min-height:40px}.tag{background:var(--tag);color:var(--tag-text);border-radius:999px;flex:none;padding:2px 8px;font-size:.75rem;font-weight:600}.days{gap:8px;margin:0;padding:0;list-style:none;display:grid}.day-link{text-align:left;gap:2px;width:100%;padding:12px 14px;display:grid}.day-name{font-weight:600}.day-summary{color:var(--muted);font-size:.875rem}.auth{padding-top:24px}.auth h1{margin:8px 0 12px;font-size:1.75rem}.auth p{color:var(--muted)}.auth-form{gap:8px;margin:16px 0;display:grid}.auth-form input{min-height:var(--tap);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);letter-spacing:.05em;padding:0 14px;font-size:1rem}.auth-actions{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}button.wide{width:100%}button.link{color:var(--muted);background:0 0;border:0;margin-top:16px;padding:0;text-decoration:underline}.recovery-code{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);letter-spacing:.08em;text-align:center;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;margin:16px 0;padding:16px;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:1.125rem}.notice,.hint,[role=alert]:not(.update){margin:8px 0;font-size:.875rem}.notice,.hint{color:var(--muted)}main [role=alert]{color:var(--danger)}code{overflow-wrap:anywhere;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.875em}.rows{gap:8px;margin:0 0 12px;padding:0;list-style:none;display:grid}.row{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);align-items:center;gap:12px;padding:10px 12px;display:flex}.row-text{flex:1;gap:2px;min-width:0;display:grid}.row-meta{color:var(--muted);font-size:.875rem}
