:root {
	--color: #151515;
	--dark-color: #ccc;
	--line: 1.5rem;
}
html {
	color: var(--color);
	font-size: 100%;
	font-family: sans-serif;
	min-height: 100%;
	transition: .5s ease-in-out;
}

body {
	padding: 0;
	margin: 0;
	line-height: var(--line);
	min-height: 100%;
}

a {
	color: inherit;
	border-bottom: 1px dotted var(--color);
	text-decoration: none;
}

a:hover {
	border-bottom-style: solid;
}

span {
	opacity: .7;
}

mark {
	color: inherit;
	background: rgba(125,125,125,.2);
}

h1 {
	font-size: 1.5rem;
}

h2 {
	font-size: 1.25rem;
}

h2:not(:first-child) {
	padding-top: 1.5rem;
}

h3 {
	font-size: 1.125rem;
}

h1,
h2,
h3,
p,
dl,
ol,
ul,
figure {
	margin: 0 0 var(--line);
}

dt {
	font-weight: bold;
	float: left;
	clear: both;
	margin-right: .5rem;
}

dd {
	margin: 0;
}

ol,
ul {
	list-style: none;
	padding: 0;
}

ol li {
	margin-bottom: 1.5rem;
}

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

blockquote {
	margin: .75rem 0 1.5rem;
	padding: 0 0 0 1.5rem;
	border-left: 4px #eee solid;
	opacity: .7;
}

button {
	color: inherit;
	background: none;
	border: 0;
	padding: 0;
	cursor: pointer;
	font-size: inherit;
}

.darkmode {
	color: var(--dark-color); 
	background: var(--color);
}

.darkmode a {
	border-bottom-color: var(--dark-color) 
}

.darkmode svg text {
	fill: var(--dark-color);
}

.darkmode svg [stroke="black"] {
	stroke: var(--dark-color);
}
.embed {
	position: relative;
	overflow: hidden;
}

.embed:before {
	content: '';
	display: block; 
	padding-bottom: 100%;
}

.embed svg, iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.embed img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: auto;
	max-width: none;
	height: 100%;
	transform: translateX(-50%) translateY(-50%);
}

.embed-2by3:before {
	padding-bottom: 150%;
}

.embed-2by3 img {
	min-height: 100%;
	min-width: 100%;
}
