:root { font-family: system-ui, sans-serif; line-height: 1.4; }
body { margin: 0; padding: 1rem; max-width: 900px; margin-inline: auto; }
header h1 { font-size: 1.4rem; }
.project { border: 1px solid #ddd; border-radius: 8px; padding: 1rem; margin-block: 1rem; }
.project h2 { font-size: 1.1rem; margin: 0 0 .5rem; }
.type, .status { font-size: .7rem; padding: .1rem .4rem; border-radius: 4px; background: #eee; margin-left: .3rem; }
.tasks, .links { margin: .3rem 0; padding-left: 1.2rem; }
.task.status-done { text-decoration: line-through; color: #888; }
.task-status { margin-right: .4rem; font-size: .75rem; }
.error { color: #b00; }
.ok { color: #070; }
.empty { color: #666; }

#controls { display: flex; flex-wrap: wrap; gap: 1rem; margin-block: 1rem; }
.card { border: 1px solid #ddd; border-radius: 8px; padding: 1rem; flex: 1 1 260px; display: flex; flex-direction: column; gap: .4rem; }
.card h3 { font-size: .95rem; margin: 0 0 .3rem; }
.card input, .card select, .card button { font: inherit; padding: .35rem; }
.card button { cursor: pointer; }
#msg:empty { display: none; }
#msg { margin: .3rem 0; }
