font-family: monospace;
   text-align: left;
   padding: 0;
+  background-color: white;
 }
 input[type="text"] {
   width: 100em;
 }
+input.timestamp {
+  width: 11em;
+}
+input.date {
+  width: 6em;
+}
 input.btn-harmless {
   color: green;
 }
   text-align: right;
 }
 td, th, tr, table {
-  vertical-align: top;
   margin-top: 1em;
   padding: 0;
   border-collapse: collapse;
 a {
   color: black;
 }
-table.edit_table > tbody > tr > td, table.main > tbody > tr > th {
+table.edit_table > tbody > tr > td,
+table.edit_table > tbody > tr > th {
   border-bottom: 0.1em solid #bbbbbb;
   padding-top: 0.5em;
   padding-bottom: 0.5em;
 }
+td.number, input[type="number"] {
+  text-align: right;
+}
+input[name="effort"] {
+  width: 3.5em;
+}
+textarea {
+  width: 100%;
+}
+table.alternating > tbody > tr:nth-child(odd) {
+  background-color: #dfdfdf;
+}
+div.edit_buttons {
+  margin-top: 1em;
+}
 {% block css %}
 {% endblock %}
 </style>
 
 {% macro edit_buttons() %}
+<div class="edit_buttons">
 <input class="btn-harmless" type="submit" name="update" value="update" />
 <div class="btn-to-right">
 <input class="btn-dangerous" type="submit" name="delete" value="delete" />
 </div>
+</div>
 {% endmacro %}
 
 
 
 <p><a href="/calendar_txt">basic view</a></p>
 
 <form action="calendar" method="GET">
-from <input name="start" value="{{start}}" />
-to <input name="end" value="{{end}}" />
+from <input name="start" class="date" value="{{start}}" />
+to <input name="end" class="date" value="{{end}}" />
 <input type="submit" value="OK" />
 </form>
 <table>
 
 
 <form action="conditions" method="GET">
 <input type="submit" value="filter" />
-<input name="pattern" value="{{pattern}}" />
+<input name="pattern" type="text" value="{{pattern}}" />
 </form>
 
-<table>
+<table class="alternating">
 <tr>
 <th><a href="?sort_by={% if sort_by == "is_active" %}-{% endif %}is_active">active</a></th>
 <th><a href="?sort_by={% if sort_by == "title" %}-{% endif %}title">title</a></th>
 
 
 
 {% block css %}
-table {
-  border-collapse: collapse;
-}
 th {
   border: 1px solid black;
 }
 }
 tr.inactive > td.todo_line {
   background-color: #bfbfbf;
+  border-bottom: 1px solid white;
 }
 tr.hidden_undone > td, tr.hidden_undone a {
   color: #9f9f9f;
 <td class="todo_line">{% if node.todo.effort %}{{ node.todo.effort }}{% endif %}</td>
 {% else %}
 <td class="todo_line left_border"><input name="done" type="checkbox" value="{{node.todo.id_}}" {% if not node.todo.is_doable %}disabled{% endif %}/></td>
-<td class="todo_line"><input name="effort" type="number" step=0.1 size=5 placeholder={{node.todo.effort_then}} value={{node.todo.effort}} /></td>
+<td class="todo_line"><input name="effort" type="number" step=0.1 placeholder={{node.todo.effort_then}} value={{node.todo.effort}} /></td>
 {% endif %}
 <td class="todo_line right_border">
 {% for i in range(indent) %}    {% endfor %} +
 {% macro show_node_done(node, indent, path) %}
 {% if node.todo.has_doneness_in_path %}
 <tr{% if not node.todo.is_done %} class="hidden_undone"{% endif %}>
-<td>{{node.todo.performed_effort}}</td>
-<td>{{node.todo.tree_effort|round(1)}}</td>
+<td class="number">{{ '{:4.1f}'.format(node.todo.performed_effort) }}</td>
+<td class="number">{{ '{:4.1f}'.format(node.todo.tree_effort) }}</td>
 <td>
 {% for i in range(indent) %}    {% endfor %} +
-{% if not node.todo.is_done %}({% endif %}<a href="todo?id={{node.todo.id_}}">{{node.todo.title_then|e}}</a>{% if not node.todo.is_done %}){% endif %}
-</td>
-<td>{{node.todo.comment|e}}</td>
+{% if not node.todo.is_done %}({% endif %}{% if node.seen %}[{% endif %}<a href="todo?id={{node.todo.id_}}">{{node.todo.title_then|e}}</a>{% if node.seen %}]{% endif %}{% if not node.todo.is_done %}){% endif %}{% if node.todo.comment %} · {{node.todo.comment|e}}{% endif %}</td>
 </tr>
 {% if not node.seen %}
 {% for child in node.children %}
 {% for condition in conditions_present %}
 <td class="cond_line_{{(conditions_present|length - loop.index) % 3}}"></td>
 {% endfor %}
-<td colspan=2></td>
+<th colspan=2>comments</th>
 </tr>
 {% for node in top_nodes %}
 {{ show_node_undone(node, 0) }}
 
 <h4>done</h4>
 
-<table>
+<table class="alternating">
+<tr>
+<th colspan=2>effort</th><th rowspan=2>action · comment</th>
+</tr>
+<tr>
+<th>self</th><th>tree</th>
+</tr>
 {% for node in top_nodes %}
 {{ show_node_done(node, 0, []) }}
 {% endfor %}
 
 <td><input name="title" type="text" value="{{process.title.newest|e}}" />{% if process.id_ %} [<a href="process_titles?id={{process.id_}}">history</a>]{% endif %}</td>
 </tr>
 <tr>
-<th>default effort</th>
-<td><input name="effort" type="number" step=0.1 value={{process.effort.newest}} />{% if process.id_ %} [<a href="process_efforts?id={{process.id_}}">history</a>]{% endif %}</td>
+<th>effort</th>
+<td><input type="number" name="effort" step=0.1 value={{process.effort.newest}} />{% if process.id_ %} [<a href="process_efforts?id={{process.id_}}">history</a>]{% endif %}</td>
 </tr>
 <tr>
 <th>description</th>
 <tr>
 <th>steps</th>
 <td>
+{% if steps %}
 <table>
 {% for step_id, step_node in steps.items() %}
 {{ step_with_steps(step_id, step_node, 0) }}
 {% endfor %}
 </table>
-add: <input name="new_top_step" list="process_candidates" autocomplete="off" value="{{preset_top_step or ''}}" />
+{% endif %}
+add: <input type="text" name="new_top_step" list="process_candidates" autocomplete="off" value="{{preset_top_step or ''}}" />
 </td>
 </tr>
 <tr>
 
 
 <form action="processes" method="GET">
 <input type="submit" value="filter" />
-<input name="pattern" value="{{pattern}}" />
+<input name="pattern" type="text" value="{{pattern}}" />
 </form>
 
-<table>
+<table class="alternating">
 <tr>
 <th><a href="?sort_by={% if sort_by == "steps" %}-{% endif %}steps">steps</a></th>
 <th><a href="?sort_by={% if sort_by == "owners" %}-{% endif %}owners">owners</a></th>
 </tr>
 {% for process in processes %}
 <tr>
-<td>{{ process.explicit_steps|count }}</td>
-<td>{{ process.n_owners }}</td>
-<td>{{ process.effort.newest }}</td>
+<td class="number">{{ process.explicit_steps|count }}</td>
+<td class="number">{{ process.n_owners }}</td>
+<td class="number">{{ process.effort.newest }}</td>
 <td><a href="process?id={{process.id_}}">{{process.title.newest}}</a></td>
 </tr>
 {% endfor %}
 
 </tr>
 <tr>
 <th>effort</th>
-<td><input type="number" name="effort" step=0.1 size=5 placeholder={{todo.effort_then}} value={{todo.effort}} /></td>
+<td><input type="number" name="effort" step=0.1 placeholder={{todo.effort_then}} value={{todo.effort}} /></td>
 </tr>
 <tr>
 <th>comment</th>
 
 <h3>todos</h3>
 
 <form action="todos" method="GET">
+from <input name="start" class="date" value="{{start}}" />
+to <input name="end" class="date" value="{{end}}" /><br />
+process <input name="process_id" type="text" value="{{process_id or ''}}" list="processes" /><br />
+in comment  <input name="comment_pattern" type="text" value="{{comment_pattern}}" /><br />
 <input type="submit" value="filter" />
-process <input name="process_id" value="{{process_id or ''}}" list="processes" />
-from <input name="start" value="{{start}}" />
-to <input name="end" value="{{end}}" />
-in comment  <input name="comment_pattern" value="{{comment_pattern}}" />
-<input type="submit" value="OK" />
 </form>
 
-<table>
+<table class="alternating">
 <tr>
 <th><a href="?sort_by={% if sort_by == "doneness" %}-{% endif %}doneness">done</a></th>
 <th><a href="?sort_by={% if sort_by == "date" %}-{% endif %}date">date</a></th>