3 Commits

Author SHA1 Message Date
hikari 93a6cf952d fix: move link tags into head and add stylesheet precedence
Node.js CI / CI (pull_request) Failing after 20s
Security Scan and Upload / Security & DefectDojo Upload (pull_request) Successful in 1m48s
Resolves hydration error from link elements as direct children of html,
and adds precedence="default" to the highlight.js stylesheet link.
2026-03-03 18:16:40 -08:00
hikari d9644d3a57 fix: improve blockquote dark mode and border styling
Adds dark mode text colour via .is-dark selector, replaces full dotted
border with a left-only accent-coloured border with inner glow effect.
2026-03-03 18:06:56 -08:00
hikari 71f184f696 fix: use global font settings instead of Inter
Removes Inter font import from layout and the conflicting CSS font rule,
deferring font handling to the CDN global headers script.
2026-03-03 17:53:44 -08:00
2 changed files with 17 additions and 15 deletions
+8 -5
View File
@@ -2,10 +2,6 @@
@tailwind components;
@tailwind utilities;
* {
font-family: "Vampyr", monospace;
}
h1 {
@apply text-4xl;
}
@@ -38,8 +34,15 @@ blockquote p {
@apply text-center;
}
.is-dark blockquote,
.is-dark blockquote p {
color: var(--foreground);
}
blockquote {
border: 2px dotted;
border-left: 5px solid var(--accent);
box-shadow: inset 4px 0 10px -4px var(--accent);
padding-left: 1rem;
margin: 1rem;
}
+9 -10
View File
@@ -3,16 +3,12 @@
* @license Naomi's Public License
* @author Naomi Carrigan
*/
import { Inter } from "next/font/google";
import Script from "next/script";
import type { Metadata } from "next";
import type { JSX, ReactNode } from "react";
// eslint-disable-next-line import/no-unassigned-import -- Import global styles.
import "./globals.css";
// eslint-disable-next-line new-cap -- This is a function call.
const inter = Inter({ subsets: [ "latin" ] });
const metadata: Metadata = {
description: "The personal musings of a transfem software engineer.",
openGraph: {
@@ -40,6 +36,14 @@ const RootLayout = ({
}>): JSX.Element => {
return (
<html lang="en">
<head>
<link href="https://cdn.nhcarrigan.com/logo.png" rel="icon" sizes="any" />
<link
href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.11.1/styles/default.min.css"
precedence="default"
rel="stylesheet"
></link>
</head>
<Script
async={true}
defer={true}
@@ -47,12 +51,7 @@ const RootLayout = ({
strategy={"afterInteractive"}
type="text/javascript"
></Script>
<link href="https://cdn.nhcarrigan.com/logo.png" rel="icon" sizes="any" />
<link
href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.11.1/styles/default.min.css"
rel="stylesheet"
></link>
<body className={inter.className}>{children}</body>
<body>{children}</body>
</html>
);
};