/* 
 * +AMDG  This stylesheet was begun on 27 April 2005, the
 * feast of St. Peter Canisius, the Hammer of Heretics, and
 * is humbly dedicated to him and to the Immaculate Heart of
 * Mary, for their prayers, and to the Sacred Heart of
 * Jesus, for His mercy.
 */
/* include magin, padding, and border     */
* {
	box-sizing:  border-box;
}
/* some variable colors */
:root {
	--body-bg-color:  gray;
	--body-border-color:  gray;
	--link-border-color:  black;
	--main-bg-color:  #fafafa;
	--main-fg-color:  black;
	--main-link-fg-color:  green;
	--main-link-hover-fg-color:  #ffd700;
	--main-link-hover-bg-color:  green;
	--button-link-hover-fg-color:  green;
	--main-link-active-bg-color:  #ffd700;
	--main-link-active-fg-color:  green;
	--main-dimmed-fg-color:  gray;
	--hl-color:  green;
	--hl-border-color:  green;
	--versnum-color:  red;
	--light-fg-color:  #ffd700;
	--nav-bg-color:  #ffd700;
	--nav-fg-hover-color:  #ffd700;
	--dark-bg-color:  linear-gradient(to bottom right,#004d00,#009900);
	--heading-color:  green;
	--author-color:  black;
	--button-border-color:  #879637;
	--button-hl-border-color:  green;
	--button-text-color:  green;
	--button-bg-color:  linear-gradient(to bottom right,#ffff00,#f4e842);
	--button-hover-bg-color:  linear-gradient(to bottom right,#004d00,#009900);
	--bg-trans-color:  #00ff0040;
	--blog-date-color:  #666666;
}
/* reset browser style                    */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5,
h6, p, blockquote, pre, a, abbr, address, cite, code, del,
dfn, em, img, ins, kbd, q, s, samp, small, strong, sub, sup,
var, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label,
legend, table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, figure, figcaption,
footer, header, hgroup, menu, nav, output, ruby, section,
summary, time, mark, audio, video {
	margin:  0;
	padding:  0;
	border:  0;
	font-size:  100%;
	vertical-align:  baseline;
}
article, aside, details, figcaption, figure, footer, header,
hgroup, menu, nav, section, main {
	display:  block;
}
/* Format the background of the page      */
body {
	background-color: var(--body-bg-color);
	text-align: center;
}
/* Format all the commands for the topbar */
.topbar {
	overflow:  hidden;
	color: var(--light-fg-color);
	background:  var(--dark-bg-color);
	margin:  auto 0 0 0;
	font-family: serif;
	padding: 1px 1.5% 0 1.5%;
	border-width:  3px 3px 0 3px;
	vertical-align: middle;
	border-style:  outset outset none outset;
	border-color: var(--body-border-color);
	text-align: left;
	border-radius:  20px 20px 0 0;
}
.topbar h1 {
	color: var(--light-fg-color);
	vertical-align: middle;
	margin:  auto 0 auto 0;
	line-height:  1;
	font:  normal small-caps bold 3.0em serif;
	text-shadow:  1px 1px 1px #000000;
}
.topbar h1 p {
	display:  inline;
}
.topbar img {
	vertical-align: middle;
	border: none;
	padding: 1%;
	width:  100px;
}
.topbar a {
	text-decoration: none;
	color: var(--main-link-fg-color);
}
/* Format the version numbers for works   */
.versnum {
	color: var(--versnum-color);
	font-family: serif;
	font-style: italic;
}
.social {
	display:  block;
	float:  right;
}
.social a:hover {
	color: var(--light-fg-color);
	background-color:  var(--main-bg-color);
	border-style:  solid none solid none;
	border:  0;
}
.social img {
	width:  16px;
}
@counter-style dozenal {
	system: numeric;
	symbols: '0' '1' '2' '3' '4' '5' '6' '7' '8' '9' 'X' 'E';
}
/* Format the Main text                   */
main {
	color: var(--main-fg-color);
	font-family:  serif;
	background-color: var(--main-bg-color);
	text-align: justify;
	hyphens: auto;
	padding:  1em 12pt 2em 12pt;
	margin-bottom: auto;
	border-style:  none outset none outset;
	border-width:  0 3px 0 3px;
	border-color: var(--body-border-color);
	overflow:  hidden;
}
main a {
	color: var(--main-link-fg-color);
	text-decoration: underline;
}
main a:hover {
	color: var(--main-link-hover-fg-color);
	background-color: var(--main-link-hover-bg-color);
	border-color: var(--link-border-color);
	text-decoration: none;
	border-radius:  5px;
}
main a:active {
	color: var(--main-link-active-fg-color);
	background-color: var(--main-link-active-bg-color);
	border-style:  solid none solid none;
	border-width:  1px 0 1px 0;
	border-color: var(--link-border-color);
	text-decoration: none;
	border-radius:  5px;
}
main p {
	margin:  1em 0 1em 0;
}
main blockquote {
	margin:  1em 2em 1em 2em;
}
main p:first-of-type:first-letter {
	color: var(--heading-color);
	font-size: 2em;
	font-weight:  bold;
	line-height: 0.7em;
}
blockquote p:first-of-type:first-letter {
	all:  unset;
}
.fl {
	color:  var(--heading-color);
	font:  bold 150% serif;
}
.fw {
	font-variant:  small-caps;
	font-weight:  bold;
}
main em {
	font-style:  italic;
	font-weight:  bold;
}
main ul {
	list-style:  outside disc;
	margin:  1em 0 1em 1em;
}
main ul li {
	position:  relative;
	left:  1em;
	padding-right:  1em;
}
main ul ul {
	list-style:  circle;
	margin:  0 0 0 1em;
	padding:  0 1em 0 0;
}
main ol {
	margin:  0 0 0 2em;
	list-style-type: decimal;
}
main ol ol {
	margin:  0 0 0 2em;
	list-style-type: lower-alpha;
}
cite {
	font-style:  italic;
}
/* Special styles for aticles                            */
article {
	overflow:  hidden;
}
article p:first-of-type:first-letter {
	font-size: 1.5em;
	line-height: 0.7em;
}
/* page titles and authors                */
.pagetitle {
	text-align:  left;
	font: normal small-caps bold 300% serif;
	color:  var(--heading-color);
	margin:  2% 0 0 0;
	text-shadow:  1px 1px 1px #000000;
}
.pagesubtitle {
	text-align:  left;
	font: normal small-caps bold 150% serif;
	color:  var(--heading-color);
	margin:  0 0 0 0;
	text-shadow:  1px 1px 1px #000000;
}
.pageauthor {
	color: var(--author-color);
	font:  italic bold 100% serif;
	margin: 0em;
}
.pageauthor img {
	width:  16px;
}
.secttitle {
	text-align:  left;
	font:  normal small-caps bold 2rem serif;
	color:  var(--heading-color);
	text-shadow:  1px 1px 1px #000000;
	margin:  2% 0 0 0;
}
.subsecttitle {
	text-align:  left;
	font:  normal small-caps bold 1.5rem serif;
	color:  var(--heading-color);
	text-shadow:  1px 1px 1px #000000;
	margin:  2% 0 0 0;
}
.subsubsect {
	text-align:  left;
	font:  normal small-caps bold 1.25rem serif;
	color:  var(--heading-color);
	text-shadow:  1px 1px 1px #000000;
	margin:  2% 0 0 0;
}
/* Format the AMDG div                    */
.dedic {
	text-align: center;
	color: var(--light-fg-color);
	font-size: 0.7em;
}
.dedic a {
	color: var(--light-fg-color);
	text-decoration: none;
}
.dedic a:hover {
	color: var(--light-fg-color);
	text-decoration: none;
	border-style:  none;
}
/* Format the toolbar                     */
nav {
	clear:  both;
	margin:  0 -1.5% 0 -1.5%;
	font-family: serif;
	font-size: 0.8em;
	text-align: center;
	padding:  3px 0 3px 0;
	border-color:  var(--button-border-color);
	border-style: outset;
	border-width:  2px 0 2px 0;
	background-color:  var(--nav-bg-color);
}
nav li {
	display: inline-block;
	list-style-type: none;
	background:  var(--button-bg-color);
	font-weight:  bold;
	padding:  2px 0.5em 2px 0.5em;
	line-height: 1.7em;
	text-align:  center;
	min-width:  10%;
	border: 2px outset gray;
	border-radius:  5px;
}
nav li#search {
	all: unset;
	display:  inline-block;
	min-width:  10%;
	margin:  2px 0px 2px 0px;
}
nav li:hover {
	background:  var(--button-hover-bg-color);
	color:  var(--nav-fg-hover-color)!important;
	border-style:  inset;
}
nav li:hover a {
	color:  var(--nav-fg-hover-color)!important;
}
nav li a {
	display:  block;
	width:  100%;
	color: var(--button-text-color)!important;
}
nav li#category {
	font-style:  italic;
	border-color:  var(--button-hl-border-color);
}
::placeholder {
	font-style:  italic;
}
/* footer stuff                           */
.footstuff {
	clear:  both;
	text-align:  center;
	font-size:  0.75rem;
	color: var(--light-fg-color);
	background:  var(--dark-bg-color);
	padding:  1% 0 1% 0;
	border:  0;
	margin:  0pt;
	border-radius:  0 0 20px 20px;
	border-color: var(--body-border-color);
	border-width:  0 3px 3px 3px;
	border-style:  none outset outset outset;
}
.footstuff a {
	color: var(--main-link-hover-fg-color);
}
.footstuff a:hover {
	background-color:  var(--main-link-hover-bg-color);
	border-width:  1px 0 1px 0;
	border-style:  solid;
	border-color:  var(--light-fg-color);
	text-decoration: none;
}
.footstuff img {
	margin:  2px 0 2px 0;
}
.footstuff a img {
	width:  20px;
}
a.lic {
	border:  0;
	all:  unset;
}
.lic img {
	padding-top:  0.25em;
}
a.lic:hover {
	border:  0;
	all:  unset;
}
/* Image Link                             */
.mainlogo {
	text-decoration:  none;
	border-style:  none;
	border-width:  0pt;
}
.mainlogo:hover {
	text-decoration:  none;
	border-style:  none;
	border-width:  0pt;
}
.gplogo:hover {
	text-decoration:  none;
	border-style:  none;
	border-width:  0pt;
}
/* Format the follow buttons  */
.follow {
	clear:  both;
	float:  right;
	padding:  3px 6px 3px 6px;
	text-align:  center;
	border-style:  outset;
	border-radius:  10px;
	border-color:  var(--body-border-color);
	border-width:  1px 1px 1px 1px;
	width:  10em;
}
.follow img {
	padding:  0pt;
	margin:  0pt;
	width:  1.5em;
}
.follow a:hover {
	border-width:  0px;
}
.supportus {
	clear:  both;
	float:  right;
	padding:  3px 6px 3px 6px;
	text-align:  center;
	border-style:  outset;
	border-radius:  10px;
	border-color:  var(--body-border-color);
	border-width:  1px 1px 1px 1px;
	width:  10em;
}
.supportlabel {
	font:  normal small-caps bold 1.0em serif;
}
.supportus img {
	padding:  0;
	margin:  0;
	width:  2.0em;
}
search {
	clear:  both;
	float:  right;
	padding:  3px 6px 3px 6px;
	text-align:  center;
	width:  10em;
}
search input {
	width:  10em;
}
/* style the links to the works                          */
a.thelink {
	font-style:  italic;
	font-variant:  small-caps;
	font-weight:  bold;
	border-style:  solid;
	border-color:  var(--main-link-fg-color);
	border-width:  1pt;
	padding-left:  1ex;
	padding-right:  1ex;
	text-decoration:  none;
	border-radius:  20px;
}
a.thelink:hover {
	border-radius:  20px;
}
.pageversion {
	color:  var(--versnum-color);
	font-style: italic;
}
.hl {
	width:  100%;
	font-size:  1.25rem;
	background:  var(--button-bg-color);
	padding:  3px;
	border-radius:  20px;
	border-width:  2px;
	border-style:  solid;
	border-color:  var(--hl-border-color);
}
.hltitle {
	color:  var(--hl-color);
	width:  100%;
	text-align:  center;
	font-size:  2rem;
	font-variant:  small-caps;
	font-weight:  bolder;
}
.hl a {
	font-style:  italic;
	font-weight:  bolder;
}
.newlist {
	padding-right:  1em;
}
.newlist li {
	display:  flex;
	flex-wrap:  wrap;
	list-style-type:  circle;
}
.hllabel {
	font-variant:  small-caps;
	font-weight:  bold;
	min-width:  6rem;
}
.hllabel::after {
	content:  ":";
}
.hltext {
	flex:  1;
	text-align:  left;
}
.hldate {
	font-size:  0.75rem;
	font-style:  italic;
	padding-left:  6rem;
	width:  100%;
}
.hldate::before {
	content:  "(";
}
.hldate::after {
	content:  ")";
}
dt {
	font-weight:  bold;
}
dd {
	margin-left:  2em;
}
.latin {
	font-style:  italic;
}
.permalink {
	size:  75%;
	font-style:  italic;
	font-weight:  bold;
}
aside {
	border-radius:  20px;
	float:  right;
	width:  50%;
	font:  italic normal bold 2.0em serif;
	background:  var(--bg-trans-color);
	padding: 0.5em;
	margin:  0 0 0.5em 0.5em;
}
.fn {
	vertical-align:  super;
	font-size:  65%;
}
/* Print styling                                         */
@media print {
	* {
		background-color:  white !important;
		color:  black !important;
	}
	body main {
		border:  0pt;
	}
	.mainpart {
		border:  0pt;
	}
	.topbar {
		border:  0pt;
	}
	.footstuff {
		border:  0pt;
		border-style:  solid;
		border-top-width:  1pt;
		border-color:  black;
	}
	nav {
		display:  none;
	}
	.follow, .social {
		display:  none;
	}
	main a {
		word-wrap:  break-word;
	}
}
@media (max-width:  640px) {
	.dedic {
		padding-bottom:  0.5em;
	}
	.social {
		float:  none;
	}
	.topbar h1 {
		font-size:  2.0em;
		padding-top:  0.5em;
	}
	.topbar h1 p {
		display:  table-cell;
		padding-top:  0.5em;
	}
	.mainlogo {
		float:  left;
		display:  block;
		text-align:  center;
		padding:  0 0.5em 0.5em 0.5em;
	}
	nav {
		clear:  both;
	}
	.follow {
		float:  none;
		margin:  auto;
	}
	.follow img {
		width:  15px;
	}
	.supportus {
		float:  none;
		margin:  auto;
	}
	.supportus img {
		width:  20px;
	}
	.supportlabel {
		font-size:  0.75em;
	}
	search {
		float:  none;
		margin:  auto;
	}
	aside {
		font-size:  1em;
	}
}
/*@media (prefers-color-scheme: light) {
	:root {
		--body-bg-color:  gray;
		--body-border-color:  gray;
		--link-border-color:  black;
		--main-bg-color:  #121212;
		--main-fg-color:  #fafafa;
		--main-link-fg-color:  #00c000;
		--main-link-hover-fg-color:  #ffd300;
		--main-link-hover-bg-color:  #00a000;
		--button-link-hover-fg-color:  #ffd300;
		--main-link-active-bg-color:  #ffd300;
		--main-link-active-fg-color:  #00a000;
		--main-dimmed-fg-color:  gray;
		--hl-color:  green;
		--hl-border-color:  green;
		--versnum-color:  red;
		--light-fg-color:  #00a000;
		--dark-bg-color:  #121212;
		--nav-bg-color:  #121212;
		--nav-fg-hover-color:  #ffd700;
		--heading-color:  #00c000;
		--author-color:  #fafafa;
		--button-border-color:  gray;
		--button-hl-border-color:  #00c000;
		--button-text-color:  #ffd300;
		--button-bg-color:  #00a000;
		--button-hover-bg-color:  linear-gradient(to bottom right,#004d00,#009900);
		--bg-trans-color:  #00000000;
		--blog-date-color:  #666666;
	}
}*/
