:root{--bg:#f7f6f3;--panel:#fff;--side:#efeee9;--text:#1f2023;--muted:#6f7177;--line:#e4e2dc;--hover:#ecebe6;--sel:#e3ecfb;--accent:#2f6fde;--accent-text:#fff;--danger:#c4352b;--due:#c4352b;--checkin:#fff4dc;--checkin-line:#e7c46b;--toast:#26272b;--toast-text:#f2f2f2;--shadow:0 8px 30px #0000001f;--c1:#009e73;--c2:#0072b2;--c3:#e69f00;--c4:#8e5bb5;--c5:#d55e00;--c6:#c9b300;--radius:10px;--tab-h:62px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#18191b;--panel:#212225;--side:#1c1d20;--text:#e9e9eb;--muted:#9a9ca3;--line:#2f3034;--hover:#2a2b2f;--sel:#23324d;--accent:#6c9ef8;--accent-text:#0e1420;--danger:#ff7b6e;--due:#ff8a7a;--checkin:#3a3220;--checkin-line:#8a7234;--toast:#e9e9eb;--toast-text:#1a1b1e;--shadow:0 8px 30px #00000080;--c1:#2ec4a0;--c2:#56b4e9;--c3:#f0b030;--c4:#c39be6;--c5:#ff7f3f;--c6:#f0e442;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);-webkit-tap-highlight-color:transparent;margin:0;font:15px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}#root{height:100%}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}a{color:inherit;text-decoration:none}input,textarea,select{font:inherit;color:inherit}kbd{color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:0 4px;font:11px ui-monospace,monospace}.grow{flex:1}.muted{color:var(--muted)}.err{color:var(--danger)}.hint{color:var(--muted);margin:6px 0;font-size:13px}.shell{grid-template-columns:240px minmax(0,1fr);height:100%;display:grid}.shell.with-detail{grid-template-columns:240px minmax(0,1fr) 400px}.sidebar{background:var(--side);border-right:1px solid var(--line);flex-direction:column;gap:1px;padding:14px 10px;display:flex;overflow-y:auto}.brand{letter-spacing:-.01em;padding:4px 10px 14px;font-size:18px;font-weight:700}.nav{color:var(--text);border-radius:8px;align-items:center;gap:10px;padding:7px 10px;display:flex}.nav svg{color:var(--muted);flex:none}.nav span:not(.count):not(.dot){text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.nav:hover{background:var(--hover)}.nav.on{background:var(--sel)}.nav.on svg{color:var(--accent)}.nav.section{margin-top:14px}.nav.sub{padding:5px 10px 5px 18px;font-size:14px}.count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.count.hot{color:var(--accent);font-weight:600}.main{flex-direction:column;min-width:0;height:100%;display:flex;overflow:hidden}.top{align-items:center;gap:8px;min-height:58px;padding:18px 28px 6px;display:flex}.top h1{letter-spacing:-.015em;margin:0;font-size:24px}.content{flex:1;width:100%;max-width:820px;padding:6px 28px 120px;overflow-y:auto}.sync-badge{color:var(--muted);background:var(--hover);border-radius:20px;align-items:center;gap:4px;padding:3px 10px;font-size:12px;display:inline-flex}.sync-badge.err{color:var(--danger)}.tabbar,.fab,.only-phone{display:none!important}.list{flex-direction:column;display:flex}.row{border-radius:var(--radius);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:pan-y;position:relative}.row-inner{border-radius:var(--radius);background:var(--bg);cursor:default;align-items:flex-start;gap:10px;min-height:44px;padding:9px 8px 9px 0;display:flex;position:relative}.row:hover .row-inner{background:var(--hover)}.row.selected .row-inner{background:var(--sel)}.row.dragging{z-index:5;opacity:.9}.row.dragging .row-inner{box-shadow:var(--shadow);background:var(--panel)}.row.checkin .row-inner{background:var(--checkin);box-shadow:inset 0 0 0 1px var(--checkin-line);margin-bottom:4px}.stripe{border-radius:3px;flex:none;align-self:stretch;width:4px;margin-left:2px}.stripe.tall{min-height:28px}.check{border:1.8px solid var(--muted);width:22px;height:22px;color:var(--accent-text);border-radius:50%;flex:none;place-items:center;margin-top:0;font-size:12px;display:grid}.check:hover{border-color:var(--accent)}.check.checked{background:var(--accent);border-color:var(--accent)}.check.big{width:26px;height:26px;margin-top:4px}.check.small{width:18px;height:18px}.row-main{flex:1;min-width:0}.row-title{word-break:break-word}.row.done .row-title{color:var(--muted);text-decoration:line-through}.checkin-label{font-weight:600}.src-icon{color:var(--muted);vertical-align:-1px;margin-left:6px}.row-meta{color:var(--muted);flex-wrap:wrap;gap:4px 10px;margin-top:2px;font-size:12.5px;display:flex}.meta-project{font-weight:500}.meta-notes{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.meta-due.overdue{color:var(--due);font-weight:600}.badge{color:var(--accent);background:var(--sel);border-radius:10px;align-items:center;gap:1px;padding:0 7px 0 4px;font-size:12px;font-weight:600;display:inline-flex}.badge.static{margin-left:8px;padding:0 6px}.row-actions{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.row-actions button{background:var(--panel);border:1px solid var(--checkin-line);border-radius:16px;padding:5px 12px;font-size:13px}.row-actions button:first-child{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.grip{color:var(--muted);opacity:0;cursor:grab;touch-action:none;flex:none;margin-top:1px;padding:2px}.row:hover .grip,.fu-row:hover .grip{opacity:.7}.swipe-bg{border-radius:var(--radius);color:#fff;align-items:center;padding:0 20px;font-weight:600;display:flex;position:absolute;inset:0}.swipe-done{background:var(--c1)}.swipe-move{background:var(--c2);justify-content:flex-end}.empty{color:var(--muted);max-width:440px;margin:28px 4px;line-height:1.5}.group{margin:10px 0 18px}.group-head{color:var(--text);margin:12px 4px 4px;font-size:13px;font-weight:600}.coll-row .row-inner{align-items:center;padding-left:0}.coll-icon{color:var(--muted);flex:none}.capture{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);align-items:center;gap:8px;margin:6px 0 12px;padding:4px 6px 4px 12px;display:flex}.capture:focus-within{border-color:var(--accent)}.capture input{background:0 0;border:0;outline:0;flex:1;min-width:0;padding:9px 0;font-size:16px}.capture-icon{color:var(--muted);flex:none}.mic,.lang{height:34px;color:var(--muted);border-radius:8px;flex:none}.mic{place-items:center;width:34px;display:grid}.lang{padding:0 4px;font-size:11px;font-weight:600}.mic:hover,.lang:hover{background:var(--hover)}.mic.on{background:var(--danger);color:#fff}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--line);background:var(--panel);border-radius:18px;align-items:center;gap:6px;min-height:34px;padding:6px 12px;font-size:14px;display:inline-flex}.chip:hover{border-color:var(--muted)}.chip.on{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.chip.static{cursor:default}.chip.danger{color:var(--danger)}.chip.person{font-weight:500}.date-input{padding:4px 10px}.filter-chips{margin:4px 0 12px}.add-row{margin:16px 0}.dot{border-radius:50%;flex:none;width:12px;height:12px;display:inline-block}.dot.small{width:8px;height:8px}.dot.none{border:1.5px dashed var(--muted)}.btn{border:1px solid var(--line);background:var(--panel);border-radius:9px;padding:9px 16px;font-weight:500}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.btn:disabled{opacity:.5}.more-btn{margin:10px 4px}.icon-btn{width:36px;height:36px;color:var(--muted);border-radius:8px;place-items:center;display:grid}.icon-btn:hover{background:var(--hover)}.link-btn{color:var(--text);text-align:left;padding:4px 0;font-size:14px}.link-btn:hover{color:var(--accent)}.text-input,.select{border:1px solid var(--line);background:var(--panel);border-radius:9px;outline:0;width:100%;padding:10px 12px;font-size:16px}.text-input:focus,.select:focus{border-color:var(--accent)}.select{width:auto;max-width:100%;padding:7px 10px;font-size:14px}.search-input{margin:4px 0 12px}.detail{background:var(--panel);border-left:1px solid var(--line);flex-direction:column;height:100%;display:flex;overflow:hidden}.detail-head{align-items:center;padding:10px 10px 0;display:flex}.detail-body{flex:1;padding:4px 20px 40px;overflow-y:auto}.detail-title-row{align-items:flex-start;gap:10px;display:flex}.detail-title{resize:none;background:0 0;border:0;outline:0;flex:1;padding:4px 0;font-size:19px;font-weight:600;line-height:1.35}.after-link{color:var(--muted);text-align:left;margin:4px 0 0 40px;font-size:13px}.field{margin:16px 0}.row-field{flex-wrap:wrap;align-items:center;gap:8px 18px;display:flex}.label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-size:12px;font-weight:600}.swatches{flex-wrap:wrap;gap:4px;display:flex}.swatch{border:1px solid #0000;border-radius:16px;align-items:center;gap:6px;padding:5px 10px 5px 7px;font-size:13px;display:inline-flex}.swatch:hover{background:var(--hover)}.swatch.on{border-color:var(--text)}.notes{border:1px solid var(--line);background:var(--bg);resize:none;border-radius:9px;outline:0;width:100%;min-height:70px;padding:10px 12px;line-height:1.45}.notes:focus{border-color:var(--accent)}.followups{flex-direction:column;gap:2px;margin-bottom:6px;display:flex}.fu-row{background:var(--panel);border-radius:8px;align-items:center;gap:8px;padding:5px 4px;display:flex}.fu-row:hover{background:var(--hover)}.fu-row.done .fu-title{color:var(--muted);text-decoration:line-through}.fu-title{text-align:left;flex:1;font-size:14px}.then-form input{border:0;border-bottom:1px dashed var(--line);background:0 0;outline:0;width:100%;padding:8px 4px;font-size:15px}.then-form input:focus{border-bottom-color:var(--accent)}.detail-foot{margin-top:30px;font-size:12px}.coll-head{align-items:center;gap:6px;display:flex}.coll-name{letter-spacing:-.015em;background:0 0;border:0;outline:0;flex:1;min-width:0;padding:2px 0;font-size:24px;font-weight:700}.coll-notes{resize:vertical;width:100%;color:var(--muted);background:0 0;border:0;outline:0;padding:4px 0;font-size:14px}.coll-menu{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);margin:6px 0;padding:4px 14px 14px}.overlay{z-index:50;background:#0000004d;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.overlay.clear{background:0 0}.sheet{background:var(--panel);box-shadow:var(--shadow);border-radius:14px;width:min(460px,100vw - 32px);max-height:85vh;padding:14px 18px 18px;overflow-y:auto}.sheet-head{align-items:center;gap:8px;display:flex}.sheet-head h2{text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;font-size:17px;overflow:hidden}.sheet-sub{color:var(--muted);margin:2px 0 8px;font-size:14px}.sheet-section{margin:14px 0}.sheet-section .chips{margin-top:8px}.sheet-foot{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.capture-overlay{align-items:flex-start;padding-top:12vh}.capture-sheet{padding:8px}.capture-sheet .capture{border:0;margin:0}.capture-count{color:var(--c1);padding:4px 12px 2px;font-size:13px}.menu{background:var(--panel);box-shadow:var(--shadow);border:1px solid var(--line);border-radius:12px;padding:6px;position:fixed}.menu-item{text-align:left;border-radius:8px;align-items:center;gap:10px;width:100%;padding:9px 10px;display:flex}.menu-item kbd{margin-left:auto}.menu-item:hover{background:var(--hover)}.menu-item.on{background:var(--sel)}.toast{z-index:60;background:var(--toast);color:var(--toast-text);box-shadow:var(--shadow);border-radius:12px;align-items:center;gap:8px;max-width:min(640px,100vw - 24px);padding:8px 8px 8px 16px;font-size:14px;animation:.15s ease-out pop;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}@keyframes pop{0%{opacity:0;transform:translate(-50%,8px)}}.toast-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.toast-actions{flex:none;gap:2px;display:flex}.toast-btn{white-space:nowrap;color:inherit;border-radius:8px;padding:7px 10px;font-weight:600}.toast-btn:hover{background:#7f7f7f40}.toast-then input{color:inherit;background:0 0;border:0;outline:0;flex:1;min-width:220px;padding:6px 0;font-size:16px}.login{place-items:center;min-height:100%;padding:20px;display:grid}.login-card{width:min(380px,100%)}.login-card form{flex-direction:column;gap:10px;display:flex}.login-card .brand{padding:0;font-size:32px}.code-input{letter-spacing:.2em;text-align:center;font-size:24px}.settings p{margin:6px 4px}.color-name{align-items:center;gap:10px;max-width:360px;margin:6px 4px;display:flex}.color-name .dot{width:18px;height:18px}.keys td{padding:3px 12px 3px 4px;font-size:14px}@media (width<=899px){.shell,.shell.with-detail{display:block}.sidebar,.only-wide{display:none!important}.only-phone{display:inline!important}.main{height:100%}.top{padding:calc(14px + env(safe-area-inset-top)) 16px 4px;min-height:52px}.top h1{font-size:26px}.content{padding:4px 10px calc(var(--tab-h) + 110px);max-width:none}.row-inner{gap:12px;min-height:52px;padding:12px 6px 12px 0}.row:hover .row-inner,.row.selected .row-inner{background:var(--bg)}.check{width:26px;height:26px}.row-title{font-size:16px}.grip{opacity:.35;padding:4px 2px 4px 8px}.tabbar{height:calc(var(--tab-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--panel);border-top:1px solid var(--line);z-index:20;position:fixed;bottom:0;left:0;right:0;display:flex!important}.tab{color:var(--muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:11px;display:flex;position:relative}.tab.on{color:var(--accent)}.tab-count{background:var(--hover);color:var(--text);border-radius:8px;padding:0 5px;font-size:10px;font-weight:600;line-height:16px;position:absolute;top:6px;left:calc(50% + 8px)}.tab-count.hot{background:var(--accent);color:var(--accent-text)}.fab{right:18px;bottom:calc(var(--tab-h) + 18px + env(safe-area-inset-bottom));background:var(--accent);width:60px;height:60px;color:var(--accent-text);box-shadow:var(--shadow);z-index:25;border-radius:50%;place-items:center;position:fixed;display:grid!important}.detail{z-index:40;padding-top:env(safe-area-inset-top);border:0;position:fixed;inset:0}.detail-head .back{color:var(--text)}.detail-body{padding:4px 16px 60px}.overlay{align-items:flex-end}.overlay.clear{align-items:center}.sheet{width:100%;padding-bottom:calc(18px + env(safe-area-inset-bottom));border-radius:16px 16px 0 0}.capture-overlay{align-items:flex-end;padding-top:0}.capture-sheet{padding:10px 10px calc(10px + env(safe-area-inset-bottom))}.toast{bottom:calc(var(--tab-h) + 14px + env(safe-area-inset-bottom));flex-wrap:wrap;width:calc(100vw - 20px)}.toast-actions{margin-left:auto}.chip{min-height:40px;padding:8px 14px}.swatch{padding:8px 12px 8px 9px}}
