body[data-theme="dark"] {
	background-color: #222222;
	color: #aaa
}

body[data-theme="dark"] a {
	color: #57cc8a
}

body[data-theme="dark"] a:visited {
	color: #57cc8a
}

body[data-theme="dark"] details {
	border: thin solid #aaa
}

body[data-theme="dark"] details summary {
	color: #aaa
}

body[data-theme="dark"] details[open] summary {
	border-bottom: 1px solid #aaa
}

body[data-theme="dark"] pre {
	background: #191919;
	color: #57cc8a
}

body[data-theme="dark"] .ascii-header {
	background: #191919;
	color:inherit 
}

body[data-theme="dark"] code:not(pre>code) {
	background-color: #aaa;
	color: #0f0e0e
}

body[data-theme="dark"] *:target {
	background: #2f3849;
	color: #aaa
}

/* make headers a bit lighter then the regular text */
body[data-theme="dark"] h1,
body[data-theme="dark"] h2,
body[data-theme="dark"] h3,
body[data-theme="dark"] h4,
body[data-theme="dark"] h5 {
	color: #bbb
}

body[data-theme="dark"] table,
body[data-theme="dark"] th,
body[data-theme="dark"] td {
	border: thin solid #666
}

body[data-theme="dark"] tr:nth-child(even) {
	background-color: #333333
}

body[data-theme="dark"] .toc {
	border: thin solid #aaa;
	padding: 1rem
}

body[data-theme="dark"] figcaption {
	color: #000
}

body[data-theme="dark"] blockquote {
	border: thin solid #aaa
}

body[data-theme="light"] {
	background-color: #f9f9f9;
	color: #4a4a4a
}

body[data-theme="light"] a {
	color: #5690AF
}

body[data-theme="light"] a:visited {
	color: #5690AF
}

body[data-theme="light"] details {
	border: thin solid #4a4a4a
}

body[data-theme="light"] details summary {
	color: #4a4a4a
}

body[data-theme="light"] details[open] summary {
	border-bottom: 1px solid #4a4a4a
}

body[data-theme="light"] pre {
	background: #444;
	color: #57ff8a
}

body[data-theme="light"] .ascii-header {
	background: inherit;
	color:inherit 
}

body[data-theme="light"] code:not(pre>code) {
	background-color: #4a4a4a;
	color: #f9f9f9
}

body[data-theme="light"] *:target {
	background: #dae5ec;
	color: #4a4a4a
}

body[data-theme="light"] table,
body[data-theme="light"] th,
body[data-theme="light"] td {
	border: thin solid #4a4a4a
}

body[data-theme="light"] tr:nth-child(even) {
	background-color: #eeeeee
}

body[data-theme="light"] .toc {
	border: thin solid #4a4a4a;
	padding: 1rem
}

body[data-theme="light"] figcaption {
	color: #595959
}

body[data-theme="light"] blockquote {
	border: thin solid #4a4a4a
}

html {
	height: 100%
}

body {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
	font-size: 1.2rem;
	line-height: 1.5;
	margin: 0;
	min-height: 100%;
	overflow-wrap: break-word
}

h2,
h3,
h4,
h5,
h6 {
	margin-top: 1.5rem
}

p {
	margin: 1rem 0
}

h1 {
	font-size: 2em
}

li {
	margin: 0.4rem 0
}

li span {
	font-family: monospace
}

ul a, li a, a {
	text-decoration: none
}

.top-nav a:hover,
ul a:hover,
li a:hover,
a:hover {
	text-decoration: underline
}

pre {
	padding: 1em;
	overflow-x: auto
}

table {
	width: 100%
}

table,
th,
td {
	border-collapse: collapse;
	padding: 0.4rem
}

code {
	font-family: Courier, monospace;
	font-size: 80%;
	-ms-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%
}

code:not(pre>code) {
	padding: 0.1em 0.2em;
	font-size: 90%
}

code.has-jax {
	-webkit-font-smoothing: antialiased;
	background: inherit !important;
	border: none !important;
	font-size: 100%
}

blockquote {
	padding: 1rem
}

blockquote p {
	margin: 0
}

img {
	max-width: 100%;
	display: block
}

figcaption {
	text-align: center;
	opacity: 0.5
}

details {
	padding: 1rem
}

details summary {
	text-decoration: none
}

details[open] summary {
	margin-bottom: 0.5em;
	padding-bottom: 0.5em
}

.w {
	max-width: 1000px;
	margin: 0 auto;
	padding: 2rem 2rem
}

.toc {
	padding: 1rem
}

.top-nav {
  display: flex;
  align-items: center;
  gap: 0.5rem;        /* space between items */
  flex-wrap: wrap;    /* allow wrapping on narrow viewports */
}

.top-nav a#theme-toggle {
  margin-left: auto;  /* pushes this item to the right */
}

.top-nav a { text-decoration: none; }

.ascii-header {
  font-family: "Courier New", "Liberation Mono", Menlo, monospace;
  -webkit-text-size-adjust: 100%;
  white-space: pre;             /* preserves spaces and line breaks */
  line-height: 1;               /* lock line spacing — adjust if needed */
  font-size: 12px;              /* choose a fixed size */
  letter-spacing: 0;            /* avoid variable spacing */
  #display: block;
  margin: 0;
  padding: 0;
  #line-height: 16px;
  overflow-y: auto;         /* or 'hidden' if you never want scroll */
  -ms-overflow-style: none; /* IE/Edge */
  scrollbar-width: none;
  overflow: hidden;
}

body[data-theme="dark"] .ascii-header {
   background-color: #222222;
 }

body[data-theme="dark"] hr {
   border: 1.5px dashed #aaa;
}

body[data-theme="light"] hr {
   border: 1.5px dashed #4a4a4a;
}
