:root{--bg:#f5f6f8;--panel:#fff;--text:#1c2128;--muted:#656d76;--line:#dfe3e8;--accent:#2563eb;--accent-text:#fff;--danger:#c0271d;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0f1318;--panel:#171c23;--text:#e6edf3;--muted:#8d96a0;--line:#2b323b;--accent:#5b9bff;--accent-text:#0b1016;--danger:#f47067}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font:16px/1.5 system-ui,sans-serif}main{max-width:560px;margin:0 auto;padding:48px 16px}header h1{margin:0;font-size:28px}header p{color:var(--muted);margin:4px 0 24px}button,input{font:inherit;color:inherit}button{cursor:pointer;border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:8px 14px}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text);font-weight:600}button.link{color:var(--muted);background:0 0;border:0;padding:4px;text-decoration:underline}.add{gap:8px;display:flex}.add input{border:1px solid var(--line);background:var(--panel);border-radius:8px;flex:1;min-width:0;padding:10px 12px}.add input:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.error{border:1px solid var(--danger);color:var(--danger);border-radius:8px;margin:12px 0 0;padding:8px 12px}.filters{align-items:center;gap:6px;margin:24px 0 8px;display:flex}.filters [role=tab]{border-radius:999px;padding:4px 12px;font-size:14px}.filters [aria-selected=true]{border-color:var(--accent);color:var(--accent);font-weight:600}.spacer{flex:1}.todos{background:var(--panel);border:1px solid var(--line);border-radius:12px;margin:0;padding:0;list-style:none;overflow:hidden}.todos li{border-top:1px solid var(--line);align-items:center;gap:8px;padding:4px 8px 4px 14px;display:flex}.todos li:first-child{border-top:0}.todos label{cursor:pointer;flex:1;align-items:center;gap:12px;min-width:0;padding:8px 0;display:flex}.todos label span{overflow-wrap:anywhere}.todos input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent);flex-shrink:0}.todos .done span{color:var(--muted);text-decoration:line-through}.todos .remove{color:var(--muted);background:0 0;border:0;padding:2px 10px;font-size:22px;line-height:1}.todos .remove:hover{color:var(--danger)}.todos .empty{color:var(--muted);text-align:center;justify-content:center;padding:28px 14px}footer{color:var(--muted);margin-top:24px;font-size:13px}
