/* A massive thank you is owed to mio for helping me rework the utter nightmare that was my CSS styles. */

/* Default value reference */
:root {
	--fontMono: Courier, "New Courier", Noto Mono, monospace;
	--fontSants: Arial, Helvetica, Noto Sans, sans-serif;
	--lightGray: #d3d3d3;
}

/* Page Layout */

body {
	padding: 20px;
}

.header {
	padding: 20px;
	max-height: 20vh;
}

/* Create two unequal columns inside content div that float next to each other */
.leftColumn {
	float: left;
	width: 75%;
}

.rightColumn {
	float: left;
	padding-left: 20px;
	width: 23%;
}

/* Clear floats after the columns end */
.raw:after {
	content: "";
	display: table;
	clear: both;
}

.footer {
	margin-top: 20px;
	padding: 20px;
	max-height: 20vh;
}

/* Content Formatting */
body {
	background: var(--lightGray);
	font-family: var(--fontSans);
}

/* Card effect used for articles, sidebar blocks and content sections on other pages. */
.card {
	background-color: white;
	padding: 20px;
	margin-top: 20px;
}

/* This controls preformatted text */
pre, .pre {
	font-family: var(--fontMono);
	overflow-wrap: break-word;
	white-space: pre-wrap;
	white-space: -moz-pre-wrap;
	white-space: -pre-wrap;
	white-space: -o-pre-wrap;
	word-wrap: break-word;
}

/* This controls code blocks */
pre, .code {
	background: #ddd;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	color: black;
	font-size: 12px;
	margin: 20px 0;
	overflow-x: auto;
	padding: 20px;
}

.header, .footer {
	background: white;
	text-align: center;
}

.header h1 {
	font-size: 45px;
	margin: 37px 0;
}

/* This is magic, and it shrinks our photos to fit inside of the post card */
.post img, .img {
	background-color: var(--lightGray);
	border: 20px solid var(--lightGray);
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	margin: 10px 0;
	max-width: calc(100% - 40px)
}

/* Sidebar bio block */
.bio {
	font-size: 12px;
	white-space: revert;
}

/* This controls the way the info page renders, since it has a specific purpose it makes sense to just define precisely how it should work. Maybe a good refer for adding a Colophon theme later? */
.info {
	padding: 40px;
}

.info h2 {
  font-size: 26px;
  margin: 30px 0 25px;
}
.info h3 {
  font-size: 24px;
  margin: 50px 0 25px;
}
.info h4 {
  font-size: 18px;
  text-decoration: underline;
  margin: 40px 0 10px 0;
}
.info h5 {
  font-size: 16px;
  margin: 30px 0 10px;
}
.info h6 {
  font-size: 14px;
  margin: 20px 0 10px;
}

.info ul {
	padding: 0 0 0 20px;
}

/* Adds padding to paragraphs under an unordered list */
.info ul + p {
	margin: 40px 0;
}

/* image */
#imgContainer{
	max-width: 100%;
	overflow: auto;
}

.img {
  background-color: #aaa;
  width: 100%;
  padding: 20px;
  object-fit: contain;
}

/* Add a card effect for articles */
.card {
  background-color: white;
  padding: 20px;
  margin-top: 20px;
}

.ccard {
  background-color: white;
  padding: 20px;
  margin-top: 20px;
  text-align: center;
}

.post {
  background-color: white;
  padding: 20px;
  margin-top: 20px;
}

.pre {
    display: inline;
    white-space: pre-wrap;
    white-space: -moz-pre-wrap;
    white-space: -pre-wrap;
    white-space: -o-pre-wrap;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* .codeSnippet {
	background-color: #ddd;
	color: black;
	padding: 20px;
	white-space: pre-wrap;
	white-space: -moz-pre-wrap;
	white-space: -pre-wrap;
	white-space: -o-pre-wrap;
	word-wrap: break-word;
	overflow-wrap: break-word;
} */

.Snippet {
	background-color: #ddd;
	color: black;
	object-fit: contain;
	padding: 20px;
	white-space: pre-wrap;
	white-space: -moz-pre-wrap;
	white-space: -pre-wrap;
	white-space: -o-pre-wrap;
	word-wrap: break-word;
	overflow-wrap: break-word;
}

.code {
    font-family: Courier, 'New Courier', monospace;
    font-size: 12px;
}

pre:has(code) {
    font-family: Courier, 'New Courier', monospace;
    font-size: 12px;
	background-color: #ddd;
	color: black;
	padding: 20px;
	white-space: pre-wrap;
	white-space: -moz-pre-wrap;
	white-space: -pre-wrap;
	white-space: -o-pre-wrap;
	word-wrap: break-word;
	overflow-wrap: break-word;
	overflow: auto;
}

.bio {
	font-family: Courier, 'New Courier', monospace;
	font-size: 12px;
	white-space: -moz-pre-wrap;
	word-wrap: break-word;
	overflow-wrap: break-word;
}

#codeStyler {
    border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    margin: 1em 0;
}

/* Clear floats after the columns */
.row:after {
  content: "";
  display: table;
  clear: both;
}

/* Footer */
.footer {
  overflow: hidden;
  padding: 20px;
  text-align: center;
  /* background: #ddd; */
  background: white;
  margin-top: 20px;
  /* max-height: 20vh; */
}

/* Responsive layout, media queries */
@media screen and (max-width: 1055px) {
	/* stack columns on top of each other instead of next to */
	.leftColumn, .rightColumn {
		max-width: 100vw;
		padding: 0;
		width: 100%
	}
	
	.header {
		font-size: 26px;
	}
}
