* {
	margin: 0px;
	box-sizing: border-box;
}

*:focus {
	outline: none;
}

body,
html {
	max-width: 100%;
	overflow-x: hidden;

	height: 100%;
	width: 100%;
}

body,
textarea {
	font-family: "Noto Sans", Arial, Helvetica, sans-serif;
}

p {
	text-align: justify;
}

button {
	cursor: pointer;
}

ul {
	list-style: circle;
	margin: 10px 0px 10px 0px;
}

a {
	text-decoration: underline;
	cursor: pointer;
}

input[type="text"],
input[type="password"],
textarea {
	border-radius: 3px;
	font-size: 1em;
	border: solid transparent 1px;
	margin: 5px 0px;
	padding: 0.5em;
}

label {
	font-size: 18px;
}

blockquote {
	/* Largely inspired by Github's formatting*/
	border-left: 0.25em solid gray;
	padding-left: 10px;
}

iframe,
img {
	/*Also taken from Github's formatting*/
	border-style: none;
	max-width: 100%;
	box-sizing: content-box;
}

pre {
	overflow: auto;
	padding: 15px;
	margin: 10px;
	code {
		padding: 0;
	}
}

code {
	font-family: monospace;
	display: inline;
	padding: 2px 4px;
	margin: 0;
	overflow: visible;
	word-wrap: normal;
	font-size: 1em;
}

.files-link {
	padding: 5px 0px;
	width: 100%;
}

#header-title {
	cursor: pointer;
	margin: auto;
	width: min-content;
}

#login {
	font-size: 15px;
}

.elevated {
	background-color: #006b5a;
	color: white;
	a {
		color: lightgray;
	}
}

#sidebar {
	position: fixed;
	right: calc(-1 * min(100%, 400px));
	height: 100%;
	width: min(100%, 400px);
	z-index: 2000;
	transition: right 0.5s ease-in-out;
	background-color: #006b5a;
	color: white;
	a {
		color: lightgray;
	}
}

#sidebar.elevated {
	box-shadow: 10px 0px 20px 0px;
}

#sidebar.extended {
	right: 0px;
}

#sidebar #sidebarContent {
	padding: 10px;
	text-align: center;
}

#sidebarContent p {
	margin-bottom: 10px;
}

#sidebarContent h2 {
	text-align: left;
}

.sidebarSeparator {
	margin-right: 20px;
	background-color: #7c968e;
	height: 2px;
	border-radius: 2px;
	margin-bottom: 10px;
}

.sidebarButton {
	height: 50px;
	width: 50px;
	color: white;
	border: 0;
	align-self: center;
	vertical-align: middle;
	background-color: transparent;
}

#headerButton {
	position: absolute;
	right: 0px;
	top: calc(50% - 25px);
}

#sidebarCover {
	position: fixed;
	background-color: black;
	opacity: 0%;
	visibility: hidden;
	z-index: 1;
	height: 100%;
	width: 100%;
	transition: all 0.5s ease-in-out;
}

#main {
	height: 100%;
	display: flex;
	flex-direction: column;
	height: 100%;
	z-index: 0;
}

#header {
	text-align: center;
	position: sticky;
	padding: 20px;
	flex-shrink: 0;
}

#header.elevated {
	box-shadow: 0px -10px 20px 0px;
}

#content {
	padding: 10px 2.5%;
	max-width: 800px;
	width: min(95%, 800px);
	margin: auto;
	flex: 1 0 auto;
	position: relative;
	left: 0%;
	opacity: 1;
	transition: all 0.25s ease-in-out;
	display: flex;
	flex-direction: column;
}

#content.htmx-swapping {
	opacity: 0;
	left: 50%;
}

/* #content.hxmx-settling {
	opcacity: 1;
	left: 0%;
} */

#content p {
	margin-bottom: 10px;
}

#footer {
	padding: 10px;
	flex-shrink: 0;
	background-color: black;
	color: white;
	transition: all 0.5s ease-in-out;
}

#footer a {
	color: white;
}

#themeButton {
	border: 0;
	border-radius: 20px;
	padding: 5px 10px 5px 10px;
	float: inline-end;
	align-self: center;
}

.author-pic {
	width: 150px;
	float: left;
	padding-right: 10px;
}

.blog-title {
	width: 100%;
	display: flex;
	flex-direction: column;
	text-align: center;
	padding: 0px 20px;
}

.blog-title::after {
	content: "";
	height: 2px;
	margin: 5px 0px;
}

.blog-author,
.blog-time {
	text-align: center;
}

.blog {
	margin-top: 20px;
	width: 100%;
	h1 {
		text-align: center;
	}
	h1,
	h2 {
		width: 100%;
		display: flex;
		flex-direction: column;
	}
	h1::after,
	h2::after {
		content: "";
		height: 2px;
		margin: 5px 0px;
	}
}

/* .blog-time {
    margin-bottom: 20px;
} */

.about-me-header {
	margin-bottom: -5px;
}

.my-projects-header {
	margin-bottom: 15px;
}

.vertical-seperator {
	display: inline-block;
	inline-size: 1px;
	background-color: gray;
	height: 1em;
	margin: 0 5px -2px 5px;
}

#loginForm {
	display: flex;
	flex-direction: column;
	max-width: 300px;
	margin: auto;
}

#passwordInput {
	margin-bottom: 10px;
}

.formButton {
	margin: auto;
	font-size: 1em;
	/* border: none;
	border-radius: 5px; */
	padding: 5px 10px;
}

/* @keyframes heightChange {
	0% {
		height: 0px;
	}
	100% {
		height: auto;
	}
} */

#formResult {
	transition: height 2s;
}

#editorForm {
	display: flex;
	flex-direction: column;
}

#blogEditor {
	min-height: 1.5em;
	resize: vertical;
}

.twitter-tweet {
	margin-left: auto;
	margin-right: auto;
}
