@import url('https://fonts.googleapis.com/css?family=Source+Code+Pro&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;1,400&display=swap');

/*  Document-wide settings */
document {
    counter-reset: page 1;
    counter-reset: chapter 1;
    counter-reset: table 1;
    counter-reset: image 1;
    counter-reset: footnote 1;
}

/* Default formatting */

html, body {
    margin-left: 5mm;
    margin-right: 5mm;
}

/* ToC */
nav {
    font-family: 'Montserrat', sans-serif;
    font-size: 14;
    line-height: 1.2;
    text-decoration: none;
}

/* ToC numbering */

nav ul {
  counter-reset: item;
  list-style-type: none;
}

nav ul > li {
  counter-increment: item;
  display: block;
}

nav ul > li::before {
  content: counters(item, ".") ". ";
  font-weight: 500;
}

/* General */

p, .p {
    display: block;
    font-family: 'Montserrat', sans-serif;
    font-weight: normal;
    font-style: normal;
    text-align: justify;
    text-justify: inter-word;
    margin-left: 0mm;
    font-size: 14pt;
    line-height: 1.4;
    color: #000000;
}

p i, .p .i {
    font-family: 'Montserrat', sans-serif;
    font-style: italic;
}

p b, .p .b {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
}

.p .systemoutput {
    font-family: 'Source Code Pro', monospace;
}

[outputclass = 'small'] {
    font-size: 10pt;
}

/* Titles */

h1 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 30pt;
    font-variant: small-caps;
    color: #2e2273;
    padding-top: 20mm;
    padding-bottom: 10mm;
}

h2 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    font-size: 22pt;
    color: #2e2273;
    padding-left: 5mm;
}

h3 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 20pt;
    color: #2e2273;
    padding-left: 10mm;
}

h4 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 16pt;
    color: #2e2273;
    padding-left: 15mm;
}

/* Section numbering */

body { counter-reset: h1c; }

h1 { counter-reset: h2c; counter-increment: h1c; }
h1::before { content: counter(h1c) ". "; }
body > h1::before {content: none;}

h2 { counter-reset: h3c; counter-increment: h2c; }
h2::before { content: counter(h1c) "." counter(h2c) " "; }

h3 { counter-increment: h3c; }
h3::before { content: counter(h1c) "." counter(h2c) "." counter(h3c) " "; }

/* Notes */

div.note {
    display: block;
    background-color: #F2FAFF;
    border: 3px solid #37769D;
    border-radius: 10px;
    margin-top: 3mm;
    margin-bottom: 3mm;
}

div.important {
    background-color: #FFF8E5;
    border: 3px solid #EBBF3F;
    border-radius: 10px;
}

div.attention {
    display: block;
    background-color: #FFEAAC;
    border: 3px solid #EBBF3F;
    border-radius: 10px;
}

div.caution {
    display: block;
    font-family: 'Montserrat', sans-serif;
    font-weight: normal;
    font-style: normal;
    background-color: #FF8D57;
    border: 3px solid #B33900;
    border-radius: 10px;
}

span.note__title {
    display: inline;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    text-decoration: underline;
}

div.note__body {
    display: inline;
}

/* Various attributes */

.cite {
    font-family: 'Montserrat', sans-serif;
    font-style: italic;
}

.codeph {
    display: inline;
    font-family: 'Source Code Pro', monospace;
    font-size: 14pt;
    color: #269292;
    background-color: transparent;
}

.cmdname {
    font-family: 'Source Code Pro', monospace;
}

.varname {
    font-family: 'Montserrat', sans-serif;
    font-style: italic;
}

span.tt {
    font-family: 'Source Code Pro', sans-serif;
}

/* Code-like or AT text blocks */

.codeblock,
.codeblock code {
    font-family: 'Source Code Pro', monospace;
    font-size: 14pt;
    line-height: 1;
    color: #269292;
    background-color: transparent;
    white-space: pre;
}

.codeblock[outputclass ~= "tiny"],
.codeblock[outputclass ~= "tiny"] code {
    font-size: 10pt;
}

.codeblock[outputclass ~= "small"],
.codeblock[outputclass ~= "small"] code {
    font-size: 12pt;
}

p.lines {
    white-space: pre;
    line-height: 1;
    text-align: left;
}

/* Links */

a, a * {
    font-family: 'Montserrat', sans-serif;
    text-decoration: none;
    display: inline;
    color: #2e2273;
}

/* Footnotes */

span.fn {
    font-family: 'Montserrat', sans-serif;
    font-weight: normal;
    font-style: normal;
    color: #101010;
    font-size: 6pt;
    line-height: 1.2;
}

span.fn .p {
    font-family: 'Montserrat', sans-serif;
    font-weight: normal;
    font-style: normal;
    color: #101010;
    text-align: left;
    margin-left: 0mm;
    font-size: 6pt;
    line-height: 1;
}

