@media (prefers-color-scheme: light) {
	article, body {
		color: var(--primary-dark-300);
	}
	article {
		border-color: var(--primary-300);
		background-color: var(--primary-200);

		& aside {
			box-shadow: inset 0 0 0 2px var(--primary-500);
			background-color: var(--primary-300);
		}

		& s,
		u {
			text-decoration-color: color-mix(in lch, red, var(--primary-500) 20%);
		}

		& code:not(pre *) {
			color: var(--primary-400);
			background-color: var(--primary-dark-400);
		}

		& pre {
			transition: background-color var(--trans), border-color var(--trans);
			background-color: var(--primary-100);

			&:hover {
				border-color: var(--primary);
				background-color: var(--primary-400);
			}
		}

		& pre,
		code {
			border-color: var(--primary-400);
		}
		/* blog.css */
		& [aria-label="Postscript"]::after {
			background-color: var(--primary);
		}
		& [aria-label="Post warning"] {
			background-color: var(--primary);
			color: var(--primary-dark-100);
			&::before,
			&::after {
				background-color: var(--primary);
			}
		}
		& [aria-label="Addendum"] {
			box-shadow: inset 0 0 0 2px var(--primary);
			border-image-source: linear-gradient(
				45deg,
				var(--primary),
				var(--primary-600),
				var(--primary)
			);
			background-color: var(--primary-400);
		}
	}
	#posts {
		& p:not(:last-child) {
			color: var(--primary-dark-700);
		}
	}
	/* default.css */
	body {
		background-color: var(--primary-100);
		/* this is cursed */
		& :is(a, button) {
			color: var(--primary-dark-400);
			border-color: var(--primary-600);
			background-color: var(--primary-400);
			&:is(:hover, :focus) {
				color: var(--primary-dark-500);
				border-color: currentColor;
				background-color: var(--primary-500);
			}
			&:is(.header-anchor):is(:hover, :focus)  {
				background-color: var(--primary-dark-400);
				color: var(--primary-300);
				box-shadow: 0 0 0 2px var(--primary-300);
			}
		}
		& > nav {
			border-color: var(--primary);
			& details {
				background-color: var(--primary-100);
				&:not([open]) summary {
					color: var(--primary);
				}
			}

			& details[open] {
				border-color: var(--primary);
				background-color: var(--primary-300);
				color: var(--primary-dark-300);

				& a[aria-current] {
					color: var(--primary-500);
					border-color: var(--primary-dark-500);
					background-color: var(--primary-dark-500);
				}
			}
			&::before,
			&::after {
				background-color: var(--primary);
			}
		}

		&::after {
			background-color: var(--primary);
		}
	}
	/* home.css */
	ul:not([role]) li::before {
		background-color: var(--primary-dark-300);
	}
	#interests {
		& a:is(:hover, :focus):not(.header-anchor) {
			box-shadow: 0 0 0 1px currentColor;
			background-color: var(--primary-500);
		}
		& img {
			box-shadow: 0 0 0 1px
				color-mix(in lch, transparent, var(--primary-dark-500) 30%);
		}
		& details h3 {
			border-color: var(--primary-dark-600);
		}
	}
	a:has(img[src*="/assets/img/button"]) {
		background-color: unset;
		&:is(:hover, :focus) img {
			filter: drop-shadow(4px 6px 0 var(--primary-500));
		}
	}
}
