/* Styling for Nav bar. Bg color, link color etc */
.navbar-inner {
  padding-left: 20px;
  padding-right: 20px;
  background-color: #619eff;
  background-image: none;
  background-repeat: repeat-x;
  color: black;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
}

a.skip-navigation {
  left: 50%;
  position: absolute;
  transform: translateY(-100%);
}

a.skip-navigation {
	background: #258;
	border-radius: 0 0 8px 8px;
	border: 1px solid white;
	color: white;
	height: 30px;
	left: 50%;
	padding: 8px;
	position: absolute;
	transform: translateY(-100%);
	transition: transform 0.3s;
}

a.skip-navigation:focus {
	transform: translateY(0%);
}

.headerlogo {
	display: inline-block;
	margin: 0.5em;
	font-family: serif;
}


.headerlogo .headertext {
	margin-top: 0.5em;
	padding-left: 1em;
	display: inline-block;
}

.headerlogo h1{
	display: inline;
	font-size: 32pt;
}

.headerlogo h1 a {
	color: white !important;
	text-shadow: 0 0 5px rgba(128, 128, 192, 0.8) !important;
}

.headerlogo h1 a:hover {
	text-decoration: none;
}

.headerlogo .description {
	display: inline;
	color: #f2f8ff;
	font-size: 10pt;
}

.headerlogo img {
	float: left;
	display: inline;
	width: 8em;
	height: 4.5em;
}

.navbar .nav > li > a {
	font-family: serif;
	font-size: 14pt;
	color: black;
	text-shadow: 0 0 5px rgba(128, 128, 192, 0.8);
}
.navbar .nav > li > a:hover {
	color: white;
	text-shadow: 0 0 2px white;
}

