:root{--bg: var(--tg-theme-bg-color, #ffffff);--surface: var(--tg-theme-secondary-bg-color, #f2f2f7);--text: var(--tg-theme-text-color, #14161a);--muted: var(--tg-theme-hint-color, #8a8f98);--accent: var(--tg-theme-button-color, #2f7de1);--accent-text: var(--tg-theme-button-text-color, #ffffff);--danger: #d5493f;--border: rgba(128, 132, 140, .22);--radius: 14px;--safe-bottom: env(safe-area-inset-bottom, 0px)}@media (prefers-color-scheme: dark){:root{--bg: var(--tg-theme-bg-color, #17191c);--surface: var(--tg-theme-secondary-bg-color, #22252a);--text: var(--tg-theme-text-color, #f2f3f5);--muted: var(--tg-theme-hint-color, #8f959e);--border: rgba(150, 155, 165, .2)}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.45 -apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit;cursor:pointer}.app{display:flex;flex-direction:column;min-height:100vh;padding-bottom:calc(72px + var(--safe-bottom))}.tabs{position:sticky;top:0;z-index:10;display:flex;gap:6px;padding:10px 12px;background:var(--bg);border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{flex:0 0 auto;padding:7px 14px;border:none;border-radius:999px;background:var(--surface);color:var(--muted);white-space:nowrap}.tab[data-active=true]{background:var(--accent);color:var(--accent-text)}.tab-count{margin-left:6px;opacity:.7;font-variant-numeric:tabular-nums}.list{flex:1;padding:8px 12px 24px}.group-title{margin:18px 2px 8px;font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--muted);text-transform:uppercase}.row{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;margin-bottom:8px;border-radius:var(--radius);background:var(--surface)}.row[data-done=true] .row-title{color:var(--muted);text-decoration:line-through}.check{flex:0 0 auto;width:24px;height:24px;margin-top:1px;padding:0;border:2px solid var(--muted);border-radius:50%;background:transparent;line-height:1;transition:background .12s ease,border-color .12s ease}.check[data-done=true]{border-color:var(--accent);background:var(--accent);color:var(--accent-text)}.row-body{flex:1;min-width:0;text-align:left;border:none;background:none;padding:0}.row-title{overflow-wrap:anywhere}.row-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px;font-size:13px;color:var(--muted)}.row-meta .overdue{color:var(--danger)}.tag{color:var(--accent)}.empty{padding:56px 20px;text-align:center;color:var(--muted)}.quick-add{position:fixed;left:0;right:0;bottom:0;display:flex;gap:8px;padding:10px 12px calc(10px + var(--safe-bottom));background:var(--bg);border-top:1px solid var(--border)}.quick-add input{flex:1;min-width:0;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);font:inherit}.quick-add input:focus{outline:2px solid var(--accent);outline-offset:-1px}.quick-add button{padding:0 18px;border:none;border-radius:var(--radius);background:var(--accent);color:var(--accent-text);font-weight:600}.quick-add button:disabled{opacity:.45}.hint{padding:0 14px 8px;font-size:12px;color:var(--muted)}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:flex-end;background:#0000006b}.sheet{width:100%;max-height:88vh;overflow-y:auto;padding:18px 16px calc(20px + var(--safe-bottom));border-radius:18px 18px 0 0;background:var(--bg)}.sheet h2{margin:0 0 4px;font-size:19px;overflow-wrap:anywhere}.sheet-field{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--border);font-size:15px}.sheet-field span:first-child{color:var(--muted)}.sheet textarea{width:100%;min-height:84px;margin-top:10px;padding:11px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);font:inherit;resize:vertical}.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.action{flex:1 1 auto;padding:12px;border:none;border-radius:var(--radius);background:var(--surface)}.action[data-kind=primary]{background:var(--accent);color:var(--accent-text)}.action[data-kind=danger]{color:var(--danger)}.subtask{display:flex;gap:10px;align-items:center;padding:9px 0;font-size:15px}.login{display:flex;flex-direction:column;gap:14px;max-width:380px;margin:18vh auto 0;padding:0 24px;text-align:center}.login input{padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);font:inherit;text-align:center;letter-spacing:.3em}.login button{padding:14px;border:none;border-radius:var(--radius);background:var(--accent);color:var(--accent-text);font-weight:600}.error{color:var(--danger);font-size:14px}
