chore(v0.6): checkpoint foundation — Amber theme, P1 types, P3 config, design docs
Prior-session prep for the v0.6 Project Manager, checkpointed on the v0.6-projects branch as a clean base for the parallel builders: - P1 (src/types.ts): ProjectInfo + ProjectSessionRef contracts; Config gains projectRoots/projectScanDepth/projectScanTtlMs/projectDirtyCheck. - P3 (src/config.ts): parseBool + parseProjectRoots helpers; parse the 4 PROJECT_* env vars with defaults ([homeDir]/4/10000/true). - UI: public/style.css indigo -> Amber (#e3a64a) accent theme. - Docs: FEATURE_PROJECT_MANAGER.md (1:N session design), THEME.md, docs/mockups/ (final-amber.png is the locked visual). Typecheck (backend + web) green. No behavior change to runtime code yet; P2/P4/P5/P6 implement the feature on top of this.
This commit is contained in:
@@ -1,22 +1,23 @@
|
||||
/* Web Terminal — modern dark UI */
|
||||
|
||||
:root {
|
||||
/* palette (design tokens) */
|
||||
--bg: #0e0f13; /* terminal / deepest surface */
|
||||
--surface-1: #15161c; /* tab bar, key bar */
|
||||
--surface-2: #1c1e26; /* tabs, buttons, cards */
|
||||
--surface-3: #252834; /* hover / active */
|
||||
/* palette (design tokens) — Amber 琥珀金 theme (warm-neutral base + gold accent) */
|
||||
--bg: #100f0d; /* terminal / deepest surface — warm near-neutral */
|
||||
--surface-1: #181613; /* tab bar, key bar */
|
||||
--surface-2: #1f1c17; /* tabs, buttons, cards */
|
||||
--surface-3: #2a2620; /* hover / active */
|
||||
--border: rgba(255, 255, 255, 0.07);
|
||||
--border-strong: rgba(255, 255, 255, 0.13);
|
||||
--text: #e7e8ec;
|
||||
--text-dim: #9aa0ad;
|
||||
--text-faint: #6b7080;
|
||||
--accent: #7c8cff; /* indigo */
|
||||
--accent-2: #9d7cff;
|
||||
--accent-soft: rgba(124, 140, 255, 0.16);
|
||||
--green: #46d07f;
|
||||
--amber: #f5b14c;
|
||||
--red: #ff6b6b;
|
||||
--border-strong: rgba(255, 255, 255, 0.14);
|
||||
--text: #ece9e3;
|
||||
--text-dim: #a8a299;
|
||||
--text-faint: #6f6a61;
|
||||
--accent: #e3a64a; /* amber gold */
|
||||
--accent-2: #c9892f; /* deeper gold (gradients / hover) */
|
||||
--accent-soft: rgba(227, 166, 74, 0.15);
|
||||
--on-accent: #1a1305; /* text/icon color on a gold accent background (contrast) */
|
||||
--green: #46d07f; /* connection-status: connected */
|
||||
--amber: #f5b14c; /* connection-status: connecting */
|
||||
--red: #ff6b6b; /* connection-status: disconnected / error */
|
||||
--shadow: 0 10px 40px rgba(0, 0, 0, 0.55);
|
||||
--radius: 9px;
|
||||
--radius-lg: 14px;
|
||||
@@ -306,16 +307,16 @@ body {
|
||||
}
|
||||
#keybar button.keybar-btn-primary {
|
||||
background: var(--accent-soft);
|
||||
color: #cdd4ff;
|
||||
border-color: rgba(124, 140, 255, 0.4);
|
||||
color: #f0d49a;
|
||||
border-color: rgba(227, 166, 74, 0.4);
|
||||
font-weight: 600;
|
||||
min-width: 54px;
|
||||
}
|
||||
#keybar button.keybar-btn-primary:hover {
|
||||
background: rgba(124, 140, 255, 0.26);
|
||||
background: rgba(227, 166, 74, 0.26);
|
||||
}
|
||||
#keybar button.keybar-btn-primary .kb-cap {
|
||||
color: rgba(205, 212, 255, 0.7);
|
||||
color: rgba(240, 212, 154, 0.7);
|
||||
}
|
||||
|
||||
/* ── Shared: overlays, cards, inputs, buttons ────────────────────── */
|
||||
@@ -467,7 +468,7 @@ body {
|
||||
}
|
||||
.settings-opt.active {
|
||||
background: var(--accent);
|
||||
color: #fff;
|
||||
color: var(--on-accent);
|
||||
border-color: var(--accent);
|
||||
}
|
||||
.settings-size {
|
||||
@@ -612,7 +613,7 @@ body {
|
||||
.hist-resume {
|
||||
flex: none;
|
||||
background: var(--accent);
|
||||
color: #fff;
|
||||
color: var(--on-accent);
|
||||
border: none;
|
||||
border-radius: 8px;
|
||||
padding: 7px 15px;
|
||||
@@ -692,7 +693,7 @@ body {
|
||||
}
|
||||
.launcher-new {
|
||||
background: var(--accent);
|
||||
color: #fff;
|
||||
color: var(--on-accent);
|
||||
border: none;
|
||||
border-radius: 8px;
|
||||
padding: 9px 16px;
|
||||
@@ -844,7 +845,7 @@ body {
|
||||
}
|
||||
.mg-open {
|
||||
background: var(--accent);
|
||||
color: #fff;
|
||||
color: var(--on-accent);
|
||||
border-radius: 8px;
|
||||
padding: 7px 13px;
|
||||
text-decoration: none;
|
||||
|
||||
Reference in New Issue
Block a user