:root {
  --color-mbox : rgba(0,0,0,0.2);
  --margin: 4px;
}

a { text-decoration: underline; color: #004b71!important; }
table a { text-decoration: none; }

pre.code { font-size: 0.65rem; border: 1px solid #ddd; padding: 10px; border-radius: 4px; background-color: #f8f8f8; }
code { color: #8f27a1; }

/* Tables */
table { font-size: 8pt; border-collapse: collapse; margin: 1rem; max-width: 100%; }
.table { width:calc(100% - 2rem); }
.table thead td { font-weight:bold; }

td,th {
  text-align: left;
  padding: calc(4px + 0.1vw) 0.2rem; /* https://matthewjamestaylor.com/responsive-padding */
  border-bottom: 1px solid #ddd;
  break-inside:avoid;
  vertical-align: top;
}

thead {display: table-header-group;}
tfoot {display: table-footer-group;}

tr { border-bottom: 1px solid #ddd; }

table.hcol { border-top: 1px solid #ddd; }

@media print {
  .pagedjs_page {
    margin: 0 auto!important;
    flex: none;
    box-shadow: none;
  }
}

@media screen {

  body {
    background-color: whitesmoke;
  }

  .pagedjs_page {
    background-color: #fdfdfd;
    /* margin: /*calc(var(--margin) * 4) var(--margin);*/ */
    margin: 10px auto;
    flex: none;
    /* box-shadow: 0 0 6px 1px var(--color-mbox); */
  }

  .pagedjs_pages {
    width: calc((var(--pagedjs-width) * 2) + (var(--margin) * 4));
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    transform-origin: 0 0;
    margin: 0 auto;
  }
}

img {
	max-width: 100%;
	margin-left: auto;
    margin-right: auto;
    display: block;
    height: auto;
}

@page {
  size: A4 portrait;
  margin: 2cm 1.5cm 2cm 1.5cm;
  /* marks: crop; */

  @footnote {
    margin: 0.6em 0 0 0;
    padding: 0.3em 0 0 0;
    max-height: 10em;
  }

  @bottom-left {
    content: "KF";
  }
  @bottom-center {
   content: counter(page);
  }
  @bottom-right {
   content: var(--user);
  }
}

section {
  break-before: right;
  break-after: always;
}


body {
font-size: 10pt;
/*line-height: 1.33rem;*/
font-family: 'Open Sans', sans-serif;
}

p {
padding: 0;
margin: 0 0 1rem 0;
text-align: justify;
}

header + p:first-line {
/*text-transform: lowercase !important;
font-variant: small-caps;*/
font-size: 1.1em;
}

p + p {
	margin-top: 1rem;
}

img.icon { display:inline; width:18px; height:18px; }
img.icon-sm { display:inline; width:12px; height:12px; margin-bottom: 0px}

.op60 { opacity: 0.6; }
.op40 { opacity: 0.4; }

/* h1:not(:first-child) { page-break-before: always; } */
.pagebreak { page-break-before: always; }

h1 {
font-size: 1.5em;
line-height: 1.33em;
padding-bottom: 0em;
text-align: left;
/* text-transform: uppercase; */
font-weight: normal;
/*letter-spacing: 2px;*/
}

h1, h2, h3, h4 {
	page-break-after: avoid;
  color: #004b71;
}

.title {
display: block;
font-size: 2em;
line-height: 2em;
text-align: center;
padding-bottom: 1em;
text-align: left;
font-weight: bold;
/*letter-spacing: 2px;*/
color: #004b71;
}

.authors, .author {
font-size: 0.75rem;
padding-bottom: 1rem;
}

.subtitle { display: block; font-size: 1.2em; line-height: 1.2em; padding-bottom: 1em;
color: #004b71; margin-top: -3em; font-style: italic; }

h2 {
text-align: left;
font-size: 1.33em;
line-height: 1.33em;
padding: 0;
margin: 0;
font-weight: normal;
letter-spacing: 1px;
}

h2 + * {
	margin-top: 1rem;
}

/* tags style for span element */
.tag {
  color: white;
  background: #20a4e7;
  padding: 0.1em 0.3em;
  line-height: 0.6em;
  /*font-size: 0.75rem;*/
  border: 0;
  border-radius: 0.4em;
  font-weight: bold;
}

.tag-sm {
	font-size: 0.85em;
}

/* NAVIGATION */

#toc ol {
list-style-type: none;
margin: 0 0 0 2em;
padding: 0 0 0 0;
}

#toc ol ol {
list-style-type: none;
margin: 0 0 0 1em;
padding: 0 0 0 0;
}

#toc ol li {
margin: 0 0 0 0;
padding: 0 0 0 0;
}

#toc ol li a {
text-decoration: none;
font-family: sans-serif;
}

.toc-short ol li a {
text-decoration: none;
font-family: sans-serif;
}


.toc-short ol {
list-style-type: none;
margin: 0 0 0 2em;
padding: 0 0 0 0;
}

.center {
text-align: center;
text-indent: 0;
}






   .direction-rw {
   text-align: center;
   text-indent: 0;
   font-style: italic;
   margin: 1em 0 1em 0;
   }

.source-rw {
margin-bottom: 0em;
text-align: right !important;
font-variant: small-caps;
text-transform: lowercase;
font-size: 1.1em;
page-break-before: avoid;
}

div.block-rw {
border-top: 2px solid #EEE;
border-bottom: 2px solid #EEE;
padding: 6pt 0 6pt 0;
}


