diff --git a/plugins/voyage/playground/voyage-playground.html b/plugins/voyage/playground/voyage-playground.html index 2255168..f120ce8 100644 --- a/plugins/voyage/playground/voyage-playground.html +++ b/plugins/voyage/playground/voyage-playground.html @@ -18,38 +18,38 @@ main { max-width: 1280px; margin: 0 auto; - padding: var(--space-6, 2rem); + padding: var(--space-6); } - .voyage-skeleton-msg { padding: var(--space-6, 2rem); } + .voyage-skeleton-msg { padding: var(--space-6); } /* Render-pipeline layout (left 70% viewport / right 30% sidebar reserved for Step 10). The viewport panel mounts the rendered markdown. */ .voyage-layout { display: grid; grid-template-columns: minmax(0, 1fr); - gap: var(--space-4, 1rem); + gap: var(--space-4); align-items: start; } .voyage-viewport { min-height: 60vh; - padding: var(--space-4, 1rem); - background: var(--color-bg-soft, #fafbfc); - border: 1px solid var(--color-border, #e3e6eb); - border-radius: var(--radius-md, 6px); + padding: var(--space-4); + background: var(--color-bg-soft); + border: 1px solid var(--color-border-subtle); + border-radius: var(--radius-md); overflow: auto; } .voyage-viewport pre { overflow: auto; - padding: var(--space-3, 0.75rem); - background: var(--color-bg-code, #f3f5f7); - border-radius: var(--radius-sm, 4px); + padding: var(--space-3); + background: var(--color-bg-soft); + border-radius: var(--radius-sm); } .voyage-viewport details { - margin: var(--space-3, 0.75rem) 0; - padding: var(--space-2, 0.5rem) var(--space-3, 0.75rem); - background: var(--color-bg-soft, #fafbfc); - border: 1px solid var(--color-border, #e3e6eb); - border-radius: var(--radius-sm, 4px); + margin: var(--space-3) 0; + padding: var(--space-2) var(--space-3); + background: var(--color-bg-soft); + border: 1px solid var(--color-border-subtle); + border-radius: var(--radius-sm); } .voyage-viewport details > summary { cursor: pointer; @@ -60,41 +60,41 @@ .paste-import-row { display: flex; flex-direction: column; - gap: var(--space-2, 0.5rem); - margin-bottom: var(--space-4, 1rem); + gap: var(--space-2); + margin-bottom: var(--space-4); } .paste-import-row textarea { width: 100%; min-height: 8rem; - padding: var(--space-3, 0.75rem); - font-family: var(--font-mono, "JetBrains Mono", monospace); + padding: var(--space-3); + font-family: var(--font-family-mono); font-size: 0.875rem; - border: 1px solid var(--color-border, #e3e6eb); - border-radius: var(--radius-sm, 4px); + border: 1px solid var(--color-border-subtle); + border-radius: var(--radius-sm); resize: vertical; } .paste-import-row__actions { display: flex; - gap: var(--space-2, 0.5rem); + gap: var(--space-2); flex-wrap: wrap; } .paste-import-row__actions button { - padding: var(--space-2, 0.5rem) var(--space-4, 1rem); - border: 1px solid var(--color-border, #e3e6eb); - background: var(--color-bg, #fff); - border-radius: var(--radius-sm, 4px); + padding: var(--space-2) var(--space-4); + border: 1px solid var(--color-border-subtle); + background: var(--color-surface); + border-radius: var(--radius-sm); cursor: pointer; font: inherit; } .paste-import-row__actions button:hover { - background: var(--color-bg-hover, #f0f2f5); + background: var(--color-bg-soft); } /* Annotation visual markers — extended in Steps 9-11 */ .lint-annotation { - border-left: 3px solid var(--color-accent, #4a86e8); - padding-left: var(--space-2, 0.5rem); - margin-left: calc(var(--space-2, 0.5rem) * -1); + border-left: 3px solid var(--color-scope-voyage); + padding-left: var(--space-2); + margin-left: calc(var(--space-2) * -1); } /* Step 9 — annotation creation gestures + form modal */ @@ -103,10 +103,10 @@ .voyage-adder-popup { position: fixed; z-index: 1000; - padding: var(--space-2, 0.5rem) var(--space-3, 0.75rem); - background: var(--color-bg, #fff); - border: 1px solid var(--color-border, #e3e6eb); - border-radius: var(--radius-md, 6px); + padding: var(--space-2) var(--space-3); + background: var(--color-surface); + border: 1px solid var(--color-border-subtle); + border-radius: var(--radius-md); box-shadow: 0 4px 12px rgba(0,0,0,0.1); cursor: pointer; font-size: 0.875rem; @@ -138,15 +138,15 @@ .voyage-pencil-btn svg { width: 16px; height: 16px; - fill: var(--color-text-muted, #5e6470); + fill: var(--color-text-tertiary); } /* Gesture 3 — page-level note button (placeholder; sidebar is Step 10) */ .voyage-page-note-btn { - padding: var(--space-2, 0.5rem) var(--space-4, 1rem); - border: 1px dashed var(--color-border, #e3e6eb); - background: var(--color-bg, #fff); - border-radius: var(--radius-sm, 4px); + padding: var(--space-2) var(--space-4); + border: 1px dashed var(--color-border-subtle); + background: var(--color-surface); + border-radius: var(--radius-sm); cursor: pointer; font: inherit; } @@ -166,78 +166,78 @@ width: 400px; max-width: 90vw; max-height: 90vh; - margin: var(--space-6, 2rem); - background: var(--color-bg, #fff); - border-radius: var(--radius-md, 6px); + margin: var(--space-6); + background: var(--color-surface); + border-radius: var(--radius-md); box-shadow: 0 8px 32px rgba(0,0,0,0.2); display: flex; flex-direction: column; } .voyage-modal__header { - padding: var(--space-4, 1rem); - border-bottom: 1px solid var(--color-border, #e3e6eb); + padding: var(--space-4); + border-bottom: 1px solid var(--color-border-subtle); font-weight: 600; } .voyage-modal__body { - padding: var(--space-4, 1rem); + padding: var(--space-4); overflow: auto; flex: 1; } .voyage-modal__snippet { - padding: var(--space-2, 0.5rem) var(--space-3, 0.75rem); - background: var(--color-bg-soft, #fafbfc); - border-left: 3px solid var(--color-accent, #4a86e8); + padding: var(--space-2) var(--space-3); + background: var(--color-bg-soft); + border-left: 3px solid var(--color-scope-voyage); font-style: italic; font-size: 0.875rem; - margin-bottom: var(--space-3, 0.75rem); + margin-bottom: var(--space-3); } .voyage-modal__intents { display: flex; - gap: var(--space-2, 0.5rem); + gap: var(--space-2); flex-wrap: wrap; - margin-bottom: var(--space-3, 0.75rem); + margin-bottom: var(--space-3); } .voyage-modal__intent-btn { - padding: var(--space-2, 0.5rem) var(--space-3, 0.75rem); - border: 1px solid var(--color-border, #e3e6eb); - background: var(--color-bg, #fff); - border-radius: var(--radius-sm, 4px); + padding: var(--space-2) var(--space-3); + border: 1px solid var(--color-border-subtle); + background: var(--color-surface); + border-radius: var(--radius-sm); cursor: pointer; font: inherit; } .voyage-modal__intent-btn[aria-pressed="true"] { - background: var(--color-accent, #4a86e8); + background: var(--color-scope-voyage); color: #fff; - border-color: var(--color-accent, #4a86e8); + border-color: var(--color-scope-voyage); } .voyage-modal textarea { width: 100%; min-height: 6rem; - padding: var(--space-3, 0.75rem); + padding: var(--space-3); font: inherit; - border: 1px solid var(--color-border, #e3e6eb); - border-radius: var(--radius-sm, 4px); + border: 1px solid var(--color-border-subtle); + border-radius: var(--radius-sm); resize: vertical; } .voyage-modal__footer { display: flex; - gap: var(--space-2, 0.5rem); - padding: var(--space-4, 1rem); - border-top: 1px solid var(--color-border, #e3e6eb); + gap: var(--space-2); + padding: var(--space-4); + border-top: 1px solid var(--color-border-subtle); justify-content: flex-end; } .voyage-modal__footer button { - padding: var(--space-2, 0.5rem) var(--space-4, 1rem); - border: 1px solid var(--color-border, #e3e6eb); - background: var(--color-bg, #fff); - border-radius: var(--radius-sm, 4px); + padding: var(--space-2) var(--space-4); + border: 1px solid var(--color-border-subtle); + background: var(--color-surface); + border-radius: var(--radius-sm); cursor: pointer; font: inherit; } .voyage-modal__footer button[type="submit"] { - background: var(--color-accent, #4a86e8); + background: var(--color-scope-voyage); color: #fff; - border-color: var(--color-accent, #4a86e8); + border-color: var(--color-scope-voyage); } /* Step 10 — sidebar + critique-card-list + tabs */ @@ -247,8 +247,8 @@ right: 0; bottom: 0; width: 320px; - background: var(--color-bg, #fff); - border-left: 1px solid var(--color-border, #e3e6eb); + background: var(--color-surface); + border-left: 1px solid var(--color-border-subtle); box-shadow: -2px 0 8px rgba(0,0,0,0.05); transform: translateX(0); transition: transform 200ms ease; @@ -265,12 +265,12 @@ top: 0; width: 40px; bottom: 0; - background: var(--color-bg-soft, #fafbfc); - border-right: 1px solid var(--color-border, #e3e6eb); + background: var(--color-bg-soft); + border-right: 1px solid var(--color-border-subtle); display: flex; align-items: flex-start; justify-content: center; - padding-top: var(--space-3, 0.75rem); + padding-top: var(--space-3); } .voyage-sidebar__panel { flex: 1; @@ -287,8 +287,8 @@ width: 32px; height: 32px; padding: 0; - border: 1px solid var(--color-border, #e3e6eb); - background: var(--color-bg, #fff); + border: 1px solid var(--color-border-subtle); + background: var(--color-surface); border-radius: 50%; cursor: pointer; font-size: 1rem; @@ -304,7 +304,7 @@ min-width: 18px; height: 18px; padding: 0 4px; - background: var(--color-accent, #4a86e8); + background: var(--color-scope-voyage); color: #fff; border-radius: 9px; font-size: 0.625rem; @@ -316,22 +316,22 @@ /* Tabs */ [role="tablist"].voyage-tabs { display: flex; - border-bottom: 1px solid var(--color-border, #e3e6eb); + border-bottom: 1px solid var(--color-border-subtle); } [role="tab"].voyage-tab { flex: 1; - padding: var(--space-3, 0.75rem); + padding: var(--space-3); border: none; background: transparent; cursor: pointer; font: inherit; font-size: 0.875rem; - color: var(--color-text-muted, #5e6470); + color: var(--color-text-tertiary); border-bottom: 2px solid transparent; } [role="tab"].voyage-tab[aria-selected="true"] { - color: var(--color-text, #1a1d23); - border-bottom-color: var(--color-accent, #4a86e8); + color: var(--color-text-primary); + border-bottom-color: var(--color-scope-voyage); font-weight: 600; } @@ -339,29 +339,29 @@ .voyage-findings { flex: 1; overflow: auto; - padding: var(--space-3, 0.75rem); + padding: var(--space-3); display: flex; flex-direction: column; - gap: var(--space-2, 0.5rem); + gap: var(--space-2); } .critique-card { - padding: var(--space-3, 0.75rem); - background: var(--color-bg, #fff); - border: 1px solid var(--color-border, #e3e6eb); - border-radius: var(--radius-sm, 4px); + padding: var(--space-3); + background: var(--color-surface); + border: 1px solid var(--color-border-subtle); + border-radius: var(--radius-sm); cursor: pointer; } - .critique-card:hover { background: var(--color-bg-hover, #f0f2f5); } + .critique-card:hover { background: var(--color-bg-soft); } .critique-card__header { display: flex; align-items: center; - gap: var(--space-2, 0.5rem); + gap: var(--space-2); font-size: 0.75rem; } .intent-badge { display: inline-block; padding: 2px 6px; - border-radius: var(--radius-sm, 4px); + border-radius: var(--radius-sm); color: #fff; font-size: 0.625rem; font-weight: 600; @@ -372,27 +372,27 @@ .intent-badge--question { background: #d8a23a; } .intent-badge--block { background: #c54545; } .critique-card__id { - font-family: var(--font-mono, "JetBrains Mono", monospace); - color: var(--color-text-muted, #5e6470); + font-family: var(--font-family-mono); + color: var(--color-text-tertiary); } .critique-card__snippet { - margin: var(--space-2, 0.5rem) 0; - padding: var(--space-2, 0.5rem); - background: var(--color-bg-soft, #fafbfc); - border-left: 2px solid var(--color-border, #e3e6eb); + margin: var(--space-2) 0; + padding: var(--space-2); + background: var(--color-bg-soft); + border-left: 2px solid var(--color-border-subtle); font-style: italic; font-size: 0.8125rem; } .critique-card__comment { font-size: 0.875rem; - color: var(--color-text, #1a1d23); + color: var(--color-text-primary); } .critique-card__status { - margin-top: var(--space-2, 0.5rem); + margin-top: var(--space-2); font-size: 0.75rem; - color: var(--color-text-muted, #5e6470); + color: var(--color-text-tertiary); } - .critique-card__status--exported { color: var(--color-success, #2c8a3e); } + .critique-card__status--exported { color: var(--color-severity-low); } .lint-annotation-glow { animation: voyageGlow 1s ease; @@ -410,42 +410,42 @@ /* Step 11 — export flow */ .voyage-export-bar { - padding: var(--space-3, 0.75rem); - border-top: 1px solid var(--color-border, #e3e6eb); + padding: var(--space-3); + border-top: 1px solid var(--color-border-subtle); display: flex; - gap: var(--space-2, 0.5rem); + gap: var(--space-2); } .voyage-export-btn { flex: 1; - padding: var(--space-2, 0.5rem) var(--space-3, 0.75rem); - background: var(--color-accent, #4a86e8); + padding: var(--space-2) var(--space-3); + background: var(--color-scope-voyage); color: #fff; - border: 1px solid var(--color-accent, #4a86e8); - border-radius: var(--radius-sm, 4px); + border: 1px solid var(--color-scope-voyage); + border-radius: var(--radius-sm); cursor: pointer; font: inherit; } .voyage-export-btn:disabled { - background: var(--color-bg-soft, #fafbfc); - color: var(--color-text-muted, #5e6470); - border-color: var(--color-border, #e3e6eb); + background: var(--color-bg-soft); + color: var(--color-text-tertiary); + border-color: var(--color-border-subtle); cursor: not-allowed; } .voyage-export-modal-content { - padding: var(--space-3, 0.75rem); + padding: var(--space-3); } .voyage-export-cmd { display: block; width: 100%; - padding: var(--space-3, 0.75rem); - background: var(--color-bg-soft, #fafbfc); - border: 1px solid var(--color-border, #e3e6eb); - border-radius: var(--radius-sm, 4px); - font-family: var(--font-mono, "JetBrains Mono", monospace); + padding: var(--space-3); + background: var(--color-bg-soft); + border: 1px solid var(--color-border-subtle); + border-radius: var(--radius-sm); + font-family: var(--font-family-mono); font-size: 0.8125rem; white-space: pre-wrap; word-break: break-all; - margin-bottom: var(--space-3, 0.75rem); + margin-bottom: var(--space-3); } @@ -617,7 +617,7 @@
Ny annotation
-
+