* {
	margin: 0;
	padding: 0;
	font: inherit;
	color: inherit;
	box-sizing: border-box;
}

:root { --lh: 1.5em }

::selection { background: #ddd; color: #000 }

html {
	margin: 0 0 0 calc(100vw - 100%);
	-webkit-text-size-adjust: 100%;
	height: 100%;
}

body {
	font: 1em/var(--lh) monospace;
	background: #f2f2f2;	
	padding: 16vh 2em 0; 
	display: grid;
	grid: 1fr / minmax(auto, 64ch);
	justify-content: center;
	height: 100%;
}

a {
	display: inline-block;
	padding: .16666em;
	margin-left: -.16666em;
	text-decoration: none;
}

a i { border-bottom: 1px dotted }
a:active i { border: none }

h1,h2,
p,
nav { margin-bottom: var(--lh) }

nav,
.v { margin-top: -.16666em } 

.v a {
	padding-right: 1em;
	padding-left: 1em;
	margin-left: -1em;
}

footer { padding: calc(var(--lh) * 2)  0 8vh }
footer p { margin: 0 }

@media (max-device-width: 600px) {
	body { padding-top: 2em; justify-content: start }
	footer { padding-bottom: 2em }
	a i { border-color: #888 }
}

ul, ol {
  padding-inline-start: 30px;
}



:root {
  /* Light mode colors */
  --bg-color: #ffffff;
  --text-color: #111111;
  --link-color: #1a73e8;
}

@media (prefers-color-scheme: dark) {
  :root {
    --bg-color: #111111;
    --text-color: #f5f5f5;
    --link-color: #82b1ff;
  }
}

/* Apply variables */
body {
  background-color: var(--bg-color);
  color: var(--text-color);
  transition: background-color 0.3s, color 0.3s;
}

a {
  color: var(--link-color); 
}

abbr[title] {
    text-decoration: none; 
}
img{
	  max-width: 100%;
  height: auto;
}