Skip to content

Commit b42c082

Browse files
committed
feat: shared logo rotation, palette tuning, accent unification, favicon
PlatonicLogo: - Shared rotation singleton (globalThis-persisted for HMR) syncs all instances: rotation, shape, prefs, drag state - Azimuth-based face coloring with even-spaced palette redistribution per solid size (smooth gradient at 20, max spread at 4) - Faces use theme.palette (auto light/dark) instead of hardcoded logoPalette - qNorm separated from qMul, rAF string-cache skip, prefsLoaded in subscribe - CustomEvent replaced with direct ref-based function call Palette: - Light palette regenerated from red seed oklch(0.72 0.27 30), separate+harmonize pipeline, ΔE 8.58 - Dark palette harmonized via qlab, L-0.03 darkened, ΔE 8.69 - Dark mode code neutrals cooled to hue 270 Accent & links: - Both modes derive accent from palette P[13] with L-shifted variants on same hue - Links: accent at rest, accentDark on hover, matching underline color - Sidebar active state uses accent (not accentLight), accentDark on hover - NextPage title: accent color with solid underline on hover Favicon: new SVG with dynamic 3D angle, 10 palette-colored icosahedron faces
1 parent c213861 commit b42c082

File tree

9 files changed

+386
-326
lines changed

9 files changed

+386
-326
lines changed

app/layout.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ const themeScript = `
8585
d.dataset.theme = 'dark';
8686
}
8787
} catch (e) {}
88-
d.setAttribute('data-hero-logo-visible', '');
88+
if (location.pathname === '/') d.setAttribute('data-hero-logo-visible', '');
8989
})();
9090
`;
9191

components/HomepageHeroEditor.tsx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,6 @@ const EditorColumn = styled.div`
182182

183183
const HeroRight = styled.div`
184184
border: 1px solid ${theme.color.border};
185-
box-shadow: 0 1px 3px ${theme.color.shadow};
186185
text-align: left;
187186
width: 100%;
188187
position: relative;

components/Link.tsx

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,11 @@ export type LinkVariant = 'inline' | 'heading' | 'block' | 'unstyled';
1414

1515
// Inline: colored text with dotted underline that turns solid on hover
1616
export const inlineStyle = css`
17-
color: ${theme.color.accentLight};
17+
color: ${theme.color.accent};
18+
font-weight: ${theme.fontWeight.medium};
1819
cursor: pointer;
1920
text-decoration: underline dotted;
20-
text-decoration-color: ${theme.color.linkUnderline};
21+
text-decoration-color: ${theme.color.accent};
2122
text-underline-offset: 3px;
2223
transition:
2324
color ${theme.duration.fast},
@@ -26,9 +27,9 @@ export const inlineStyle = css`
2627
2728
&:hover,
2829
&:focus-visible {
29-
color: ${theme.color.accentLighter};
30+
color: ${theme.color.accentDark};
3031
text-decoration-style: solid;
31-
text-decoration-color: ${theme.color.linkUnderlineHover};
32+
text-decoration-color: ${theme.color.accentDark};
3233
}
3334
`;
3435

0 commit comments

Comments
 (0)