@media (max-width: 979px) {
	.navbar .nav > li > a:hover {
		color: black;
	}
}
.navbar .divider-vertical { border-right: 1px solid #4D4D4D; }
.navbar { margin-bottom: 1em; } 


/* Styling for elements */
body {
	font-family: "Gentium", "Georgia", serif;
	min-height: 100%;
}
p { font-size: 100%; line-height: 1.6em; margin-top: 0.8em; margin-bottom: 0.8em; }
li { line-height: 1.6em; }
h3 { margin-top: 2.5em; }
.table th, .table td { line-height: 1.3em; }

/* Styling for articles */
.article {
	padding-bottom:20px;
	clear: both;
}

.content-title { margin-bottom: 30px; }
.article a:hover { text-decoration: none; } 



/* Styling for the "other entries" section */
/* Metadata */
.metadata-block {
	background-color: #258;
	padding: 0.75em;
	border: 0;
	font-size: 80%;
	font-family: "Monaco", monospace;
	color: white;
	display: flex;
	justify-content: space-between;
}

.tags {
	font-size: 80%;
	text-align: right;
}

.tags ul {
	list-style: none;
	display: inline;
	margin: 0 0.5em;
}

.tags li {
	display: inline-block;
	padding: 0 0.25em;
}

.tags li a {
	font-weight: lighter;
}

.tags li:after {
	content: "|"
}

.tags li:last-child:after {
	content: ""
}

.metadata-block a {
	color: white;
	font-weight: bolder;
}

.article-title {
	color: #258;
}

/* Read more button */
.read-more-button {
	background-color: #619eff;
	background-image: none;
    padding: 1px 3px 1px;
    font-size: 11px;
    float: right;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
}

/* Article summary */
.summary { margin-bottom: 4em; }
/* .summary pre { display: none; } */


/* Styling for Sidebar */
.social a {
	background-size: 16px 16px;
	background-repeat: no-repeat;
	background-attachment: scroll;
	background-position: 4px 4px;
	line-height: 24px;
	margin-left: 2px;
}

.nav-list > li > a.social-entry {
	padding: 0 0 0 24px;
}

.social a.social-entry[href*="facebook.com"] { background-image: url("./images/new_icons/facebook.png"); }
.social a.social-entry[href*="twitter.com"] { background-image: url("./images/new_icons/twitter.png"); }
.social a.social-entry[href*="mastodon"] { background-image: url("./images/new_icons/mastodon.png"); }
.social a.social-entry[href*="github.com"] { background-image: url("./images/new_icons/github.png"); }
.social a.social-entry[href*="keybase.io"] { background-image: url("./images/new_icons/keybase.png"); }
.social a.social-entry[href*="yelp.com"] { background-image: url("./images/new_icons/yelp.png"); }
.social a.social-entry[href*="flickr.com"] { background-image: url("./images/new_icons/flickr.png"); }
.social a.social-entry[href*="delicious"] { background-image: url("./images/new_icons/delicious.png"); }
.social a.social-entry[href*="linkedin.com"] { background-image: url("./images/new_icons/linkedin.png"); }
.social a.social-entry[href*="pinboard.in"] { background-image: url("./images/new_icons/pinboard.png"); }
.social a.social-entry[href*="last.fm"] { background-image: url("./images/new_icons/lastfm.png"); }
.social a.social-entry[href*="instapaper"] { background-image: url("./images/new_icons/instapaper.png"); }
.social a.social-entry[href*="brown-delair"] { background-image: url("./images/new_icons/browndelair.png"); }
.social a.social-entry[href*="goodreads.com"] { background-image: url("./images/new_icons/goodreads.png"); }

.code_table {
	border: 1px solid black;
	border-collapse: 1;
}

.code_table th {
	border-right: 1px solid black;
}

.code_table th,
.code_table td {
	padding: 0.5em;
}

.article-content h1, h2, h3, h4, h5, h6 {
	margin: 0;
}

h1, h2, h3, h4, h5, h6 {
}

ul.tagcloud {
	list-style: none;
	font-size: 80%;
	margin: 0.5em;
	padding: 5px;
}

ul.tagcloud li {
	display: inline-block;
}

li.tag-0 {
	font-size: 150%;
}

li.tag-1 {
	font-size: 125%;
}

li.tag-2 {
	font-size: 105%;
}

li.tag-3 {
	font-size: 90%;
}

li.tag-4 {
	font-size: 80%;
}

.content {
	display: flex;
	flex-flow: nowrap;
	justify-content: space-between;
	align-content: stretch;
}

.content-section {
	order: 1;
	flex: 5 1 auto;
	clear: both;
	padding-right: 20px;
}

.nav-sidebar {
	order: 2;
	flex: 0 1 auto;
	min-width: 180px;
	max-width: 320px;
	clear: both;
}

@media (max-width: 767px) {
	.content {
		flex-wrap: wrap;
	}
	.content-section {
		padding-right: 0;
		break-after: always;
		width: 100%;
		padding-bottom: 1em;
		border-bottom: 1px solid #ccc;
		margin-bottom: 1em;
	}

	.nav-sidebar {
		width: 100%;
		max-width: 100%;
	}
}

.sidebar.well {
	background-color: #D9D9D9;
	padding: 8px 0;
}

.sidebar.well .nav-header {
	color: #555;
	font-weight: bolder;
	font-size: 14px;
}

.nav-sidebar .nav-list a i {
	padding-right: 0.5em;
}

.sidebar.well a {
	color: #258;
}

.meimg {
	width: 128px;
	height: 128px;
}

.lfloat {
	float: left;
	margin: 1em;
}
.rfloat {
	float: right;
	margin: 1em;
}

.center {
	display: block;
	margin: 0 auto;
}

.summary .lfloat,
.summary .rfloat {
	max-width: 20%;
}

.cimg-no-shadow {
	max-width: 80%;
	text-align: center;
	display: block;
	margin: 0 auto;
}

.cimg {
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
	text-align: center;
	display: block;
	margin: 0 auto;
}

.simg {
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
}

.halfimg {
	max-width: 45%;
}

.qimg {
	max-width: 25%;
}

.gallery ul {
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	align-content: center;
	list-style: none;
	margin: 1em 0;
}

.gallery li {
	flex: 0 1 auto;
}

.gallery img {
	max-height: 350px;
	max-width: 100%;
	margin: 0.25em;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
}

.gallery.gallery-noshadow img {
	box-shadow: none;
}

.gallery img.noshadow {
	box-shadow: none;
}

@media (max-width: 767px) {
	.halfimg, .qimg {
		max-width: 90%;
	}
}

@media (max-width: 1023px) {
	.gallery img {
		max-width: 20vw;
	}
}

@media (max-width: 511px) {
	.gallery img {
		max-width: calc(100vw - 4em);
		max-height: inherit;
		margin: 0.25em 0;
		max-height: auto;
	}
}

ul.tag-cloud {
	margin: 2em 4em;
	list-style: none;
}

ul.tag-cloud li {
	display: inline;
	margin: 0 0.15em;
	line-height: 100%;
	vertical-align: middle;
}

@media (max-width: 767px) {
	ul.tag-cloud {
		margin: 0;
		list-style: disc;
	}

	ul.tag-cloud li {
		font-size: 12pt !important;
		display: block;
	}
}

.pagination {
	margin-bottom: 72px;
}

.article table.with_border {
	border: 1px solid #aaa;
}

.article table.all_borders tr td,
.article table.all_borders tr th {
	border-right: 1px solid #ccc;
}

.article table.with_last tr td:first-child,
.article table.with_last tr th:first-child {
	border-right: 1px solid #ccc;
}

.article table.with_last th {
	font-size: 120%;
	font-weight: normal;
}

.article table.with_last tr th:last-child,
.article table.with_last tr td:last-child {
	font-weight: bolder;
}

.article table.with_last td {
	text-align: center;
}

.article table {
	width: 100%;
	margin-bottom: 18px;
}

.article table thead:first-child tr th,
.article table thead:first-child tr td {
	border: 0
}

.article table th,
.article table td {
	padding: 8px;
	border-top: 1px solid #ddd;
}

.article table tbody > tr:nth-child(odd) > td,
.article table tbody > tr:nth-child(odd) > th {
	background-color: #f8f8f8;
}

.article table tbody tr td {
	text-align: center;
}

.article table tbody tr td:first-child {
	text-align: left;
}

.article table thead {
	background-color: #8D8D8D;
	color: white;
	border-bottom: 1px solid black;
}

.article table:not(.with_border) {
	border: 1px solid #8D8D8D;
}

.footnote {
	font-size: 80%;
}

.quoteattr {
	font-family: serif;
	font-size: 80%;
	text-align: right;
}

.note,
.warning-note {
	margin: 1em auto;
	max-width: 70%;
}

.note {
	padding: 0 1em;
	background-color: #aaa;
	font-size: 90%;
}

.warning-note {
	padding: 1em;
	background-color: rgb(255, 250, 156);
	font-size: 90%;
	border: 1px solid rgb(182, 176, 57);
}

@media (max-width: 767px) {
	.note,
	.warning-note {
		margin-left: 0;
		margin-right: 0;
		max-width: 100%;
	}
}


nav.toc {
	font-size: 80%;
	border: 1px solid black;
	margin: 4em;
}

nav.toc h2 {
	font-size: 100%;
	margin: 0;
	background-color: #efefef;
	width: 100%;
	border-bottom: 1px solid #ccc;
}

.iframe-frame {
	position: relative;
	padding-bottom: 60%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}

.iframe-frame iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.img-2-sbs {
	width: 100%;
}

.img-2-sbs img {
	min-width: 300px;
	max-width: 48%;
}

.article q {
	font-style: italic;
}

.article q::before {
	content: open-quote;
}

.article q::after {
	content: close-quote;
}

footer {
	padding: 1em;
	text-align: right;
	border-top-width: 0;
	border-top-color: #ccc;
	border-top-style: solid;
}

footer p {
	font-size: 65%;
}

@media (max-width: 767px) {
	footer {
		border-top-width: 1px;
	}
}

.form-search {
	padding: 0;
	margin: 0;
}

.form-search img {
	height: 20px;
	display: inline;
	margin: 0;
}

.form-search.duckduckgo input[type="search"] {
	background: url(/theme/images/new_icons/duckduckgo.png) no-repeat scroll 2px 2px, white;
	background-size: 20px 20px;
	height: 24px;
	padding: 0px 0px 0px 26px;
}

.form-search input[type="search"] {
	width: calc(100% - 40px);
	margin: 0;
	display: inline-block;
}

.form-search div {
	width: 100%;
	text-align: center;
}

.content-title {
	border-bottom: 1px solid #ccc;
}

.article .content-title {
	border-bottom: 0;
}

.navbar .btn-navbar .icon-bar {
	background-color: #555;
}

.page-computers img {
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
	max-width: 50%;
}

.archive-table td,
.archive-table th {
	border: 0;
}

.archive-table tr td:first-child {
	font-weight: 200;
}

dd {
	margin-left: 2em;
}

dd ul {
	margin-top: calc(-20px + -1em);
}

dd ul li {
	line-height: inherit;
}

.lined-dl dt:first-child {
	border-top: 0;
}

.lined-dl dt {
	padding-top: 1em;
	padding-bottom: 1em;
	border-top: 1px solid #ddf;
}

pre {
	font-size: 12px;
}

code, pre {
	font-family: "Source Code Pro", Monaco, Menlo, Consolas, "Courier Prime", "Courier New", monospace;
	font-size: 12px;
}

.commento-root .commento-markdown-help tr td {
	padding: 10px !important;
}

blockquote p {
	font-family: -apple-system-caption1, "Times New Roman", Times, serif;
}

.sidenote {
	max-width: 32ch;
	border: 1px solid #aaa;
	background-color: #eee;
	color: black;
	float: right;
	font-size: 10pt;
	padding: 1em 1em 0.5em 1em;
	margin: -0.5em 1em 0.5em 1em;
	border-radius: 0.5em;
}

.sidenote.sidenote-left {
	float: left;
	margin: 0.5em 2em 0.5em 2em;
}

.sidenote h3 {
	font-size: 10pt;
	font-weight: bolder;
	line-height: 10pt !important;
}

@media (max-width: 767px) {
	body {
		padding-left: 0;
		padding-right: 0;
	}

	.container-fluid {
		padding-left: 20px;
		padding-right: 20px;
	}

	.form-search input[type="search"] {
		width: calc(100% - 60px);
	}

	.sidenote {
		float: none;
		width: calc(100% - 2em);
		margin: 1em;
		max-width: 100%;
		padding: 1em;
		margin: 0.5em;
	}

	.sidenote.sidenote-left {
		float: none;
		margin: 0.5em;
	}

	img.rfloat {
		max-width: 25vw;
	}
}

.download-button::before {
	content: "💾 ";
}

@media (prefers-color-scheme: dark) {
	html, body {
		background-color: #282828;
		color: #fff;
		color: #fff;
	}

	.navbar-inner {
		border-color: black;
	}

	.cimg, .simg {
		box-shadow: 0 0 5px rgba(180, 180, 180, 0.5);
	}

	img {
		opacity: .75;
		transition: opacity .5s ease-in-out;
	}

	.article-title {
		color: #619eff;
	}

	.sidebar.well {
		background-color: #494949;
		border: 1px solid black;
		padding: 8px 0;
	}

	.sidebar.well .nav-header {
		color: #eee;
		font-weight: bolder;
		font-size: 14px;
		text-shadow: none;
	}

	.sidenote {
		border: 1px solid #aaa;
		background-color: #494949;
		color: #e9e9e9;
	}

	.sidebar.well a {
		color: #619eff;
		text-shadow: none;
	}

	code, pre {
		background-color: black;
		color: #00d000;
		border: 1px solid #00d000;
	}

	.article table tbody > tr:nth-child(odd) > td,
	.article table tbody > tr:nth-child(odd) > th {
		background-color: black;
	}

	img:hover {
		opacity: 1;
	}

	.form-search.duckduckgo input[type="search"] {
		background: url(/theme/images/new_icons/duckduckgo.png) no-repeat scroll 2px 2px, #6e6e6e;
		color: #f6f6f6;
		background-size: 20px 20px;
	}

	.form-search input[type="submit"] {
		background-color: #6E6E6E;
		background-image: none;
		text-shadow: none;
		color: white;
		border: 1px outset #8b8b8b;
	}

	.form-search input[type="submit"]:active {
		border: 1px inset #8b8b8b;
		background-color: #aeaeae;
	}

	.table-hover tbody tr:hover>td, .table-hover tbody tr:hover>th,
	.table-hover tbody tr:hover>td, .table-hover tbody tr:hover>td {
		background-color: black;
	}

	footer {
		border-top-color: #111;
	}

	hr {
		border-top: 1px solid #222;
		border-bottom: 1px solid #111;
	}

	.commento-root textarea {
		background-color: #43423F;
		color: white;
	}

	.lined-dl dt {
		border-top: 1px solid #113;
	}

	.article table thead {
		background-color: #484848;
		color: white;
		border-bottom: 1px solid #111;
	}

	.article table:not(.with_border) {
		border: 1px solid #484848;
	}
}
