diff --git a/hive-c0re/assets/app.js b/hive-c0re/assets/app.js index 293f087..7b075c0 100644 --- a/hive-c0re/assets/app.js +++ b/hive-c0re/assets/app.js @@ -606,6 +606,23 @@ const root = $('approvals-section'); root.innerHTML = ''; + // Spawn request form: submitting it queues a Spawn approval that + // lands in this same list, so the form belongs here rather than on + // the containers list (the agent doesn't exist yet). + const spawn = el('form', { + method: 'POST', action: '/request-spawn', + class: 'spawnform', 'data-async': '', + }); + spawn.append( + el('input', { + name: 'name', + placeholder: 'new agent name (≤9 chars)', + maxlength: '9', required: '', autocomplete: 'off', + }), + el('button', { type: 'submit', class: 'btn btn-spawn' }, '◆ R3QU3ST SP4WN'), + ); + root.append(spawn); + const history = s.approval_history || []; const active = localStorage.getItem(APPROVAL_TAB_KEY) || 'pending'; const tabs = el('div', { class: 'approval-tabs' }); diff --git a/hive-c0re/assets/dashboard.css b/hive-c0re/assets/dashboard.css index bbbe441..27269eb 100644 --- a/hive-c0re/assets/dashboard.css +++ b/hive-c0re/assets/dashboard.css @@ -18,50 +18,11 @@ body { background: var(--bg); color: var(--fg); font-family: "JetBrains Mono", "Fira Code", "Cascadia Code", "Source Code Pro", monospace; - max-width: 110em; + max-width: 70em; margin: 1.5em auto; padding: 0 1.5em; line-height: 1.6; } -.columns { - display: grid; - gap: 1.4em; - margin-top: 1em; -} -@media (min-width: 1400px) { - .columns { - grid-template-columns: 1.1fr 1fr 1fr; - align-items: start; - } -} -.dash-col { - min-width: 0; /* lets grid children shrink instead of overflowing */ -} -.col-head { - position: sticky; - top: 0; - z-index: 5; - background: rgba(30, 30, 46, 0.92); - -webkit-backdrop-filter: blur(6px); - backdrop-filter: blur(6px); - margin: 0 0 0.6em; - padding: 0.3em 0.5em; - font-size: 1em; - border-bottom: 1px solid var(--purple-dim); -} -.sub-head { - color: var(--cyan); - font-size: 0.85em; - letter-spacing: 0.12em; - text-transform: uppercase; - margin: 1.6em 0 0.4em; - padding-bottom: 0.15em; - border-bottom: 1px dashed var(--border, var(--purple-dim)); - text-shadow: 0 0 6px rgba(137, 220, 235, 0.35); -} -.dash-col .sub-head:first-of-type { - margin-top: 0.4em; -} .banner { text-align: center; margin: 0 0 1em 0; @@ -91,7 +52,7 @@ h1, h2 { color: var(--purple); text-transform: uppercase; letter-spacing: 0.15em; - margin-top: 1em; + margin-top: 2em; text-shadow: 0 0 8px rgba(203, 166, 247, 0.4); } .divider { diff --git a/hive-c0re/assets/index.html b/hive-c0re/assets/index.html index d154610..1439943 100644 --- a/hive-c0re/assets/index.html +++ b/hive-c0re/assets/index.html @@ -17,83 +17,53 @@ -