diff --git a/frontend/packages/shared/src/base.css b/frontend/packages/shared/src/base.css index 47c908da..ff68d58c 100644 --- a/frontend/packages/shared/src/base.css +++ b/frontend/packages/shared/src/base.css @@ -6,6 +6,16 @@ top of this and must NOT redeclare the colour variables; `theme.css` is the one source of truth. */ body { + /* The default UA stylesheet gives `body` an 8px margin — every page + using this shared base had it as a `--bg`-coloured strip visible + around the whole viewport edge, e.g. left/right of any full-bleed + header (swarm-ui's `.shell-header`, `--bg-elev`, doesn't actually + reach the real viewport edge without this). Reported live as + "small bg colored gap left and right of the header" (reported live + by mara). + Zeroed here since every page linking this file wants full-bleed + chrome, not a browser default nobody asked for. */ + margin: 0; background: var(--bg); color: var(--fg); font-family: "JetBrains Mono", "Fira Code", "Cascadia Code", "Source Code Pro", monospace; diff --git a/frontend/packages/swarm-ui/src/shell/LinksMenu.tsx b/frontend/packages/swarm-ui/src/shell/LinksMenu.tsx index 725a0d4d..10180908 100644 --- a/frontend/packages/swarm-ui/src/shell/LinksMenu.tsx +++ b/frontend/packages/swarm-ui/src/shell/LinksMenu.tsx @@ -62,7 +62,30 @@ export function LinksMenu() { aria-label="swarm services" onClick={() => setOpen((v) => !v)} > - 🔗 + {/* Feather/lucide "link" glyph, not the 🔗 emoji this replaced — + reported live by mara: "links and settings icon styles + different / all different sizes". An emoji glyph is rendered + by the + OS/browser's colour-emoji font at that font's own fixed + metrics, ignoring `font-size`/`color` — it can never match a + neighbouring text-style icon (SettingsMenu's `⚙`) in size or + weight, on any platform. Same inline-SVG shape as + SettingsMenu's gear now uses, so both trigger buttons finally + share one rendering path (stroke, viewBox, size). */} + {open ? (