:root{--bg:#f6f6f4;--surface:#fff;--text:#161616;--muted:#7a7a78;--line:#e4e4e0;--accent:#2f6fde;--danger:#c8372d;--bug:#c8372d;--today:#2f6fde;--radius:12px;--tabbar:64px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#161616;--surface:#202020;--text:#ededeb;--muted:#8c8c89;--line:#2e2e2c;--accent:#6a9cf5;--danger:#ef6b61;--bug:#ef6b61;--today:#6a9cf5}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none;margin:0;font:17px/1.4 -apple-system,BlinkMacSystemFont,Inter,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}h1{letter-spacing:-.02em;margin:0 0 2px;font-size:30px;line-height:1.15}h2{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:26px 0 6px;font-size:13px;font-weight:600}h2.overdue{color:var(--danger)}p{margin:0}.muted{color:var(--muted)}.small{font-size:14px}.right{text-align:right}.grow{flex:1}.struck{color:var(--muted);text-decoration:line-through}.page{max-width:680px;padding:calc(env(safe-area-inset-top) + 18px) 16px calc(var(--tabbar) + env(safe-area-inset-bottom) + 90px);margin:0 auto}.head{margin-bottom:14px}.head.row{justify-content:space-between;align-items:center;gap:12px;display:flex}section{margin-bottom:4px}.empty{color:var(--muted);padding:18px 2px}input,select,textarea,button{font:inherit;color:inherit}input:not([type=checkbox]):not([type=color]),select,textarea{background:var(--surface);border:1px solid var(--line);appearance:none;border-radius:10px;width:100%;padding:10px 12px;font-size:17px}select{background-image:linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%);background-position:calc(100% - 18px) 55%,calc(100% - 13px) 55%;background-repeat:no-repeat;background-size:5px 5px;padding-right:32px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:#0000}input[type=color]{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex:none;width:44px;height:44px;padding:4px}button,.button{border:1px solid var(--line);background:var(--surface);cursor:pointer;white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;min-height:44px;padding:10px 14px;display:inline-flex}button:disabled{opacity:.45}.primary{background:var(--text);color:var(--bg);border-color:var(--text);font-weight:600}.danger{color:var(--danger);border-color:var(--line);background:0 0;width:100%;margin-top:28px}.danger-text{color:var(--danger)}.ghost{color:var(--muted);background:0 0;border-color:#0000}.link{min-height:0;color:var(--accent);background:0 0;border:none;padding:0}.link.small{color:var(--muted);font-size:14px}.stack{flex-direction:column;gap:10px;display:flex}.stack .danger{margin-top:0}.inline-form{align-items:center;gap:8px;margin-top:12px;display:flex}.inline-form.wrap{flex-wrap:wrap}.inline-form.wrap input,.inline-form.wrap select{flex:160px;width:auto}.error{color:var(--danger)}.check-row{align-items:center;gap:10px;flex-direction:row!important;display:flex!important}.check-row input{width:20px;height:20px}.tasks{margin:0;padding:0;list-style:none}.tasks li{border-bottom:1px solid var(--line);align-items:flex-start;gap:12px;padding:10px 0;transition:opacity .3s;display:flex}.tasks li.done{opacity:.45}.tasks li.done .title{text-decoration:line-through}.check{border:1.5px solid var(--muted);width:24px;height:24px;min-height:0;color:var(--bg);background:0 0;border-radius:50%;flex:none;margin-top:1px;padding:0;position:relative}.check:after{content:"";position:absolute;inset:-10px}.check.bug{border-color:var(--bug)}.prio-2 .check,.prio-3 .check{border-width:2px;border-color:var(--text)}li.done .check{background:var(--text);border-color:var(--text)}.body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.title{overflow-wrap:anywhere}.prio-3 .title{font-weight:600}.meta{color:var(--muted);flex-wrap:wrap;gap:4px 10px;font-size:14px;display:flex}.meta:empty{display:none}.meta .overdue{color:var(--danger)}.meta .today{color:var(--today)}.area{align-items:center;gap:6px;display:inline-flex}.area i{border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}h1.area i{width:14px;height:14px}.badge{background:var(--line);color:var(--muted);vertical-align:1px;border-radius:6px;margin:0 6px 0 0;padding:1px 6px;font-size:12px;font-weight:600}.badge.bug{background:color-mix(in srgb, var(--bug) 15%, transparent);color:var(--bug)}.title .badge:not(.bug){margin:0 0 0 6px}.rows{background:var(--surface);border-radius:var(--radius);margin:0;padding:0;list-style:none;overflow:hidden}.rows:empty{display:none}.rows li+li{border-top:1px solid var(--line)}.rows a,.row-static{justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:13px 14px;display:flex}.rows .muted{font-size:15px}.notice{background:var(--surface);border-radius:var(--radius);color:var(--accent);margin-bottom:6px;padding:12px 14px;display:block}.notice.static{color:var(--text);margin:12px 0}.key{word-break:break-all;-webkit-user-select:all;user-select:all;padding:8px 0;font-size:14px;display:block}.settings{margin-top:34px}.settings summary{color:var(--muted);cursor:pointer;padding:8px 0}.with-action{justify-content:space-between;align-items:center;display:flex}.task-form{flex-direction:column;gap:12px;display:flex}.task-form label{color:var(--muted);flex-direction:column;gap:4px;font-size:14px;display:flex}.task-form label>input,.task-form label>select{color:var(--text)}.task-form .two{grid-template-columns:1fr 1fr;gap:10px;display:grid}.task-form .title-input{resize:none;background:0 0;border:none;padding:4px 0;font-size:22px;font-weight:600}.task-form .title-input:focus{outline:none}.task-form .primary{margin-top:6px}.search{margin-bottom:18px}.login{max-width:360px;padding:calc(env(safe-area-inset-top) + 18vh) 20px 40px;margin:0 auto}.login h1{margin-bottom:24px}.tabbar{z-index:20;padding:6px 4px calc(env(safe-area-inset-bottom) + 4px);background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--line);justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar a{color:var(--muted);flex-direction:column;flex:1;align-items:center;gap:1px;padding:4px 0;font-size:11px;display:flex}.tabbar a.active{color:var(--text)}.fab{z-index:21;right:max(18px,50vw - 322px);bottom:calc(var(--tabbar) + env(safe-area-inset-bottom) + 16px);background:var(--text);width:56px;height:56px;color:var(--bg);border:none;border-radius:50%;padding:0;position:fixed;box-shadow:0 6px 20px #0000002e}.sheet-backdrop{z-index:30;padding:calc(env(safe-area-inset-top) + 10px) 10px 0;background:#00000047;justify-content:center;align-items:flex-start;animation:.12s ease-out fade;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);border-radius:16px;width:100%;max-width:640px;padding:12px;animation:.16s ease-out drop;box-shadow:0 10px 40px #00000040}.sheet input{background:0 0!important;border:none!important;outline:none!important;padding:8px 6px!important;font-size:19px!important}.chips{flex-wrap:wrap;gap:6px;min-height:4px;padding:0 6px;display:flex}.chip{background:var(--line);border-radius:20px;padding:3px 9px;font-size:13px}.chip.date{background:color-mix(in srgb, var(--today) 16%, transparent);color:var(--today)}.chip.bug{background:color-mix(in srgb, var(--bug) 16%, transparent);color:var(--bug)}.chip.faint{opacity:.6}.sheet .hint{color:var(--muted);padding:10px 6px 0;font-size:12px;line-height:1.3}.sheet-actions{justify-content:flex-end;gap:6px;margin-top:8px;display:flex}.toast{z-index:25;left:50%;bottom:calc(var(--tabbar) + env(safe-area-inset-bottom) + 86px);background:var(--text);color:var(--bg);border-radius:12px;align-items:center;gap:12px;max-width:calc(100vw - 32px);padding:6px 6px 6px 14px;font-size:15px;animation:.15s ease-out fade;display:flex;position:fixed;transform:translate(-50%)}.toast span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.toast button{color:var(--bg);background:0 0;border:none;min-height:36px;font-weight:600}@keyframes fade{0%{opacity:0}}@keyframes drop{0%{opacity:0;transform:translateY(-8px)}}
