diff --git a/thoughts-frontend/app/docs/css/page.tsx b/thoughts-frontend/app/docs/css/page.tsx new file mode 100644 index 0000000..a3fddc8 --- /dev/null +++ b/thoughts-frontend/app/docs/css/page.tsx @@ -0,0 +1,315 @@ +import type { Metadata } from "next"; + +export const metadata: Metadata = { + title: "CSS Customization Reference", + description: "All the IDs, variables, and examples you need to style your Thoughts profile.", +}; + +const EXAMPLE_THEMES = [ + { + name: "Vaporwave", + description: "Pink/purple gradient header with a glassy card", + css: `#profile-header { + background: linear-gradient(135deg, #ff6b9d 0%, #c44dff 100%); +} + +#profile-card { + background: rgba(255, 107, 157, 0.08); + border: 1px solid rgba(196, 77, 255, 0.3); + backdrop-filter: blur(20px); +}`, + }, + { + name: "Dark Minimal", + description: "Pitch black, thin border, no blur", + css: `#main-container { + --background: 0 0% 4%; + --card: 0 0% 7%; + --border: 0 0% 14%; +} + +#profile-header { + background: #0a0a0a; + border-bottom: 1px solid #1a1a1a; +}`, + }, + { + name: "Neon Glow", + description: "Electric green borders and glow on a dark background", + css: `#profile-header { + background: #050505; + border-bottom: 2px solid #00ff88; +} + +#profile-card { + border: 1px solid #00ff88; + box-shadow: 0 0 24px rgba(0, 255, 136, 0.25); + background: rgba(0, 255, 136, 0.04); +}`, + }, + { + name: "Pastel", + description: "Soft pink and lavender, gentle and rounded", + css: `#profile-header { + background: linear-gradient(135deg, #ffd6e7 0%, #c7ceea 100%); +} + +#profile-card { + background: rgba(255, 214, 231, 0.25); + border: 1px solid #ffd6e7; + border-radius: 1.5rem; +}`, + }, + { + name: "Retro Terminal", + description: "Green-on-black monospace, old school CRT feel", + css: `#main-container { + --background: 0 0% 4%; + --foreground: 120 100% 70%; + --card: 0 0% 6%; + --border: 120 60% 20%; + font-family: 'Courier New', monospace; +} + +#profile-header { + background: #000; + border-bottom: 2px solid #00cc44; +} + +#profile-card { + border: 1px solid #00cc44; + box-shadow: 0 0 8px rgba(0, 204, 68, 0.3); +}`, + }, +]; + +const IDS = [ + { id: "#profile-page-{username}", description: "Root element — scope all rules here to avoid leaking to other pages" }, + { id: "#profile-header", description: "Banner image strip at the top of the page" }, + { id: "#main-container", description: "Full-width grid wrapper — the whole page body" }, + { id: "#left-sidebar", description: "The