:root {
	--white: #ffffff;
	--black: #000000;
	--blue: #0355a9;
	--orange: #ff8800;
	--red: #ff0000;
	--grey: #aaaaaa;

	--menu-gap:  24px;
}

@font-face {
  font-family: topaz;
  src: url(/fonts/topaz_a500.ttf);
}

html, body {
	background-color:  var(--blue);
	color:  var(--white);
	font-family: "topaz", sans-serif;
	font-size: 20px;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	line-height: 26px;
	display: flex;
	flex-direction: column;
	height: 100%;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: normal;
}

h1 {
	font-size: 2rem;
	line-height: 2.2rem;
	margin: 1.0rem 0;
}

h2 {
	font-size: 1.5rem;
	line-height: 1.5rem;
	margin: 1.0rem 0 1.0rem 0;
}

h3 {
	font-size: 1.3rem;
	line-height: 1.8rem;
}

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

code {
	font-family: "topaz", sans-serif;
	color: var(--grey);
}

pre {
	padding: 10px;
	border: 3px solid var(--black);
}

ul {
	padding-left:  24px;
}

ul li {
	list-style-type: none;
}

.nav-border {
	height: 34px;
	line-height: 34px;
	margin-top: 8px;
	padding: 0 0 0 8px;
	background-color:  var(--white);
	color:  var(--blue);
}

.nav-border a {
	color:  var(--blue);
}

.nav-wrapper {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: var(--menu-gap);
}

.main-menu {
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: row;
	gap: var(--menu-gap);
}

.menu-opener {
	display: none;
}

#screen-switcher {
	display: block;
	margin-left: auto;
	margin-right: 6px;
	width: 84px;
	height: 34px;
	background: no-repeat center center url(/img/workbench_icons.svg) var(--blue);
}

#guru {
	display: none;
	position: absolute;
	top 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: var(--black);
	color: var(--red);
}

#guru-border {
	text-align: center;
	border:  8px solid var(--red);
	padding: 15px;
	margin: 20px;

	animation: blinker 1.5s step-end infinite;
}

@keyframes blinker {
  50% {
    border-color: var(--black);
  }
}

#content {
	padding: 10px;
	flex: 1 0 auto;
}

.post {
	max-width: 1200px;
	margin: 0 auto;
}

.post img {
	max-width: 100%;
}

.post li {
	list-style-type: square;

}

.post .yt-share {
	position: relative;
	padding-bottom: 56.25%;
  padding-top: 0;
  height: 0;
  overflow: hidden;
}

.post .yt-share iframe,
.post .yt-share object,
.post .yt-share embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

footer {
	padding: 10px;
	border-top: 2px solid var(--white);

	flex-shrink: 0;
}


/* content stuff */
h2.ascii-headline {
	text-align: center;
}

pre.ascii {
	margin: 0 auto;
	width:  800px;
	font-family: "topaz", monospace;
}


/* responsive foo  */
@media only screen and (max-width: 980px) {
  .hide-me-on-mobile {
  	display: none;
  }
}

@media only screen and (max-width: 580px) {
  .hide-me-on-mobile,
  #screen-switcher,
  .dots {
  	display: none;
  }

  .nav-border a {
  	position: relative;
	}

	.nav-wrapper {
		position: relative;
		gap:  20px;
	}

	.menu-opener {
		display: block;
	}

	.main-menu {
		display: none;
	}

	.menu-wrapper:hover .main-menu {
		display: flex;
		position: absolute;
		top: 33px;
		left: 99px;
		width: 100px;
		flex-direction: column;
		z-index: 10;
		background-color: var(--white);
		padding: 10px 30px 20px 20px;
		gap: 10px;
	}


}


@media only screen and (max-width: 320px) {
	.nav-wrapper {
		gap:  10px;
	}

	.main-menu {
		gap: 10px;
	}
}