/* JetBrains Mono, self-hosted (latin subset, from @fontsource/jetbrains-mono@5.3.0) */
@font-face {
   font-family: "JetBrains Mono";
   font-style: normal;
   font-weight: 400;
   font-display: swap;
   src: url("assets/fonts/jetbrains-mono-latin-400-normal.woff2") format("woff2");
}

@font-face {
   font-family: "JetBrains Mono";
   font-style: normal;
   font-weight: 600;
   font-display: swap;
   src: url("assets/fonts/jetbrains-mono-latin-600-normal.woff2") format("woff2");
}

:root {
   /* Gruvbox dark (default) */
   --bg: #282828;
   /* bg0 */
   --fg: #ebdbb2;
   /* fg1 */
   --muted: #a89984;
   /* fg4 / gray */
   --link: #83a598;
   /* blue */
   --accent: #fabd2f;
   /* yellow */
   --rule: #504945;
   /* bg2 */
}

/* Gruvbox light */
/* TODO: possibly migrate off of gruvbox light to some other more friendly light theme */
@media (prefers-color-scheme: light) {
   :root {
      --bg: #fbf1c7;
      /* bg0 */
      --fg: #3c3836;
      /* fg1 */
      --muted: #7c6f64;
      /* fg4 / gray */
      --link: #076678;
      /* blue */
      --accent: #b57614;
      /* yellow */
      --rule: #d5c4a1;
      /* bg2 */
   }
}

html {
   font-size: 17px;
}

body {
   margin: 0;
   background: var(--bg);
   color: var(--fg);
   font-family: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;
   line-height: 1.6;

   /* stuff to center div vertically */
   min-height: 100vh;
   display: flex;
   flex-direction: column;
   justify-content: center;
}

/*
Source - https://stackoverflow.com/a/48030340
Posted by Caner, modified by community. See post 'Timeline' for change history
Retrieved 2026-10-07, License - CC BY-SA 4.0
*/
.center-screen {
   display: flex;
   justify-content: center;
   align-items: center;
   text-align: center;
   min-height: 100vh;
}

.intro {
   display: flex;
   align-items: center;
   gap: 1rem;
   margin-bottom: 1rem;
}

.intro h1 {
   margin: 0;
}

.avatar {
   width: 80px;
   height: 80px;
   border-radius: 100%;
   object-fit: cover;
   border: 1px solid var(--rule);
   flex-shrink: 0;
}

.bio {
   color: var(--muted);
   margin: 0 0 2.5rem;
}

.links {
   column-count: 2;
}

main {
   max-width: 40rem;
   margin: 0 auto;
   padding: 4rem 1.5rem;
}

h1 {
   font-size: 2.3rem;
   font-weight: 600;
}


h2 {
   font-size: 1rem;
   font-weight: 600;
   color: var(--accent);
   margin: 2rem 0 0.5rem;
   padding-bottom: 0.25rem;
   border-bottom: 1px solid var(--rule);
}

ul {
   list-style: none;
   margin: 0;
   padding: 0;
}

li {
   margin: 0.3rem 0;
}

a {
   color: var(--link);
   text-decoration: none;
}

a:hover {
   text-decoration: underline;
}
