Relationship: A ShruggieTech project
Use the exact delivered masters described on the Logo system sheet. Formal colors and their measured uses are on the Color sheet. Display Space Grotesk, body Geist, and mono Geist Mono are the declared type families.
Where each asset belongs: The Asset catalog lists verified marks, lockups, icons, and platform deliveries by intended surface and size.
Keep delivered artwork geometry unchanged. The Usage limits sheet lists every source rule.
Do not substitute the rejected LC monogram or W placeholder packaging icon.
Mark: The calm orbit places a centered disc inside two open bands. The open shape suggests an owner-controlled space with room for different companions. A thicker Reduced master keeps the same center and opening clear at small icon sizes.
Color: Graphite provides a quiet desktop canvas and indigo carries the product identity. Use the accessible darker indigo on light surfaces. Functional interface cues are measured separately and include text, shape, or control-state cues.
The calm orbit places a centered disc inside two open bands. The open shape suggests an owner-controlled space with room for different companions. A thicker Reduced master keeps the same center and opening clear at small icon sizes. Mark means symbol; wide and stacked lockups are separate. Clear means transparent; light and dark name the viewing surface. See Asset Language in the main manual.
One clear-space unit on every side: 48 units on the 512 × 512 canvas, 11.7 percent of artwork width. No text, border, icon or crop enters that band.
| mark | 24 px |
| horizontal | 160 px |
| stacked | 128 px |
| wordmark | 120 px |
Below 32 px the reduced master takes over. It ships as its own file. Do not rasterize the full mark down at runtime.
| Lockup | Mark height | Gap | Alignment |
|---|---|---|---|
| Horizontal | 160 units | 34 units | Optical center |
| Stacked | 1.80C | 0.45C | Centered on wordmark ink width |
The horizontal row records its approved master composition. C is the outlined wordmark cap height used by the stacked lockup. X is the clear-space unit declared above. Keep one X clear around every master and never resize the mark and wordmark independently.
These are the exact source usage rules for this identity. The preceding Logo system sheet gives measured sizes and clear space.
Local Companion is the workspace identity. A companion portrait or conversation belongs to its own context and should not become the default product mark or a public sample without separate approval.
Delivered horizontal lockup
Delivered reduced mark
Graphite provides a quiet desktop canvas and indigo carries the product identity. Use the accessible darker indigo on light surfaces. Functional interface cues are measured separately and include text, shape, or control-state cues.
The bright accent #8B9CFF measures 2.38:1 on the light reading surface and is never text there. The light token block substitutes #4B5CC0 at 5.51:1 automatically. The legal foreground on an accent fill is #000000 at 8.3:1. Every fill token in brand.json carries its measured foreground.
| Color | Means |
|---|---|
| Accent | Primary value, selection, links, focus |
| Emphasis | Needs attention, threshold exceeded |
| Destructive | Failed or timed out. Always with text. |
The emphasis and failure colors may not be reliably separable under deuteranopia. That is acceptable only because state is never carried by color alone: every state ships a written label.
Chart colors serve data visualization. Brand applications use the identity accent and the neutral surfaces. Each chart color is derived from the identity accent and measured against its surface so every entry clears 4.5:1.
Lightness is calculated separately for dark and light surfaces. Data charts also use labels or shapes; hue alone does not carry meaning.
| Series | Dark | Light |
|---|---|---|
| chart-1 | #7F8FF1 | #4B5CC0 |
| chart-2 | #00A8D1 | #00738D |
| chart-3 | #C379C3 | #8F4595 |
| chart-4 | #01B28D | #007A5D |
| chart-5 | #DE7377 | #AA3C4A |
Series order is fixed: chart-1 is always the primary measurement. Never reorder to make a chart look better. Never introduce a sixth color; past five series, switch to a form that does not depend on hue. A series never uses the semantic emphasis or failure colors, because those carry state.
Local Companion uses three approved type families. Space Grotesk handles display text, Geist handles interface and reading text, and Geist Mono is reserved for literal command blocks.
| Function | Typeface | Weights |
|---|---|---|
| Display, headings | Space Grotesk | 500, 700 |
| Body, interface | Geist | 400, 500 |
| Literal code blocks | Geist Mono | 400 |
| Axis | Value |
|---|---|
| Radii | 6 / 8 / 12 / 16 / pill |
| Spacing | 4 8 12 16 24 32 48 64 96 120 |
| Focus | 2px ring at 2px offset |
Only the listed local faces are approved. Any other weight makes the renderer synthesize a faux bold, which prints badly and forces outlined glyphs into exported PDFs. Courier Prime is used only for literal command blocks.
| Token | Size | Tracking |
|---|---|---|
| display-xl | 72 | -0.030em |
| display-lg | 56 | -0.025em |
| display-md | 40 | -0.020em |
| display-sm | 28 | -0.015em |
| display-xs | 20 | -0.010em |
| Token | Size | Leading |
|---|---|---|
| body-lg | 18.4 | 1.6 |
| body-md | 16 | 1.7 |
| body-sm | 14 | 1.6 |
| body-xs | 12 | 1.5 |
| eyebrow | 12 | 0.12em caps |
Local Companion declares ShruggieTech parentage. Palette sharing and typography are separate explicit choices. The approved mark and colors remain this brand's own source decisions.
The approved mono family, uppercase, positive tracking. Visually subordinate and outside the logo clear space. Never a combined parent-product lockup.
The catalog lists installable theme and component items. For offline fonts, copy nextjs/fonts.ts and fonts/ together from the kit.
| Path | Contents | n |
|---|---|---|
| logos/svg/ | Vector masters, every lockup and colorway | 22 |
| icons/ | Web, Android, Apple, macOS, and Windows application suites | 124 |
| favicons/ | Compatibility aliases for the authoritative web suite | 20 |
| fonts/woff2/ | Web faces plus OFL licences | 5 |
| tokens/ | CSS and JSON with measured contrast | 6 |
| Path | Contents | n |
|---|---|---|
| nextjs/ | globals.css, shadcn registry, fonts, provider | 9 |
| enforcement/ | AGENTS.md, ESLint, stylelint | 21 |
| qc/ | Contact sheets. Proof somebody looked. | 162 |
| guidelines/ | The system rendered from itself | 2 |
| Decision | Declaration |
|---|---|
| Ownership | ShruggieTech owned |
| Parent | ShruggieTech |
| Palette | Brand-specific emphasis and action |
| Typography | House families |
Colors for actions and states are distinct from formal identity artwork. A shared HEX is a deliberate choice; meaning also uses words, icons, outlines, or state attributes.
| Color | HEX | Source | Use |
|---|---|---|---|
| Companion indigo | #8B9CFF | brand.accent.bright | Primary mark and identity accent |
| Graphite mark ink | #F4F6FB | brand.logo.role_colors.color.ink | Full mark and wordmark on dark surfaces |
| Application | Colors and artwork | Use |
|---|---|---|
| Local Companion orbit | primary, ink in logo.full | Split orbit and centered core on graphite |
Correct: use Companion indigo (#8B9CFF) in approved identity work; pair the Warning cue (#F2BD68) with warning text and icon. Misuse: a lone identity swatch as the only warning signal.
| Cue | Purpose | Dark and light pairing | Additional cue |
|---|---|---|---|
| Action | Primary interactive action | Dark: #4B5CC0, #FFFFFF text 5.85:1; surface 3.37:1 Light: #4B5CC0, #FFFFFF text 5.85:1; surface 5.51:1 Source: semantic.action / semantic.action | A descriptive button or link label |
| Warning | Attention or recoverable risk | Dark: #F2BD68, #000000 text 12.25:1; surface 11.49:1 Light: #8A5600, #FFFFFF text 6.15:1; surface 5.80:1 Source: brand.functional_colors.warning.dark / brand.functional_colors.warning.light | Warning text and icon |
| Error | Failure or destructive action | Dark: #FF7B91, #000000 text 8.49:1; surface 7.96:1 Light: #B32D4A, #FFFFFF text 6.19:1; surface 5.83:1 Source: brand.functional_colors.error.dark / brand.functional_colors.error.light | Error text and icon |
| Success | Completed operation | Dark: #63D6AD, #000000 text 11.75:1; surface 11.01:1 Light: #08704A, #FFFFFF text 6.13:1; surface 5.77:1 Source: brand.functional_colors.success.dark / brand.functional_colors.success.light | Success text and icon |
| Information | Neutral information or help | Dark: #70B8FF, #000000 text 9.99:1; surface 9.36:1 Light: #1B5EAB, #FFFFFF text 6.49:1; surface 6.12:1 Source: brand.functional_colors.information.dark / brand.functional_colors.information.light | Information label and icon |
| Focus | Keyboard focus ring | Dark: #8B9CFF, #000000 text 8.30:1; surface 7.78:1 Light: #4B5CC0, #FFFFFF text 5.85:1; surface 5.51:1 Source: brand.accent.bright / brand.accent.accessible | Visible outline and keyboard focus order |
| Selection | Selected control or item | Dark: #8B9CFF, #000000 text 8.30:1; surface 7.78:1 Light: #4B5CC0, #FFFFFF text 5.85:1; surface 5.51:1 Source: brand.accent.bright / brand.accent.accessible | Selected label or checked state |
| Disabled | Unavailable control | Dark: #A8B5FF, #000000 text 10.72:1; surface 10.05:1 Light: #A8B5FF, #000000 text 10.72:1; surface 1.85:1 Source: brand.accent.dim / brand.accent.dim | Disabled attribute and text |