*,:after,:before{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f5f5f5;color:#333;min-height:100vh}.container{max-width:640px;margin:0 auto;padding:40px 20px}h1{text-align:center;margin-bottom:30px;font-size:2rem;color:#1a1a1a}.add-form{display:flex;gap:10px;margin-bottom:24px}.add-form input{flex:1 1;padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;outline:none;transition:border-color .2s}.add-form input:focus{border-color:#4f46e5}.add-form button{padding:12px 24px;background:#4f46e5;color:white;border:none;border-radius:8px;font-size:1rem;cursor:pointer;transition:background .2s}.add-form button:hover{background:#4338ca}.todo-list{list-style:none;display:flex;flex-direction:column;gap:8px}.todo-item{display:flex;align-items:center;gap:12px;padding:14px 16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.08);transition:box-shadow .2s}.todo-item:hover{box-shadow:0 2px 8px rgba(0,0,0,.12)}.todo-item input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#4f46e5}.todo-item .title{flex:1 1;font-size:1rem}.todo-item .title.completed{text-decoration:line-through;color:#999}.todo-item .description{font-size:.85rem;color:#777}.todo-item .delete-btn{padding:6px 12px;background:#fee2e2;color:#dc2626;border:none;border-radius:6px;cursor:pointer;font-size:.85rem;transition:background .2s}.todo-item .delete-btn:hover{background:#fecaca}.empty{color:#999;font-size:1.1rem}.empty,.loading{text-align:center;padding:40px 0}.loading{color:#666}