feat(ui): project details panel + compact/responsive cards; rename Sentinel→Yerin (red); migrate research_notes

- Project card expands to show description + status + dates (was only the research stub)
- Cards compacted + responsive (actions wrap on narrow)
- Sentinel renamed Yerin everywhere (#/yerin, red 'Sage of the Endless Sword' theme + red sidebar dot)
- void1 importer now carries research_notes/last_researched_at (was dropped)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
root
2026-06-05 00:19:16 +10:00
parent bf58b624a3
commit dbf84559de
7 changed files with 60 additions and 7 deletions

View File

@@ -284,6 +284,35 @@ button.ghost:hover { color: var(--text); border-color: var(--accent-dim); }
.agent-file-label { font-family: var(--font-display); font-size: 10px; text-transform: uppercase; letter-spacing: .12em; color: var(--muted); margin: 10px 0 4px; }
.agent-file-content { background: var(--bg); border: 1px solid var(--border); border-radius: 5px; padding: 10px 12px; font-size: 12.5px; line-height: 1.5; white-space: pre-wrap; color: var(--text); max-height: 280px; overflow: auto; }
/* Project cards — compact + responsive + details panel */
.proj-head { padding: 7px 10px; gap: 8px; }
.proj-title { font-size: 14px; }
.proj-desc { font-size: 12px; }
.proj-status { font-size: 11px; padding: 2px 6px; }
.proj-btn { font-size: 11px; padding: 3px 8px; }
.proj-actions { flex-wrap: wrap; justify-content: flex-end; }
.proj-panel { padding: 2px 14px 12px 32px; }
.proj-details { margin-bottom: 4px; }
.proj-detail-desc { font-size: 13px; color: var(--text); line-height: 1.55; margin-bottom: 8px; }
.proj-dl { display: grid; grid-template-columns: max-content 1fr; gap: 3px 14px; margin: 0; font-size: 12px; }
.proj-dl dt { color: var(--muted); text-transform: uppercase; letter-spacing: .06em; font-size: 10px; align-self: center; }
.proj-dl dd { margin: 0; color: var(--text); }
.proj-panel .research-notes, .proj-panel .md-preview { font-size: 13px; }
@media (max-width: 620px) {
.proj-head { flex-wrap: wrap; }
.proj-actions { width: 100%; margin-top: 4px; }
.proj-panel { padding-left: 14px; }
}
/* Yerin — classic red (Sage of the Endless Sword) */
:root { --yerin: #d23b3b; }
.sb-dot.yerin { background: var(--yerin); box-shadow: 0 0 6px var(--yerin); }
.sentinel-chat { display: flex; flex-direction: column; height: 70vh; border: 1px solid var(--border); border-radius: 6px; background: var(--panel); overflow: hidden; }
.sentinel-chat .sentinel-log { flex: 1; overflow-y: auto; padding: 14px; }
.yerin-view .view-h1 { color: var(--yerin); }
.yerin-view .view-sub { color: var(--yerin); opacity: .85; font-style: italic; }
.yerin-view .sentinel-chat { border-color: var(--yerin); box-shadow: inset 0 2px 0 rgba(210, 59, 59, .25); }
/* modal */
.modal-backdrop { position: fixed; inset: 0; background: rgba(0,0,0,0.6); display: flex; align-items: center; justify-content: center; z-index: 100; }
.modal {