Norvale Editorial
A refined editorial design system anchored on warm parchment surfaces and dramatic thick-thin serif typography. The design transposes analog print quality into digital UI: cream fields, near-black ink, oversized italic display headings (Fraunces), and painterly full-bleed East Asian landscape imagery. Dusty sage teal is the sole chromatic accent, used sparingly. Numbered index labels, hanging quotation marks, and '+' spatial markers form a distinctive visual grammar lifted directly from the source.
norvaleeditorial.com
norvale
Unlock More
A story about direction, clarity, and the platform that slowly changed everything.
norvaleeditorial.com
norvale
Unlock More
A story about direction, clarity, and the platform that slowly changed everything.
Exports
Agent Prompt Surface
---
# Machine-readable tokens (the WHAT). The prose body gives the WHY + the rules.
colors:
roles_light:
background: "#EFE8D6"
foreground: "#141210"
card: "#E6DFC8"
card-foreground: "#141210"
popover: "#F2EBDA"
popover-foreground: "#141210"
primary: "#141210"
primary-foreground: "#EFE8D6"
secondary: "#D6CCA3"
secondary-foreground: "#3A3628"
muted: "#E0D9C4"
muted-foreground: "#5E5948"
accent: "#708E83"
accent-foreground: "#141210"
destructive: "#B83333"
destructive-foreground: "#FFFFFF"
border: "#C8C0A4"
input: "#E8E1CB"
ring: "#141210"
success: "#3E6655"
success-foreground: "#FFFFFF"
warning: "#BC8464"
warning-foreground: "#141210"
chart-1: "#BC8464"
chart-2: "#708E83"
chart-3: "#4C4A1C"
chart-4: "#8BA08B"
chart-5: "#5C442C"
palette:
- { name: "near-black", hex: "#101010", role: "surface-dark" }
- { name: "parchment", hex: "#efe8d6", role: "surface-light" }
- { name: "parchment-alt", hex: "#ece5d3", role: "surface-light-alt" }
- { name: "warm-tan", hex: "#d6cca3", role: "neutral" }
- { name: "light-muted-cream", hex: "#d4cba5", role: "neutral-muted" }
- { name: "terracotta", hex: "#bc8464", role: "accent-warm" }
- { name: "dark-olive", hex: "#645d20", role: "accent-dark" }
- { name: "light-vibrant-cream", hex: "#fbf4cd", role: "highlight" }
- { name: "muted-gold", hex: "#a49c64", role: "neutral-mid" }
- { name: "dark-muted-brown", hex: "#5c442c", role: "shadow-warm" }
- { name: "scored-olive", hex: "#4c4a1c", role: "accent-dark" }
- { name: "near-black-warm", hex: "#0d1313", role: "ink-dark" }
- { name: "sage-green", hex: "#8ba08b", role: "accent-nature" }
- { name: "dusty-teal", hex: "#708e83", role: "accent-primary" }
- { name: "warm-mid-grey", hex: "#7a7768", role: "neutral-mid" }
- { name: "surface-variant", hex: "#e7e3d1", role: "surface-light" }
- { name: "card-cream", hex: "#e6dfc8", role: "surface-card" }
- { name: "ink-near-black", hex: "#141210", role: "ink" }
- { name: "inverted-card-dark", hex: "#1a1a14", role: "surface-dark-card" }shadcn CSS Variables
/* Generated by Identity Forge design kits */
@import url("https://fonts.googleapis.com/css2?family=Fraunces:wght@400;500;600;700&family=Plus%20Jakarta%20Sans:wght@400;500;600;700&family=Space%20Mono:wght@400;700&display=swap");
:root {
--radius: 0.75rem;
--font-heading: 'Fraunces', serif;
--font-sans: 'Plus Jakarta Sans', sans-serif;
--font-mono: 'Space Mono', monospace;
--background: 43 44% 89%;
--foreground: 30 11% 7%;
--card: 46 37% 84%;
--card-foreground: 30 11% 7%;
--popover: 42 48% 90%;
--popover-foreground: 30 11% 7%;
--primary: 30 11% 7%;
--primary-foreground: 43 44% 89%;
--secondary: 48 38% 74%;
--secondary-foreground: 47 18% 19%;
--muted: 45 31% 82%;
--muted-foreground: 46 13% 33%;
--accent: 158 12% 50%;
--accent-foreground: 30 11% 7%;
--destructive: 0 57% 46%;
--destructive-foreground: 0 0% 100%;
--border: 47 25% 71%;
--input: 46 39% 85%;
--ring: 30 11% 7%;
--success: 155 24% 32%;
--success-foreground: 0 0% 100%;
--warning: 22 40% 56%;
--warning-foreground: 30 11% 7%;
--chart-1: 22 40% 56%;
--chart-2: 158 12% 50%;
--chart-3: 58 46% 20%;
--chart-4: 120 10% 59%;
--chart-5: 30 35% 27%;
--shadow-sm: 0 1px 2px rgba(0,0,0,0.06);
--shadow-md: 0 4px 12px rgba(0,0,0,0.08);
--shadow-lg: 0 8px 24px rgba(0,0,0,0.10);
--shadow-xl: 0 16px 48px rgba(0,0,0,0.14);
--gradient-hero: linear-gradient(180deg, #efe8d6 0%, #d6cca3 100%);
--gradient-brand: linear-gradient(135deg, #efe8d6 0%, #c8c0a4 100%);
--gradient-subtle: linear-gradient(180deg, #f4eee0 0%, #e6dfc8 100%);
--duration: 250ms;
--duration-slow: 500ms;
--ease: cubic-bezier(0.25, 0.1, 0.25, 1);
--tracking-tight: -0.02em;
--tracking-normal: 0em;
--font-weight-heading: 700;
--font-weight-body: 400;
--button-radius: 0.25rem;
--card-radius: 0.75rem;
--input-radius: 0.25rem;
--badge-radius: 9999px;
--border-width: 1px;
--card-border-width: 1px;
--input-border-width: 1px;
--button-border-width: 0;
--badge-border-width: 1px;
--heading-transform: uppercase;Install Targets
Registry
/r/norvale-editorial.jsonTailwind v4
@theme inline {
--font-heading: 'Fraunces', serif;
--font-sans: 'Plus Jakarta Sans', sans-serif;
--font-mono: 'Space Mono', monospace;
--color-background: hsl(var(--background));
--color-foreground: hsl(var(--foreground));
--color-card: hsl(var(--card));
--color-card-foreground: hsl(var(--card-foreground));
--color-popover: hsl(var(--popover));
--color-popover-foreground: hsl(var(--popover-foreground));
--color-primary: hsl(var(--primary));
--color-primary-foreground: hsl(var(--primary-foreground));
--color-secondary: hsl(var(--secondary));
--color-secondary-foreground: hsl(var(--secondary-foreground));
--color-muted: hsl(var(--muted));
--color-muted-foreground: hsl(var(--muted-foreground));
--color-accent: hsl(var(--accent));
--color-accent-foreground: hsl(var(--accent-foreground));
--color-destructive: hsl(var(--destructive));
--color-destructive-foreground: hsl(var(--destructive-foreground));
--color-border: hsl(var(--border));
--color-input: hsl(var(--input));
--color-ring: hsl(var(--ring));
--color-success: hsl(var(--success));
--color-success-foreground: hsl(var(--success-foreground));
--color-warning: hsl(var(--warning));
--color-warning-foreground: hsl(var(--warning-foreground));
--color-chart-1: hsl(var(--chart-1));
--color-chart-2: hsl(var(--chart-2));
--color-chart-3: hsl(var(--chart-3));
--color-chart-4: hsl(var(--chart-4));
--color-chart-5: hsl(var(--chart-5));
--radius-sm: 0.125rem;
--radius-md: 0.375rem;
--radius-lg: 0.75rem;
--radius-xl: 1rem;
--radius-button: 0.25rem;
--radius-card: 0.75rem;
--radius-input: 0.25rem;
--radius-badge: 9999px;
--border-width: 1px;
--card-border-width: 1px;
--input-border-width: 1px;
--button-border-width: 0;
--badge-border-width: 1px;
--shadow-sm: 0 1px 2px rgba(0,0,0,0.06);
--shadow-md: 0 4px 12px rgba(0,0,0,0.08);
--shadow-lg: 0 8px 24px rgba(0,0,0,0.10);
--shadow-xl: 0 16px 48px rgba(0,0,0,0.14);
--tracking-tight: -0.02em;
--tracking-normal: 0em;
--ease-kit: cubic-bezier(0.25, 0.1, 0.25, 1);
--duration-kit: 250ms;
--duration-kit-slow: 500ms;
--gradient-hero: linear-gradient(180deg, #efe8d6 0%, #d6cca3 100%);
--gradient-brand: linear-gradient(135deg, #efe8d6 0%, #c8c0a4 100%);
--gradient-subtle: linear-gradient(180deg, #f4eee0 0%, #e6dfc8 100%);
--font-weight-heading: 700;
--font-weight-body: 400;
}Registry payload
{
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
"name": "norvale-editorial",
"type": "registry:theme",
"title": "Norvale Editorial",
"description": "Warm parchment editorial system with oversized high-contrast italic serif, near-black accents, and dusty sage teal — a literary, analog-digital design world.",
"categories": [
"editorial",
"serif",
"parchment",
"literary",
"warm",
"minimal",
"high-contrast",
"ink",
"organic",