diff --git a/app/contact/form.module.css b/app/contact/form.module.css index 743e9db3..0821bae8 100644 --- a/app/contact/form.module.css +++ b/app/contact/form.module.css @@ -2,15 +2,15 @@ width: 100%; padding: 0.8em; margin: 0.6em 0; - border: 2px solid var(--colors-light); + border: 2px solid var(--color-gray-400); border-radius: 0.6em; color: var(--colors-text); - background-color: var(--colors-super-duper-light); + background-color: var(--color-gray-100); } .input:focus { outline: none; - border-color: var(--colors-link); + border-color: var(--color-link); } .input.textarea { @@ -21,12 +21,12 @@ } .input.invalid { - border-color: var(--colors-error); + border-color: var(--color-error); } .errorMessage { font-size: 0.9em; - color: var(--colors-error); + color: var(--color-error); } .actionRow { @@ -48,13 +48,13 @@ user-select: none; font-weight: 500; color: var(--colors-text); - background-color: var(--colors-kinda-light); + background-color: var(--color-gray-300); } .submitButton:hover, .submitButton:focus-visible { - color: var(--colors-super-duper-light); - background-color: var(--colors-link); + color: var(--color-gray-100); + background-color: var(--color-link); } .submitIcon { @@ -70,11 +70,11 @@ } .result.success { - color: var(--colors-success); + color: var(--color-success); } .result.error { - color: var(--colors-error); + color: var(--color-error); } .resultIcon { diff --git a/app/contact/page.tsx b/app/contact/page.tsx index 1e03f0fd..e6803490 100644 --- a/app/contact/page.tsx +++ b/app/contact/page.tsx @@ -32,7 +32,7 @@ const Page = () => { size="0.975em" style={{ marginRight: "0.15em", - stroke: "var(--colors-warning)", + stroke: "var(--color-warning)", verticalAlign: "middle", }} />{" "} diff --git a/app/globals.css b/app/globals.css index bdc52bbf..0e1d6e42 100644 --- a/app/globals.css +++ b/app/globals.css @@ -9,92 +9,66 @@ --container-default: var(--container-4xl); --color-*: initial; - --color-background-inner: #ffffff; - --color-background-outer: #fcfcfc; - --color-text: #202020; - --color-medium-dark: #515151; - --color-medium: #5e5e5e; - --color-medium-light: #757575; - --color-light: #d2d2d2; - --color-kinda-light: #e3e3e3; - --color-super-light: #f4f4f4; - --color-super-duper-light: #fbfbfb; - --color-link: #0e6dc2; - --color-success: #44a248; - --color-error: #ff1b1b; - --color-warning: #f78200; + --color-background-inner: oklch(1 0 0); + --color-background-outer: oklch(0.99 0 0); + --color-gray-900: oklch(0.27 0 0); + /* --color-gray-800: */ + --color-gray-700: oklch(0.39 0 0); + --color-gray-600: oklch(0.44 0 0); + --color-gray-500: oklch(0.53 0 0); + --color-gray-400: oklch(0.85 0 0); + --color-gray-300: oklch(0.9 0 0); + --color-gray-200: oklch(0.96 0 0); + --color-gray-100: oklch(0.99 0 0); + --color-link: oklch(0.57 0.17 255); + --color-success: oklch(0.68 0.16 142); + --color-error: oklch(0.65 0.26 25); + --color-warning: oklch(0.75 0.17 75); --animate-wave: wave 5s ease 1s infinite; --animate-heartbeat: heartbeat 10s ease 7.5s infinite; @keyframes wave { - 0% { - transform: rotate(0deg); - } - 5% { - transform: rotate(14deg); - } - 10% { - transform: rotate(-8deg); - } - 15% { - transform: rotate(14deg); - } - 20% { - transform: rotate(-4deg); - } - 25% { - transform: rotate(10deg); - } - 30% { - transform: rotate(0deg); - } + 0% { transform: rotate(0deg) } + 5% { transform: rotate(14deg) } + 10% { transform: rotate(-8deg) } + 15% { transform: rotate(14deg) } + 20% { transform: rotate(-4deg) } + 25% { transform: rotate(10deg) } + 30% { transform: rotate(0deg) } /* pause for ~9 out of 10 seconds */ - 100% { - transform: rotate(0deg); - } + 100% { transform: rotate(0deg) } } @keyframes heartbeat { - 0% { - transform: scale(1); - } - 2% { - transform: scale(1.25); - } - 4% { - transform: scale(1); - } - 6% { - transform: scale(1.2); - } - 8% { - transform: scale(1); - } + 0% { transform: scale(1) } + 2% { transform: scale(1.25) } + 4% { transform: scale(1) } + 6% { transform: scale(1.2) } + 8% { transform: scale(1) } /* pause for ~9 out of 10 seconds */ - 100% { - transform: scale(1); - } + 100% { transform: scale(1) } } } @custom-variant dark (&:where([data-theme=dark], [data-theme=dark] *)); [data-theme="dark"] { - --color-background-inner: #1e1e1e; - --color-background-outer: #252525; - --color-text: #f1f1f1; - --color-medium-dark: #d7d7d7; - --color-medium: #b1b1b1; - --color-medium-light: #959595; - --color-light: #646464; - --color-kinda-light: #535353; - --color-super-light: #272727; - --color-super-duper-light: #1f1f1f; - --color-link: #88c7ff; - --color-success: #78df55; - --color-error: #ff5151; - --color-warning: #f2b702; + --color-background-inner: oklch(0.2 0 0); + --color-background-outer: oklch(0.22 0 0); + --color-gray-900: oklch(0.95 0 0); + /* --color-gray-800: */ + --color-gray-700: oklch(0.87 0 0); + --color-gray-600: oklch(0.74 0 0); + --color-gray-500: oklch(0.65 0 0); + --color-gray-400: oklch(0.46 0 0); + --color-gray-300: oklch(0.4 0 0); + --color-gray-200: oklch(0.23 0 0); + --color-gray-100: oklch(0.2 0 0); + --color-link: oklch(0.8 0.1 230); + --color-success: oklch(0.83 0.15 142); + --color-error: oklch(0.7 0.2 25); + --color-warning: oklch(0.85 0.15 85); } diff --git a/app/hillary/page.tsx b/app/hillary/page.tsx index 8c20e236..4c4b41a1 100644 --- a/app/hillary/page.tsx +++ b/app/hillary/page.tsx @@ -57,7 +57,7 @@ const Page = () => { fontSize: "0.9em", lineHeight: 1.8, margin: "1.25em 1em 0 1em", - color: "var(--colors-medium-light)", + color: "var(--color-gray-500)", }} > Video is property of{" "} diff --git a/app/layout.tsx b/app/layout.tsx index 96bc51d5..bb9e4cea 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -62,7 +62,7 @@ const RootLayout = ({ children }: Readonly<{ children: React.ReactNode }>) => { /> - + diff --git a/app/leo/page.tsx b/app/leo/page.tsx index f1d615c7..4c1b1131 100644 --- a/app/leo/page.tsx +++ b/app/leo/page.tsx @@ -56,7 +56,7 @@ const Page = () => { fontSize: "0.9em", lineHeight: 1.8, margin: "1.25em 1em 0 1em", - color: "var(--colors-medium-light)", + color: "var(--color-gray-500)", }} > Video is property of{" "} diff --git a/app/notes/[slug]/page.module.css b/app/notes/[slug]/page.module.css index 2719ca37..2b5df844 100644 --- a/app/notes/[slug]/page.module.css +++ b/app/notes/[slug]/page.module.css @@ -41,7 +41,7 @@ .meta .metaTag::before { content: "\0023"; /* cosmetically hashtagify tags */ padding-right: 0.125em; - color: var(--colors-light); + color: var(--color-gray-400); } .meta .metaTag:last-of-type { @@ -66,7 +66,7 @@ .comments { margin-top: 2em; padding-top: 2em; - border-top: 2px solid var(--colors-light); + border-top: 2px solid var(--color-gray-400); min-height: 140px; } diff --git a/app/page.tsx b/app/page.tsx index 23ad42f0..cd9cfe6b 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -123,7 +123,7 @@ const Page = () => { > the Tooth Fairy - . I’ve improved a bit since then, I think? 🤷 + . I’ve improved a bit since then, I think? 🤷

diff --git a/app/previously/page.mdx b/app/previously/page.mdx index 6ae65948..aadfee5c 100644 --- a/app/previously/page.mdx +++ b/app/previously/page.mdx @@ -85,7 +85,7 @@ _Previously on the [Cringey Chronicles™](https://web.archive.org/web/20010 A _very_ barebones example is embedded above ([view the source here](https://github.com/jakejarvis/dark-mode-example), or [open in a new window](https://jakejarvis.github.io/dark-mode-example/) if your browser is blocking the frame) and you can try it out on this site by clicking the 💡 lightbulb in the upper right corner of this page. You'll notice that the dark theme sticks when refreshing this page, navigating between other pages, or if you were to return to this example weeks from now.