diff --git a/docker/frontend/src/App.tsx b/docker/frontend/src/App.tsx
index 5d379b9..876a6c3 100644
--- a/docker/frontend/src/App.tsx
+++ b/docker/frontend/src/App.tsx
@@ -3377,9 +3377,9 @@ export function Workspace() {
wbFoot: (
- COLOR CHROME
+ COLOR CHROME
({
key: `cx-${opt.v}`,
label: opt.d,
@@ -3392,9 +3392,9 @@ export function Workspace() {
/>
-
CHROME BLUE
+
CHROME BLUE
({
key: `cxb-${opt.v}`,
label: opt.d,
diff --git a/docker/frontend/src/styles/app.css b/docker/frontend/src/styles/app.css
index 7964fb7..be27126 100644
--- a/docker/frontend/src/styles/app.css
+++ b/docker/frontend/src/styles/app.css
@@ -141,6 +141,30 @@
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 6px;
}
+.chip-row.grid-3 {
+ display: grid;
+ grid-template-columns: repeat(3, minmax(0, 1fr));
+ gap: 4px;
+ width: 100%;
+}
+.chip-row.grid-3 .chip {
+ justify-content: center;
+ text-align: center;
+ padding: 4px 2px;
+ font-size: 10px;
+ font-weight: 700;
+ white-space: nowrap;
+}
+.chip-label {
+ font-weight: 700;
+ letter-spacing: 0.02em;
+}
+.dev-box-title {
+ font-weight: 700;
+ color: var(--accent, #f59e0b);
+ letter-spacing: 0.05em;
+ font-size: 11px;
+}
.chip-row.grid .chip {
justify-content: center; text-align: center;
/* Two of these share the column's width, so each is its own small card: the
diff --git a/docker/frontend/src/ui/ChipColumn.tsx b/docker/frontend/src/ui/ChipColumn.tsx
index d6d3966..ddebe51 100644
--- a/docker/frontend/src/ui/ChipColumn.tsx
+++ b/docker/frontend/src/ui/ChipColumn.tsx
@@ -63,9 +63,9 @@ export interface SliderDef {
// `grid` lays the row out as the table a set of same-kind values is read as
// (WB's presets, LIGHT's two Color Chromes) instead of the wrapping strip the
// option rows use.
-export function ChipRow({ chips, grid }: { chips: ChipDef[]; grid?: boolean }) {
+export function ChipRow({ chips, grid, grid3 }: { chips: ChipDef[]; grid?: boolean; grid3?: boolean }) {
return (
-
+
{chips.map((chip) =>
chip.divider ? (
diff --git a/docker/recipescam-images.tar.gz.sha256 b/docker/recipescam-images.tar.gz.sha256
index 98725c9..f25ab9a 100644
--- a/docker/recipescam-images.tar.gz.sha256
+++ b/docker/recipescam-images.tar.gz.sha256
@@ -1 +1 @@
-f1938604bb5b7cdb56309e40d825ed54853d12e115457818754724e6d2c689a0 recipescam-images.tar.gz
+352c1fa97b2ce61d7a212342579e1ebb28f234b52bf781aaaf97c78799463d27 recipescam-images.tar.gz