
/* Width */
p, ul, ol, dl, figcaption, .readable { width: 40em; }
.full, .full > p, .full > ul, .full > ol, .full > dl { width: auto; }
/* Element spacing */
p, ul, ol, dl, table { margin: 1em 0; clear: both; }
li, dd { margin: 0.25em; }
table th, table td { padding: 0.3em; }
/* Indentation */
ul, ol, dl, pre { margin-left: 3em; }
dd, li { margin-left: 1.5em; }
ul.no-margin, ol.no-margin, dl.no-margin, li.no-margin, dd.no-margin { margin-left: 0; }
.indent { margin-left: 4.5em; }
/* Non text should not be justified */
.nontext { text-align: left; }
/* Standard styles */
em, i { font-style: italic; }
strong, b { font-weight: bold; }
small, .small { font-size: 80%; }
sup { vertical-align: super; font-size: 80%; }
sub { vertical-align: sub; font-size: 80%; }
/* Modifiers */
.quiet { color: #666; }
.emphasis { font-style: italic; }
.dense { line-height: 80%; }
.short { width: 5em!important; }

/* Headers */
h1, h2, h3, h4, h5, h6 { margin: 2em 0 1em; font-weight: bold; font-size: 120%; }
h1 { font-size: 150%; }

/* Lists */
ul, .disc { list-style-type: disc; }
ul > li > ul, .circle { list-style-type: circle; }
ul > li > ul > li > ul, .square { list-style-type: square; }
ol, .decimal { list-style-type: decimal; }
ol > li > ol, .roman { list-style-type: lower-roman; }
ul.suppress, ol.suppress { list-style-type: none; }

/* dl */
dt { font-weight: bold; margin-right: 1em; }
dl.kv { margin: 0 0 0 3em; }
dl.kv > dt { font-weight: normal; }

/* Figures */
figure { margin: 1em; border: 1px dashed black; border-width: 0px 0; border-bottom: 1px dashed black; width: intrinsic; width: -moz-max-content; width: -webkit-max-content }
figure > figcaption { text-align: center; font-style: italic; margin: 0.5em 0; }
img { border: 1px solid black; }

/* Blocks for: code, output sample and quotes */
pre { overflow: auto; font-family: monospace; }
pre > code, pre > samp, pre > kbd, blockquote { border: 1px solid #e0e0e0; padding: 1em; background-color: #fafafa; display: block; }
pre > code { border-left: 0.5em solid #ffda89; }
pre > samp, pre > kbd { border-left: 0.5em solid #ff9999; }
blockquote { border-left: 0.5em solid #73d3ff; }
blockquote:before, blockquote:after { content: ""; }

/* Inline highlighting */
code, samp, kbd { font-family: monospace; padding: 0.3em; background-color: #f2f2f2; }
var { border-bottom: 1px solid #ff9999; }

/* Forms */
input[type=text], input[type=email], input[type=password], textarea { width: 100%; padding: 0.5em; }
input[type=number] { padding: 0.5em; width: 6em; }
input[type=checkbox], input[type=radio] { margin: 0 0.5em; }
select { padding: 0.5em; }
textarea.full, .full > textarea { height: 40em; }
button { min-width: 10em; padding: 0.3em 2em; margin: 1em 0; }

dl input[type=text], dl input[type=email], dl input[type=password] { width: auto; }

/* Tables */
table { min-width: 40em; text-align: left; border: 1px solid #ced7dd; table-layout: fixed; border-collapse: collapse; }
thead, tfoot { background-color: #e5eaed; }
tfoot th.title, tfoot td.title { font-weight: bold; text-align: right; }
tbody > tr:nth-child(even) { background-color: #f1f3f5; }
tbody > tr:hover { background-color: #d9e1e5; }
table th, table tr.th, table tr > .th { font-weight: bold; }
table th.number { text-align: right; }
table td.number { text-align: right; font-family: monospace; }