:footnote-call {
    content: counter(footnote);
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    font-style: normal;
    text-decoration: underline;
    font-size: 6pt;
    line-height: 0mm;
    color: #2e2273;
}

span.fn::footnote-marker {
    font-size: 6pt;
    /*color: #2e2273;*/
    width: 5mm;
}

/* Tables */

table {
    font-family: 'Montserrat', sans-serif;
    font-size: 14pt;
    border: 1.5px solid black;
    margin-left: auto;
    margin-right: auto;
    margin-top: 3mm;
    margin-bottom: 3mm;
}

/* Smaller text */
table[outputclass = "small"] {
    font-size: 10pt;
}

table.centre {
    margin: auto;
}

table[outputclass = "noborder"] {
    border: none;
}

/* Avenir Next Font for number alignement */
table.AvenirNext {
    font-family: "AvenirNext-UltraLight", sans-serif;
    font-weight: 100;
}

th {
    border: 1.5px solid black;
    border-collapse: collapse;
    page-break-inside: avoid !important;
    background-color: #2f72ba;
    font-family: 'Montserrat', sans-serif;
    font-weight: normal;
    font-style: normal;
    color: white;
    hyphens: none;
    text-align: center;
}

th p {
    margin-left: 0mm;
    display: grid;
    hyphens: none;
}

th p.lines {
    text-align: center;
}

td {
    border: 1.5px solid black;
    border-collapse: collapse;
    page-break-inside: avoid !important;
    text-align: left;
    margin-left: 1mm;
    line-height: 1.4;
    hyphens: none;
}

table.centre td {
    text-align: center;
    margin-left: auto;
}

td em {
    font-family: 'Montserrat', sans-serif;
    font-style: italic;
}

td p {
    margin-left: 0mm;
    margin-bottom: 0mm;
    margin-top: 0mm;
    padding-left: 1mm;
    hyphens: none;
}

td p em {
    font-family: 'Montserrat', sans-serif;
    font-style: italic;
}

td p.lines {
    padding-left: 1mm;
}

td ol,
td ul {
    margin-top: 0mm;
    margin-bottom: 0mm;
}

/* Fake header */
tr.header {
    background-color: #2f72ba;
    font-family: 'Montserrat', sans-serif;
    font-weight: normal;
    font-style: normal;
    color: white;
    counter-reset: item-count 1;
}

table.noborder th,
table.noborder td {
    border: none;
    page-break-inside: auto;
}

table.breakable tr {
    page-break-inside: auto;
}

/* Small titles */
table.smalltitles th {
    font-size: 8pt;
}

/* Alternated Background */

tbody tr:nth-child(even) {
    background-color: #edf3f6;
}

table.noborder tbody tr:nth-child(even) {
    background-color: transparent;
}

/* Footnotes in tables */

/* Customize footnote calls, inside the table. */
a.table-fn-call {
    line-height: 0;
}

table a[type = 'fn'][callout] *[class ~= ".hi-d/sup"] {
    content: oxy_xpath("ancestor::*[contains(@class, 'topic/xref')]/@callout");
}

/* Customize the list containing all the table footnotes. */
ol.table-fn-container {
    counter-reset: table-footnote;
    font-family: 'Montserrat', sans-serif;
    font-size: 6pt;
}

/* Customize footnotes display, below the table. */
li.table-fn {
    counter-increment: table-footnote;
}

li.table-fn::marker {
    font-family: 'Montserrat', sans-serif;
    font-size: 6pt;
    content: counter(table-footnote, lower-roman);
    color: navy;
}

li.table-fn[callout]::marker {
    content: attr(callout);
    text-decoration: underline;
    color: navy;
}

/* Customize xrefs pointing to footnotes, inside the table. */
table a.table-fn-call {
    text-decoration: underline;
    color: navy;
}

table thead a.table-fn-call {
    text-decoration: underline;
    color: white;
}

table a.table-fn-call sup > sup:before {
    content: none;
}
table a.table-fn-call sup > sup:after {
    content: none;
}

/* Lists */

/*unordered-list-bullet-color-titles*/

ul li::marker,
ul li::before {
    color: #2f72ba;
}

table ul > li::marker,
table ul > li::before,
table ol > li::marker,
table ol > li::before {
    color: #101010;
}

/* Figures */

figure img {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

figure[outputclass = 'framed'] img {
    border: black 1px solid;
}

/* Figure and table titles must be centred */
table caption,
figure figcaption {
    text-align: center;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    font-size: 12pt;
    font-style: normal;
}


/* Definition lists */

dl > dt {
    font-family: 'Montserrat', sans-serif;
    font-style: italic;
    font-size: 9pt;
    color: #101010;
    text-align: left;
}
