Wave-5 reskin batch 1: the token layer — palette, type ladder, radii ladder, fonts
- Palette per the owner's hexes: background #141414, raised #1C1C1C, edges #434343, ink tokens, destructs unchanged; :root and .dark carry identical values (the app is always dark). - Type ladder declared once (11px base, each size carries its own line-height); radii ladder 4/8/12/16; spacing rhythm = Tailwind's 4px scale. All documented in the globals.css header. - Fonts: JetBrains Mono (chrome) + Source Sans 3 (prose) via next/font/google in app/layout.tsx; CMU Serif bold bundled locally (public/fonts/cmunbx.ttf) behind the lh-cmu @font-face. - Prose/emphasis tokens: --lh-ink-strong (rust bold), --lh-ink-italic (blue italic), .lh-prose wrapper — ready for the future settings UI. - l.h-ink-strong/italic defaults sampled from the reference mockup.
This commit is contained in:
+7
-1
@@ -1,9 +1,15 @@
|
||||
import type { Metadata } from "next";
|
||||
import { JetBrains_Mono, Source_Sans_3 } from "next/font/google";
|
||||
import "katex/dist/katex.min.css";
|
||||
import "./globals.css";
|
||||
import { AppShell, SidebarProvider } from "@/components/sidebar";
|
||||
import { ActivityDock, ActivityProvider } from "@/components/activity-dock";
|
||||
|
||||
// Chrome = JetBrains Mono, teaching prose = Source Sans 3, titles = CMU
|
||||
// Serif (the bundled lh-cmu @font-face in globals.css — no CDN).
|
||||
const ui = JetBrains_Mono({ subsets: ["latin"], variable: "--font-jetbrains" });
|
||||
const prose = Source_Sans_3({ subsets: ["latin"], variable: "--font-sans3" });
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: "Learning Harness",
|
||||
description: "A teacher agent with a memory — sessions, quizzes, and a knowledge graph of what you know.",
|
||||
@@ -12,7 +18,7 @@ export const metadata: Metadata = {
|
||||
export default function RootLayout({ children }: { children: React.ReactNode }) {
|
||||
return (
|
||||
<html lang="en" className="dark">
|
||||
<body className="min-h-dvh antialiased">
|
||||
<body className={`${ui.variable} ${prose.variable} min-h-dvh antialiased`}>
|
||||
<SidebarProvider>
|
||||
<ActivityProvider>
|
||||
<AppShell>{children}</AppShell>
|
||||
|
||||
Reference in New Issue
Block a user