@charset "utf-8";

a:link {
	background-image: linear-gradient(#0000ee, #0000ee);
	background-size: 0% 0.1em;
	background-position-y: 100%;
	background-position-x: 50%;
	background-repeat: no-repeat;
	transition: none;
	text-decoration: underline;
}

a:hover {
	background-size: 100% 0.1em;
	text-decoration: none;
}

a[href ^= "http"]::before {
	content: "↺ ";
	color: #000;
}

a[href ^= "gemini"]::before {
	content: "↝ ";
	color: #000;
}

a[href ^= "http"]:hover {
	text-underline-offset: 0.2em;
	transition: background-size 0.2s ease-in-out;
}

body {
	font-family: Tahoma, Verdana, Segoe, sans-serif;
	margin: 0;
	background-color: #fff;
	text-align: left;
	width: 100%;
	padding: 0;
}

details {
	margin: 0 2em;
}

details[open] {
	animation: animateDown 0.2s linear forwards;
}

h1.recent {
	margin: 0 0.5em;
}

div.header {
	padding-top: 0;
	background-color: #f2f2f0;
	text-align: center;
	min-height: 9em;
	margin-bottom: 0;
	padding-bottom: 0;
}

div.header a img {
	z-index: -1;
}

div.header h1 {
	margin-left: 4em;
	text-shadow: -0.1em 0.1em #eee, 0.1em 0.1em #444,
		0.1em 0.1em #eee, -0.1em 0.1em #444;
	text-transform: uppercase;
}

div.header p {
	margin-left: 4em;
	font-style: italic;
}

div.latest {
	font-size: 90%;
	border-radius: 2.5em;
	background: #eee;
	border: medium solid #ddd;
	margin: 0.5em;
}

div.latest dl {
	padding-left: 2em;
}

div.latest dt.updated:after {
	content: " ☚ updated today";
	font-size: 75%;
}

div.latest dl dt:hover + dd {
	font-style: normal;
}

div.latest dl dt + dd:after {
	content: "  ";
}

div.latest dl dt:hover + dd:after {
	content: " •";
}

h2.latest {
	margin-left: 0.5em;
	margin-right: 0.5em;
}

div.navigation {
	position: relative;
	text-align: center;
	font-size: 85%;
	margin: 0 1em 0 0;
	padding: 2em 2em 0 2em;
}

div.navigation ul {
	border: medium solid #000;
	border-radius: 2em;
	list-style: none;
}

div.navigation ul li {
	display: inline;
	margin: 0;
	padding: 1em;
	border: none;
}

div.navigation2 {
	margin: 0.5em;
	padding: 1em 2em 1em 0.2em;
	border-radius: 2.4em;
	border: medium solid #000;
	background-color: #d0d0d0;
	text-align: center;
	font-weight: bold;
	font-size: 90%;
}

div.navigation2 > ul {
	list-style-type: none;
	display: flex;
	padding 0em 1em 0em 1em;
	margin: 0;
	justify-content: space-between;
}

div.navigation2 > ul > li {
	display: inline;
	/* top right bottom left */
	margin: 0 0 0 0;
	border: none;
	padding: 0 1em 0 1em;
}

div.navigation2 > ul:before {
	content: " ←";
	text-decoration: none;
	color: #000;
}

div.navigation2 > ul:after {
	content: " →";
	text-decoration: none;
	color: #000;
}

div.navigation2 > ul > li:first-of-type {
	margin: 0 1em 0 0;
	padding: 0 1em 0 0;
}

div.navigation2 > ul > li:last-of-type {
	margin: 0 0 0 1em;
	padding: 0 0 0 1em;
}

div.navigation2 ul li a:link {
	background-image: linear-gradient(#0000ee, #0000ee),
	linear-gradient(#0000ee, #0000ee);
	background-size: 0% 0.1em;
	background-position-y: 100%;
	background-position-x: 0%, 100%;
	background-repeat: no-repeat;
	text-decoration: underline;
}

div.navigation2 ul li a:hover {
	text-decoration: none;
	background-size: 100% 0.1em;
}

div.error {
	border: thin solid #000;
	background-image: repeating-linear-gradient(#f44, #a88 10%, #f44 100%);
	padding-left: 1em;
	padding-right: 1em;
	box-shadow: 0.4em 0.4em 0.4em #555;
}

@keyframes slidein {
	from {
	margin-left: 100%;
	width: 300%;
	}

	to {
	margin-left: 0%;
	width: 100%;
	}
}

@keyframes animateDown {
	0% {
	opacity: 0;
	transform: translatey(-15px);
	}
	100% {
	opacity: 1;
	transform: translatey(0);
	}
}

div.error h1 {
	animation-duration: 1s;
	animation-name: slidein;
	margin-left: 0%;
}

div.error p.notfound {
	font-family: monospace;
	animation-duration: 2s;
	animation-name: slidein;
}

div.post {
	background-image: linear-gradient(#c9cfc9, #fff 10%, #d1d8d1 80%);
	padding: 0;
	border: thin solid #000;
}

div.post:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: left;
	height: 0;
}

div.post > h1,
div.post > h2,
div.post > h3,
div.post > h4,
div.post > h5 {
	margin-left: 0.5em;
	margin-right: 0.5em;
}

div.post > p {
	margin-left: 1em;
	margin-right: 1em;
}

div.post span.date {
	box-shadow: 0.1em 0.1em 0.1em #555;
	text-decoration:  auto;
	padding-left: 0.5em;
	padding-right: 0.5em;
	color: #555;
	border-radius: 2.4em;
}

div.post > div ul {
	margin: 0 0 0 1em;
	padding: 0 0 0 1em;
	list-style: none;
}

/* entries */
div.post ol > li:has(>h5),
div.post ul > li:has(>h5) {
	margin: 0 0 0.2rem 0rem;
	padding: 0 0 0.2rem 0.5rem;
	border-radius: 0.5rem;
	border: thin solid #000;
	background-image: repeating-linear-gradient(#ccc, #ddd 1em, #ccd 2em);
	list-style: none;
}

div.post ol > li:has(>h5) {
	counter-increment: step-counter;
}

div.post ol > li:has(>h5):before {
	float: left;
	padding: 0.35rem 0.25rem 0.2rem 0.5rem;
	font-family: Times,Georgia,serif;
	font-weight: bold;
	content: counter(step-counter) ".";
}

div.post ul > li:has(>h5) {
	display: block;
	text-indent: -1rem;
	padding-left: 3rem;
}

div.post blockquote {
	quotes: "«" "»" "‘" "’";
	font-family: serif;
	text-align: left;
	margin: 0 0.25rem 0.1rem 1rem;
	padding: 0.2rem 0.5rem 0.5rem 1rem;
	border: thin solid #888;
	clear: both;
}

div.post > blockquote:before {
	color: #444;
	margin: 0 0.25em 0.1em 0.1em;
	padding: 0 0.25em 0.2em 0.1em;
	vertical-align: 1.2em;
	text-shadow: 0.1em 0.1em 0.1em #555;
	content: open-quote;
}

div.post blockquote:after {
	color: #444;
	margin: 0 0.25em 0 0.1em;
	padding: 0 0.25em 0em 0.25em;
	vertical-align: -1em;
	text-shadow: 0.1em 0.1em 0.1em #555;
	content: close-quote;
}

div.post blockquote[cite]:after {
	white-space: pre-wrap;
	padding: 0 0.25em 0 0.1em;
	content: close-quote " \A \A \00a0 \00a0 — " attr(cite);
}

div.post li:has(>h5) blockquote:before {
	padding: 0 0 0 1em;
	color: #444;
	vertical-align: 0em;
	text-shadow: 0.1em 0.1em 0.1em #555;
	content: "«";
}

div.post li:has(>h5) blockquote:after {
	padding: 0 0 0 -3em;
	color: #444;
	vertical-align: 0em;
	text-shadow: 0.1em 0.1em 0.1em #555;
	content: "»";
}

div.post blockquote:empty {
	display: none;
}

div.post ul, div.post ol, div.post dl {
	margin: 1em 2em 2em 2em;
}

div.post ol li blockquote, div.post ul li blockquote {
	margin: 0 0.25em 0.1em 0.1em;
	padding: 0 0.25em 0.2em 0.1em;
	border: none;
}

div.post blockquote p {
	text-indent: 0;
	margin: 0.25em 0.25em 0.1em 0.3em;
	padding: 0.3em 0.5em 0 0.5em;
}

div.post blockquote.reprint {
	padding: 0.5em;
	background-color: #e8e8e8;
	border-radius: 0.2rem;
}

div.post blockquote.reprint p {
	border: none;
	background-color: #e8e8e8;
}

div.post h1 {
	width: 80%;
	text-align: left;
	font-size: 125%;
}

div.post p.author {
	text-align: right;
	font-size: 80%;
}

div.post > p.dropcap-first:first-letter {
	text-shadow: #888 0.1em 0.1em 0.1em;
	float: left;
	font-size: 200%;
	position: absolute;
	line-height: 90%;
	font-family: Times,Georgia,serif;
}

div.post p.side {
	float: right;
}

div.post p.center {
	clear: both;
	border: thin solid #000;
	border-collapse: collapse;
	max-width: 60%;
	overflow: hidden;
	background-color: #777;
	padding: 0rem;
	margin-left: auto;
	margin-right: auto;
}

div.post p.center a:link img {
	border: thick solid #0000EE;
}

div.post p.center a:visited img {
	border: thick solid #551A8B;
}

div.post p.center img {
	float: none;
	padding: 0 !important;
	transition: all 0.5s;
	display: block;
	height: auto;
	margin: 0.5rem auto 0.5rem auto;
	width: 60%;
}

div.post p.center img:hover {
	transform: scale(1.1);
}

div.post pre {
	font-family: monospace;
	background-color: #eee;
	border: thin solid #444;
	margin: 0 1rem;
	padding: 0.5rem 0.5rem;
}

div.post a.readon {
	border-radius: -1.3rem;
	border: thin solid #222;
	padding: 0.1em 0.25em;
	margin-left: 0.2em;
	background-image: radial-gradient(ellipse farthest-corner at 30% 20%,
		#c6c6c6 20%, #1c1c1c 120%);
	background-size: 100%;
	box-shadow: 0.2em 0.2em #8f8f8f;
	text-align: center;
	color: #444;
	text-shadow: 0.1em 0.1em #ccc;
	text-decoration: none;
	font-family: serif;
	white-space: nowrap;
	position: relative;
}

div.post a.readon:hover {
	background-image: radial-gradient(ellipse farthest-corner at 30% 20%,
		#767676 20%, #7c7c7c 120%);
	color: #000;
}

div.post a.readon[title]:after {
	content: "Via: " attr(title);
	position: relative;
	font-size: 95%;
	font-weight: bold;
	left: 120%;
	color: #222;
}

div.feedlist {
	position: relative;
	float: right;
	max-width: 20%;
	font-size: 75%;
	padding: 1em;
	border-top: thin solid #000;
	border-bottom: thin solid #000;
	border-left: thin solid #000;
	background-image: url("/Images/F1F1F1E9E9E9CACACAFFFFFF_108.png");
}

div.feedlist > h1,h2,h3,h4 {
	margin-left: 0em;
	margin-right: 0em;
}

h1, h2, h3, h4, h5, h6{
	font-weight: bold;
	font-family: "Liberation Serif", FreeSerif, serif;
	margin: 0.3em 0.1em 0.1em 0.1em;
	padding: 0.3em 0.1em 0.2em 0.1em;
}

h1 {
	font-size: 200%;
}

h2 {
	font-size: 150%;
}

h3 {
	font-size: 125%;
}

h4 {
	font-size: 115%;
}

h6 {
	font-size: 110%;
	padding: 1.5em;
	border: thin solid #aaa;
	border-radius: 1.5rem;
}

div.footer {
	clear: both;
	justify-content: center;
	text-align: center;
	margin: 0 auto 2em auto;
	height: 5em;
	/* background-image: linear-gradient(#c9cfc9, #fff 10%, #d1d8d1 80%); */
	background: #d1d8d1;
	padding: 1em;
	font-size: 85%;
	box-shadow: 1.5em 1.5em 1.5em #444;
}

iframe {
	box-shadow: 1.5em 1.5em 1.5em #444;
	float:right;
	margin: 2em 2em 0.2em 2em;
}

div.bulletin {
	grid-auto-flow: column dense;
	border: thin solid #576707;
	border-radius: 0.5rem;
	gap: 3px;
}

div.bulletin dl {
	grid-template-columns: repeat(5, 1fr);
	column-gap: 10px;
	row-gap: 1em;
	grid-template-rows: auto auto;
	display: grid;
}

