:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f6f7f9;--card:#fff;--text:#1b1f24;--muted:#6b7280;--border:#e2e5ea;--accent:#2563eb;--danger:#dc2626}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#14171c;--card:#1c2027;--text:#eef1f5;--muted:#9aa3af;--border:#2c323b}}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0;padding:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}main{max-width:34rem;margin:0 auto;padding:2.5rem 1rem 4rem}h1{margin:0 0 .25rem;font-size:1.6rem}.subtitle{color:var(--muted);margin:0 0 1.5rem;font-size:.9rem}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden}form.add{border-bottom:1px solid var(--border);gap:.5rem;padding:.85rem;display:flex}input[type=text]{color:var(--text);border:1px solid var(--border);background:0 0;border-radius:8px;flex:1;padding:.6rem .7rem;font-size:1rem}input[type=text]:focus{outline:2px solid var(--accent);outline-offset:1px}button{cursor:pointer;border-radius:8px;font-family:inherit;font-size:.95rem}button.primary{color:#fff;background:var(--accent);border:1px solid var(--accent);padding:.6rem 1.1rem}button.primary:disabled{opacity:.5;cursor:not-allowed}ul.todos{margin:0;padding:0;list-style:none}ul.todos li{border-bottom:1px solid var(--border);align-items:center;gap:.7rem;padding:.7rem .9rem;display:flex}ul.todos li:last-child{border-bottom:none}ul.todos input[type=checkbox]{width:1.15rem;height:1.15rem;accent-color:var(--accent);cursor:pointer;flex:none}.title{word-break:break-word;flex:1}.title.done{color:var(--muted);text-decoration:line-through}button.delete{color:var(--danger);background:0 0;border:1px solid #0000;padding:.3rem .55rem}button.delete:hover{border-color:var(--danger)}.empty,.loading{color:var(--muted);text-align:center;padding:1.5rem .9rem;font-size:.95rem}.error{color:#fff;background:var(--danger);border-radius:8px;margin:0 0 1rem;padding:.7rem .9rem;font-size:.9rem}.footer{color:var(--muted);text-align:center;margin-top:1rem;font-size:.85rem}
