env-manager: ui polish (#127)

* env-manager: migrate to pico 2.0.6

* env: option to hide children from ui

* introduce template hierarchy

* style: improve menu styling

* env: reorganize tasks, pull before install

---------

Co-authored-by: Giorgi Lekveishvili <lekva@gl-mbp-m1-max.local>
diff --git a/core/installer/welcome/env-manager-tmpl/status.html b/core/installer/welcome/env-manager-tmpl/status.html
new file mode 100644
index 0000000..3a54edf
--- /dev/null
+++ b/core/installer/welcome/env-manager-tmpl/status.html
@@ -0,0 +1,44 @@
+{{ define "task" }}
+{{ range . }}
+<li aria-busy="{{ eq .Status 0 }}">
+	{{ .Title }}{{ if .Err }} - {{ .Err.Error }} {{ end }}
+	{{ if .Subtasks }}
+	<ul>
+   		{{ template "task" .Subtasks }}
+	</ul>
+	{{ end }}
+</li>
+{{ end }}
+{{ end }}
+
+{{ define "main" }}
+<article>
+  <ul>
+	  {{ template "task" .Root.Subtasks }}
+  </ul>
+</article>
+{{ if .DNSRecords }}
+<div>
+	<form action="" method="POST">
+		You will have to publish following DNS records via your domain registrar.
+		<textarea rows="7">{{ .DNSRecords }}</textarea>
+		<label for="domain-registrar">Domain Registrar</label>
+		<select id="domain-registrar" required tabindex="1">
+			<option value="" selected>Select registrar</option>
+			<option value="gandi">Gandi</option>
+			<option value="namecheap">Namecheap</option>
+		</select>
+		<label for="api-token">API Token</label>
+		<input
+			type="text"
+			id="api-token"
+			name="api-token"
+			required
+			autofocus
+			tabindex="2"
+		/>
+		<button type="submit" tabindex="3">Update</button>
+	</form>
+</div>
+{{ end }}
+{{ end }}