/* -----------------------------------
Variables
-------------------------------------- */

:root {
    --color-bg: #F8F6F5;
    --color-default: #3b3a38;
    --color-highlight: #000;
    --color-dim: #93918F;
    --color-vdim: #c9c5c1;
    --color-shadow: #c9c5c1;
    --font-sans: -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;
    --font-serif: -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;
    --font-size: 16px;
    --font-s: 14px;
    --font-size-serif: 16px;
    --spacing: 1.5em;
    --spacing-s: calc(0.5 * var(--spacing));
    --spacing-m: var(--spacing);
    --spacing-l: calc(1.5 * var(--spacing));
    --spacing-xl: calc(2.5 * var(--spacing));
    --spacing-xxl: calc(5 * var(--spacing));
    --spacing-col: calc(6 * var(--spacing));
    --spacing-width-max: 38rem;
    --spacing-width-tiny: 15rem;
    --spacing-width-xl: 50rem;
}

@media (prefers-color-scheme: dark) {
:root {
    --color-bg: #242120;
    --color-default: #BAB6B1;    
    --color-highlight: #F8F6F5;
    --color-dim: #797673;
    --color-vdim: #494745;
    --color-shadow: #000;
	}
	
	form {
	--label-size: 10px;
	--field-color: #242120;
	--label-color: #F8F6F5;
	--button-color: #5B5956;
	--button-text-color: #F8F6F5;
	--field-border-color: #E6E3DF;
	}
}

body {
	margin: 0;
	padding: 0;
	color: var(--color-default);
	background-color: var(--color-bg);
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	line-height: 1.6;
	font-size: 1rem;
	font-family:var(--font-sans)
}

img {
    box-shadow: 0px 5px 10px var(--color-shadow);
	border-radius: 2px;
}

a, nav {
	color: var(--color-default);
}

nav a, nav h1 {
	display: inline-block;
	padding:3px 5px
}

nav a {
	text-decoration:none
}

a:hover {
	color: var(--color-dim);
}

nav {
	background: var(--color-bg);
	padding:5px 5px 0
}

nav h1 {
	font-size: inherit;
	font-weight: 600;
	margin:0
}

@media (max-width: 480px) {
	nav h1 {
		display:block
	}
}

div.archive > div, section {
	display: flex;
	align-items:center
}

section {
	justify-content: center;
	min-height: 100vh;
	min-width:100%
}

description {
	color: #999;
	font-size: 12px;
	text-align: center;
	max-width: 640px;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.meta, .post {
	max-width: 640px;
	margin: 50px auto 0;
	padding:0 25px 25px
}

.meta h1 {
	font-weight:700;
	font-size: inherit;
	margin:0;
}

.post {
	margin: 25px auto 0;
	padding: 0 25px 50px
}

.post a, a {
	color: var(--color-default;)
}

@media (min-width: 480px) {
	.meta {
		display: flex;
		justify-content:space-between
	}

	.meta div:nth-child(2) {
		text-align:right
	}
}

@media (max-aspect-ratio: 4/3) {
	section img, section video {
		height:auto
	}
}

@media (min-aspect-ratio: 4/3) {
	section img, section video {
		width: auto;
		max-width:100%
	}
}

@media (max-aspect-ratio: 4/3) and (max-width: 480px) {
	section img, section video {
		width:calc(100vw)
	}

	section {
		min-height: 50vh;
		padding:40px 0
	}
}

@media (max-aspect-ratio: 4/3) and (min-width: 480px) {
	section img, section video {
		width:calc(100vw - 100px)
	}
}

@media (min-aspect-ratio: 4/3) and (min-width: 480px) {
	section img, section video {
		max-height:calc(100vh - 100px);
		margin-bottom: -80px;
	}
}

@media (min-aspect-ratio: 4/3) and (max-width: 480px) {
	section img, section video {
		max-height:calc(100vh)
	}
}

div.archive {
	padding: 20px;
	display: grid;
	grid-template-columns:repeat(auto-fit, minmax(250px, 1fr))
}

div.archive > div {
	padding: 5px;
	display: flex;
	align-items: center;
	line-height:0
}

div.archive > div img {
	width: 100%
}