*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	font-size: 16px;
}

body {
	background-color: #1a1a1a;
	color: #00ff41;
	font-family: 'Courier New', Courier, monospace;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0;
	margin: 0;
	padding: 2rem;
	overflow-y: auto;
	overflow-x: hidden;
	min-height: 100vh;
}

#wrapper {
	width: 100%;
	max-width: 72rem;
	min-width: 0;
}

.master-header,
.container,
footer {
	width: 100%;
	min-width: 0;
}

.master-header,
footer {
	overflow-wrap: anywhere;
}

#terminal {
	white-space: pre-wrap;
	word-wrap: break-word;
}

#terminal * {
	white-space: normal;
}

.prompt {
	color: #80f6ff;
}

.path {
	color: #ffffff;
}

.section {
	color: #fff851;
}

#output {
	white-space: pre-wrap;
	overflow-wrap: anywhere;
}

nav {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	line-height: 1.5;
	margin: 0;
	padding: 0;
	row-gap: 0;
}

nav::before {
	content: '[ ';
	color: #fff851;
}

nav::after {
	content: ' ]';
	color: #fff851;
}

nav a {
	color: #00ff41;
	text-decoration: none;
	white-space: nowrap;
}

nav a + a::before {
	content: ' | ';
	color: #fff851;
}

nav a:hover,
nav a.active {
	color: #ffffff;
}

h1,
h2,
h3 {
	font-family: 'Courier New', Courier, monospace;
	font-weight: normal;
	color: #fff851;
	font-size: 1rem;
	line-height: 1.5;
	padding: 0;
	margin: 0;
	border: none;
	text-shadow: none;
	word-wrap: break-word;
	display: inline-block;
}

h1::before {
	content: '[ ';
	color: #80f6ff;
}

h1::after {
	content: ' ]';
	color: #80f6ff;
}

h2::before {
	content: '[ ';
	color: #80f6ff;
}

h2::after {
	content: ' ]';
	color: #80f6ff;
}

h3 {
	color: #80f6ff;
}

p {
	color: #00ff41;
	font-size: 1rem;
	margin: 0;
	padding: 0;
	line-height: 1.5;
	overflow-wrap: anywhere;
}

li {
	color: #00ff41;
	font-size: 1rem;
	line-height: 1.5;
	margin: 0;
	overflow-wrap: anywhere;
}

strong {
	color: #ffffff;
}

ul {
	list-style: none;
	padding-left: 15px;
	margin: 0;
	min-width: 0;
}

li::before {
	content: '- ';
	color: #80f6ff;
}

code {
	color: #80f6ff;
	background: none;
	border: none;
	font-family: 'Courier New', Courier, monospace;
	font-size: inherit;
	padding: 0;
	box-shadow: none;
	text-shadow: none;
}

a {
	color: #00ff41;
	text-decoration: none;
	font-weight: normal;
}

a:hover {
	color: #fff851;
}

.footer-text {
	color: #80f6ff;
	font-size: 0.875rem;
	margin: 0;
	padding: 0;
}

.cursor {
	display: inline-block;
	background-color: #00ff41;
	width: 0.6em;
	height: 1.2em;
	animation: blink 1s step-end infinite;
	vertical-align: bottom;
}

@keyframes blink {

	from,
	to {
		background-color: transparent;
	}

	50% {
		background-color: #00ff41;
	}
}

@media (max-width: 640px) {

	html {
		font-size: 15px;
	}

	body {
		padding: 1rem;
	}

	ul {
		padding-left: 0.75rem;
	}
}

@media (max-width: 380px) {

	body {
		padding: 0.75rem;
	}

	nav a {
		white-space: normal;
	}
}
