From 03397b7b80f92dfbfeba8c57fa4622d97dedc82b Mon Sep 17 00:00:00 2001 From: Alex Godoroja Date: Wed, 24 Jun 2026 14:30:14 -0700 Subject: [PATCH 1/2] app-store: add Miren card + fix app-panel inconsistencies - add the Miren card (io.pilot.miren) with the Miren burst logo, 'by Miren', 15 methods / 4.9MB / devops, matching the other cards. - remove the .zoo-card-featured accent border on AEGIS (it painted a stray yellow line down the card's grid edge). - Ideon: its 2nd stat was 'Free / Pricing' while every other card shows 'Download (MB)'; switch to the real download (5KB) for consistency. - Slipstream: add the missing 'by Pilot Protocol' line every other card has. Built clean (190 pages); all 8 logos load; verified by screenshot. --- public/brand/apps/miren.png | Bin 0 -> 7038 bytes src/pages/app-store.astro | 31 +++++++++++++++++++++++++++---- 2 files changed, 27 insertions(+), 4 deletions(-) create mode 100644 public/brand/apps/miren.png diff --git a/public/brand/apps/miren.png b/public/brand/apps/miren.png new file mode 100644 index 0000000000000000000000000000000000000000..8f3af1b2061943e4e279a60483e46b0efad0e501 GIT binary patch literal 7038 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
- @@ -413,8 +438,6 @@ try { /* AEGIS logo: black SVG paths, invert on dark theme */ .zoo-logo-aegis { filter: invert(1); } [data-theme="light"] .zoo-logo-aegis { filter: none; } - /* Featured card: subtle accent border */ - .zoo-card-featured { border-color: var(--accent); } .zoo-by { font-size: 13px; color: var(--ink-dim); From 1b7238bc1459a6940b469cb5491d6d42ef536979 Mon Sep 17 00:00:00 2001 From: Alex Godoroja Date: Wed, 24 Jun 2026 14:32:14 -0700 Subject: [PATCH 2/2] app-store: accent the card divider on hover (yellow line, interactive) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Instead of a permanent featured border, the accent line now appears on hover for every card (border-color → accent, smooth transition). --- src/pages/app-store.astro | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/pages/app-store.astro b/src/pages/app-store.astro index cce4f4d..5e8f50c 100644 --- a/src/pages/app-store.astro +++ b/src/pages/app-store.astro @@ -417,7 +417,9 @@ try { description, version+license badge moved to a bottom row. */ /* min-width:0 lets the card (a grid item) shrink to its column on mobile instead of being stretched to the install command's intrinsic width. */ - .zoo-card { cursor: default; min-width: 0; } + .zoo-card { cursor: default; min-width: 0; transition: background 0.15s ease, border-color 0.15s ease; } + /* Accent the card's divider on hover (the yellow line, now interactive). */ + .zoo-card:hover { border-color: var(--accent); } .zoo-card .zoo-top { align-items: center; } .zoo-card .zoo-id, .zoo-card .zoo-desc code { overflow-wrap: anywhere; }