update logic
add styles