feat: complete ANL lab homepage with light/dark theme, responsive layout, and 100% SSG E2E test suite
This commit is contained in:
@@ -21,6 +21,7 @@ import type { Config } from "tailwindcss";
|
||||
* Font CSS variables are injected by next/font in app/layout.tsx.
|
||||
*/
|
||||
const config: Config = {
|
||||
darkMode: ["class", '[data-theme="dark"]'],
|
||||
content: [
|
||||
"./app/**/*.{ts,tsx}",
|
||||
"./components/**/*.{ts,tsx}",
|
||||
@@ -29,45 +30,54 @@ const config: Config = {
|
||||
extend: {
|
||||
colors: {
|
||||
ink: {
|
||||
DEFAULT: "#0A0A0A",
|
||||
soft: "#262420",
|
||||
mute: "#6B655B",
|
||||
DEFAULT: "rgb(var(--ink-rgb) / <alpha-value>)",
|
||||
soft: "rgb(var(--ink-soft-rgb) / <alpha-value>)",
|
||||
mute: "rgb(var(--ink-mute-rgb) / <alpha-value>)",
|
||||
},
|
||||
ivory: "#F5F1E8",
|
||||
paper: "#ECE6D6",
|
||||
line: "#D8D1C0",
|
||||
ivory: "rgb(var(--ivory-rgb) / <alpha-value>)",
|
||||
paper: "rgb(var(--paper-rgb) / <alpha-value>)",
|
||||
line: "rgb(var(--line-rgb) / <alpha-value>)",
|
||||
vermillion: {
|
||||
DEFAULT: "#D9342B",
|
||||
dark: "#A8231C",
|
||||
DEFAULT: "rgb(var(--vermillion-rgb) / <alpha-value>)",
|
||||
dark: "rgb(var(--vermillion-dark-rgb) / <alpha-value>)",
|
||||
},
|
||||
cobalt: {
|
||||
DEFAULT: "#1B3A8A",
|
||||
dark: "#122863",
|
||||
DEFAULT: "rgb(var(--cobalt-rgb) / <alpha-value>)",
|
||||
dark: "rgb(var(--cobalt-dark-rgb) / <alpha-value>)",
|
||||
},
|
||||
// Back-compat aliases so any stray legacy class still resolves.
|
||||
brand: {
|
||||
DEFAULT: "#D9342B",
|
||||
dark: "#A8231C",
|
||||
light: "#1B3A8A",
|
||||
DEFAULT: "rgb(var(--vermillion-rgb) / <alpha-value>)",
|
||||
dark: "rgb(var(--vermillion-dark-rgb) / <alpha-value>)",
|
||||
light: "rgb(var(--cobalt-rgb) / <alpha-value>)",
|
||||
},
|
||||
accent: { DEFAULT: "#1B3A8A" },
|
||||
accent: { DEFAULT: "rgb(var(--cobalt-rgb) / <alpha-value>)" },
|
||||
},
|
||||
fontFamily: {
|
||||
// English display serif — magazine cover scale.
|
||||
display: ["var(--font-display)", "Fraunces", "Georgia", "serif"],
|
||||
// Korean serif headlines.
|
||||
"serif-ko": ["var(--font-serif-ko)", "Noto Serif KR", "serif"],
|
||||
// Clean sans body. Pretendard preferred, Inter as web fallback.
|
||||
// Clean sans body. Geist preferred, Pretendard & Inter as web fallbacks.
|
||||
sans: [
|
||||
"Pretendard",
|
||||
"Geist",
|
||||
"var(--font-sans)",
|
||||
"Pretendard",
|
||||
"Inter",
|
||||
"ui-sans-serif",
|
||||
"system-ui",
|
||||
"Apple SD Gothic Neo",
|
||||
"Malgun Gothic",
|
||||
"sans-serif",
|
||||
],
|
||||
mono: [
|
||||
"Geist Mono",
|
||||
"var(--font-mono)",
|
||||
"ui-monospace",
|
||||
"SFMono-Regular",
|
||||
"Menlo",
|
||||
"Monaco",
|
||||
"Consolas",
|
||||
"monospace",
|
||||
],
|
||||
},
|
||||
fontSize: {
|
||||
// Magazine-cover display scale. Capped at 7rem (was 9rem) so the
|
||||
|
||||
Reference in New Issue
Block a user