@charset "utf-8";

:root {
  font-family: sans-serif;
  --tab_size: 4;
}

.theme-green, .theme-blue {
  --unknown_color: lightgray;
  --low_color: #FF6666;
  --medium_color: #F9FD63;
  --partial_covered_color: var(--medium_color);
  --uncovered_color: #FF8C8C;
  --warning_color: orangered;
  --notTakenBranch_color: red;
  --notTakenCondition_color: red;
  --uncheckedDecision_color: darkorange;
  --notTakenDecision_color: red;
  --notInvokedCall_color: red;
  --excluded_color: darkkhaki;
  /* Colors taken from github theme */
  --color-fg-default: #1F2328;
  --color-canvas-default: #ffffff;
  --color-border-default: #d0d7de;
  --color-border-muted: hsla(210, 18%, 87%, 1);
  --color-fg-muted: #656d76;
  --color-canvas-subtle: #f6f8fa;
  --color-accent-subtle: #ddf4ff;;
}

.theme-green {
  --high_color: #85E485;
  --covered_color: #85E485;
  --takenBranch_color: green;
  --takenCondition_color: green;
  --takenDecision_color: green;
  --invokedCall_color: green;
}

.theme-blue {
  --high_color: #66B4FF;
  --covered_color: #66B4Ff;
  --takenBranch_color: blue;
  --takenCondition_color: blue;
  --takenDecision_color: blue;
  --invokedCall_color: blue;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
  color: var(--color-fg-default);
  background-color: var(--color-canvas-default)
}

h1
{
  text-align: center;
  margin: 0;
  padding-bottom: 10px;
  font-size: 20pt;
  font-weight: bold;
}

hr {
  height: 0;
  margin: 15px 0;
  overflow: hidden;
  background: rgba(0,0,0,0);
  border: 0;
  border-bottom: 1px solid var(--color-border-muted);
}

.sticky {
  position: sticky;
  top: 0;
}

a:link
{
  color: navy;
  text-decoration: underline;
}
a:visited
{
  color: maroon;
  text-decoration: underline;
}

.js-enabled .js-enabled-hidden {
  display: none
}

.js-disabled .js-disabled-hidden {
  display: none
}

.block-separator {
  border-bottom: 5px solid var(--color-border-muted);
}

@media (max-width: 544px) {
  .filelist .Box-row {
    flex-direction: column;
  }
  .functionslist .Box-row {
    flex-direction: column;
  }

  .filelist .Box-row > div {
    width: 100%;
  }
  .functionslist .Box-row > div {
    width: 100%;
  }
}

button.button_toggle_coveredLine,
button.button_toggle_uncoveredLine,
button.button_toggle_excludedLine,
button.button_toggle_partialCoveredLine {
  margin-left: 1em;
  border: 1px solid;
  border-radius: 6px;
  color: var(--color-fg-default);
  display: inline-flex;
  align-items: center;
  text-decoration: line-through;
}
button.button_toggle_coveredLine.show_coveredLine,
button.button_toggle_uncoveredLine.show_uncoveredLine,
button.button_toggle_excludedLine.show_excludedLine,
button.button_toggle_partialCoveredLine.show_partialCoveredLine {
  text-decoration: none;
}

button.button_toggle_coveredLine {
  background-color: var(--covered_color) !important;
}
button.button_toggle_uncoveredLine {
  background-color: var(--uncovered_color) !important;
}
button.button_toggle_excludedLine {
  background-color: var(--excluded_color) !important;
}
button.button_toggle_partialCoveredLine {
  background-color: var(--partial_covered_color) !important;
}

div.nav {
  margin-left: auto;
}

a.nav {
  text-decoration: none;
  color: grey;
  padding-left: 1em;
  white-space: nowrap;
  overflow: hidden;
}

a.nav:hover {
  text-decoration: underline;
}

a.nav.prev::after {
  content: "« prev";
}

a.nav.index::after {
  content: "^ index";
}

a.nav.next::after {
  content: "» next";
}

.sortable {
  cursor: pointer;
}

.sorted-ascending::after {
  content: " ↑";
  white-space: pre;
}

.sorted-descending::after {
  content: " ↓";
  white-space: pre;
}

.source-table-container {
  overflow-x: auto;
}

#scroll_marker {
  position: fixed;
  z-index: 3;
  right: 0;
  top: 0;
  width: 12px;
  height: 100%;
  background-color: var(--color-canvas-default);
  border-left: 1px solid var(--color-border-default);
  will-change: transform;
}

#scroll_marker .marker {
  background: #cccccc;
  position: absolute;
  min-height: 3px;
  width: 100%;
}
/*** Summary formats ***/

.summary
{
  display: flex;
  flex-flow: row wrap;
  max-width: 100%;
  justify-content: flex-start;
}

.summary > table
{
  flex: 1 0 7em;
  border: 0;
}

.summary > :last-child {
  margin-left: auto;
}

table.legend
{
  color: black;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  margin-left: 16px;
}

table.legend th[scope=row]
{
  font-weight: normal;
  text-align: right;
  white-space: nowrap;
}

table.legend td
{
  color: blue;
  text-align: left;
  white-space: nowrap;
  padding-left: 5px;
}

table.legend td.legend
{
  color: black;
  font-size: 80%;
}

table.legend td.warning_text
{
  color: var(--warning_color);
}

table.coverage
{
  border-collapse: collapse;
  margin-right: 16px;
}

table.coverage td,
table.coverage th
{
  text-align: right;
  color: black;
  font-weight: normal;
  white-space: nowrap;
  padding-top: 3px;
  padding-bottom: 3px;
  padding-left: 5px;
  padding-right: 4px;
}

table.coverage td
{
  background-color: LightSteelBlue;
}

table.coverage th[scope=row]
{
  color: black;
  font-weight: normal;
  white-space: nowrap;
}

table.coverage th[scope=col]
{
  color: blue;
  font-weight: normal;
  white-space: nowrap;
}

table.legend span
{
  margin-right: 4px;
  padding: 2px;
}

table.legend span.coverage-unknown,
table.legend span.coverage-none,
table.legend span.coverage-low,
table.legend span.coverage-medium,
table.legend span.coverage-high
{
  padding-left: 0.5em;
  padding-right: 0.5em;
}

table.legend span.coverage-unknown,
table.coverage td.coverage-unknown
{
  background-color: var(--unknown_color) !important;
}

table.legend span.coverage-none,
table.legend span.coverage-low,
table.coverage td.coverage-none,
table.coverage td.coverage-low
{
  background-color: var(--low_color) !important;
}

table.legend span.coverage-medium,
table.coverage td.coverage-medium
{
  background-color: var(--medium_color) !important;
}

table.legend span.coverage-high,
table.coverage td.coverage-high
{
  background-color: var(--high_color) !important;
}

/*** End of Summary formats ***/
/*** Meter formats ***/

/* Common */
meter {
  -moz-appearance: none;

  width: 200px;
  min-width: 4em;
  max-width: 15em;
  height: 0.75em;
  padding: 0;
  vertical-align: baseline;
  margin-top: 3px;
  /* Outer background for Mozilla */
  background: none;
  background-color: whitesmoke;
}

/* Webkit */

meter::-webkit-meter-bar {
  /* Outer background for Webkit */
  background: none;
  background-color: whitesmoke;
  height: 0.75em;
  border-radius: 0px;
}

meter::-webkit-meter-optimum-value,
meter::-webkit-meter-suboptimum-value,
meter::-webkit-meter-even-less-good-value
{
  /* Inner shadow for Webkit */
  border: solid 1px black;
}

meter.coverage-none::-webkit-meter-optimum-value,
meter.coverage-low::-webkit-meter-optimum-value
{
  background: var(--low_color);
}

meter.coverage-medium::-webkit-meter-optimum-value
{
  background: var(--medium_color);
}

meter.coverage-high::-webkit-meter-optimum-value
{
  background: var(--high_color);
}

/* Mozilla */

meter::-moz-meter-bar
{
  box-sizing: border-box;
}

meter:-moz-meter-optimum::-moz-meter-bar,
meter:-moz-meter-sub-optimum::-moz-meter-bar,
meter:-moz-meter-sub-sub-optimum::-moz-meter-bar
{
  /* Inner shadow for Mozilla */
  border: solid 1px black;
}

meter.coverage-none:-moz-meter-optimum::-moz-meter-bar,
meter.coverage-low:-moz-meter-optimum::-moz-meter-bar
{
  background: var(--low_color);
}

meter.coverage-medium:-moz-meter-optimum::-moz-meter-bar
{
  background: var(--medium_color);
}

meter.coverage-high:-moz-meter-optimum::-moz-meter-bar
{
  background: var(--high_color);
}

/*** End of Meter formats ***/
div.file-list
{
  border: 0;
  border-spacing: 1px;
}

div.file-list.coverage-unknown > span:not(:has(meter))
{
  background-color: var(--unknown_color) !important;
}

div.file-list.coverage-none > span:not(:has(meter)),
div.file-list.coverage-low > span:not(:has(meter))
{
  background-color: var(--low_color) !important;
}

div.file-list.coverage-medium > span:not(:has(meter))
{
  background-color: var(--medium_color) !important;
}

div.file-list.coverage-high > span:not(:has(meter))
{
  background-color: var(--high_color) !important;
}

div.file-list > span:has(meter)
{
  margin-right: 5px !important;
}

div.file-list > span:not(:has(meter))
{
  color: black !important;
  padding-left: 5px !important;
  padding-right: 5px !important;
  margin-left: 0px !important;
  margin-right: 0px !important;
  text-align: right
}

div.file-list > span:first-child
{
  min-width: 3.5em !important;
}

div.file-list > span:last-child
{
  min-width: 4.5em !important;
}
td.CoverValue
{
  text-align: right;
  white-space: nowrap;
}

.coveredLine.show_coveredLine
{
  background-color: var(--covered_color) !important;
}

.partialCoveredLine.show_partialCoveredLine
{
  background-color: var(--partial_covered_color) !important;
}

.uncoveredLine.show_uncoveredLine
{
  background-color: var(--uncovered_color) !important;
}

.excludedLine.show_excludedLine
{
  background-color: var(--excluded_color) !important;
}

.linebranch, .linecondition, .linedecision, .linecall, .linecount, .lineblockids
{
  font-family: monospace;
  border-right: 1px gray solid;
  background-color: lightgray;
  white-space: nowrap;
}
.linebranch, .linecondition, .linedecision, .linecall
{
  text-align: left;
}
.linecount
{
  text-align: right;
}

details summary {
  cursor:pointer;
}

.linebranchDetails[open]>summary::before,
.lineconditionDetails[open]>summary::before,
.linedecisionDetails[open]>summary::before,
.linecallDetails[open]>summary::before
{
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 80;
  display: block;
  cursor: default;
  content: " ";
  background: rgba(0, 0, 0, 0);
}

.linebranchSummary, .lineconditionSummary, .linedecisionSummary, .linecallSummary
{
  white-space: nowrap;
}

.linebranchContents, .lineconditionContents, .linedecisionContents, .linecallContents
{
  font-family: monospace;
  font-size: medium;
  text-align: left;
  white-space: nowrap;
  position: absolute;
  padding: 1em;
  background: white;
  border: solid gray 1px;
  box-shadow: 5px 5px 10px gray;
  z-index: 1; /* show in front of the table entries */
}

.functionName
{
  font-style: italic !important;
  font-weight: bolder !important;
}

.excludedBranch
{
  color: var(--takenBranch_color) !important;
}

.takenBranch
{
  color: var(--takenBranch_color) !important;
}

.notTakenBranch
{
  color: var(--notTakenBranch_color) !important;
}

.excludedCondition
{
  color: var(--takenCondition_color) !important;
}

.takenCondition
{
  color: var(--takenCondition_color) !important;
}

.notTakenCondition
{
  color: var(--notTakenCondition_color) !important;
}

.takenDecision
{
  color: var(--takenDecision_color) !important;
}

.notTakenDecision
{
  color: var(--notTakenDecision_color) !important;
}

.uncheckedDecision
{
  color: var(--uncheckedDecision_color) !important;
}

.excludedCall
{
  color: var(--invokedCall_color) !important;
}

.invokedCall
{
  color: var(--invokedCall_color) !important;
}

.notInvokedCall
{
  color: var(--notInvokedCall_color) !important;
}

.src
{
  padding-left: 12px;
  text-align: left;

  font-family: monospace;
  white-space: pre;

  tab-size: var(--tab_size);
  -moz-tab-size: var(--tab_size);
}

span.takenBranch,
span.notTakenBranch,
span.takenDecision,
span.notTakenDecision,
span.uncheckedDecision
{
  font-family: monospace;
  font-weight: bold;
}

pre
{
  height : 15px;
  margin-top: 0;
  margin-bottom: 0;
}

.listOfFunctions td, .listOfFunctions th {
  padding: 0 10px;
}
.listOfFunctions th
{
  text-align: center;
  color: white;
  background-color: SteelBlue;
}
.listOfFunctions tr > td {
  background: aliceblue;
}
.listOfFunctions tr:nth-child(even) > td {
  background: LightSteelBlue
}
.listOfFunctions tr:hover > td
{
  background-color: #ddd;
}
.listOfFunctions tr > td > a
{
  text-decoration: none;
  color: inherit;
}

.source-line
{
  height : 15px;
  margin-top: 0;
  margin-bottom: 0;
}

.lineno
{
  background-color: #EFE383;
  border-right: 1px solid #BBB15F;
  text-align: right;
  unicode-bidi: embed;
  font-family: monospace;
  white-space: pre;
}

.lineno > a
{
  text-decoration: none;
  color: inherit;
}

.file-source table
{
  border-spacing: 0;
}

.file-source table td,
.file-source table th
{
  padding: 1px 10px;
}

.file-source table th
{
  font-family: monospace;
  font-weight: bold;
}

.file-source table td:last-child
{
  width: 100%;
}
.color-fg-muted {
  color: var(--color-fg-muted) !important
}

.text-mono {
  font-family: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace !important
}
.text-small {
  font-size: 12px !important
}

.Layout-main {
  min-width: 0
}

@media(max-width: 543.98px) {
  .Layout {
    grid-auto-flow: row;
    grid-template-columns: 1fr !important
  }

  .Layout .Layout-main {
    grid-column: 1 !important;
    width: 100% !important
  }
}

.Layout-main .Layout-main-centered-lg {
  margin-left: auto;
  margin-right: auto
}

.Box {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
  font-size: var(--body-font-size, 14px);
  line-height: 1.5;
  color: var(--color-fg-default);
  background-color: var(--color-canvas-default);
  border-color: var(--color-border-default);
  border-radius: var(--borderRadius-medium, 6px);
  border-style: solid;
  border-width: var(--borderWidth-thin, 1px)
}

.Box-header {
  background-color: var(--color-canvas-subtle);
  border-color: var(--color-border-default);
  border-style: solid;
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
  border-width: 1px;
  margin: -1px -1px 0;
  padding: 16px;
}

.Box-row {
  border-top: var(--borderWidth-thin, 1px) solid var(--color-border-muted);
  list-style-type: none;
  margin-top: calc(var(--borderWidth-thin, 1px)*-1);
  padding: var(--stack-padding-normal, 16px)
}

.Box-row:first-of-type {
  border-top-left-radius: var(--borderRadius-medium, 6px);
  border-top-right-radius: var(--borderRadius-medium, 6px)
}

.Box-row:last-of-type {
  border-bottom-left-radius: var(--borderRadius-medium, 6px);
  border-bottom-right-radius: var(--borderRadius-medium, 6px)
}

.Box-row--focus-gray:hover {
  background-color: var(--color-canvas-subtle) !important;
}

.filelist .Box-row:nth-child(2n+3){
  background-color: var(--color-accent-subtle);
}

.functionslist .Box-row:nth-child(2n+3){
  background-color: var(--color-accent-subtle);
}

.d-flex {
  display: flex !important
}

.flex-auto {
  flex: auto !important
}

.flex-justify-end {
  justify-content: flex-end !important
}

.flex-justify-center {
  justify-content: center !important
}

.flex-wrap {
  flex-wrap: wrap !important
}

.flex-items-baseline {
  align-items: baseline !important
}

.flex-space-between {
  justify-content: space-between !important
}

.min-width-0 {
  min-width: 0 !important
}

.m-3 {
  margin: var(--base-size-16, 16px) !important
}

.py-2 {
  padding-top: var(--base-size-8, 8px) !important;
  padding-bottom: var(--base-size-8, 8px) !important;
}

.col-2,
.col-md-2
{
  width: 12.5%
}

.css-truncate.css-truncate-target {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: inline-block;
  max-width: 125px;
  vertical-align: top
}

.d-block {
  display: block !important
}

.width-fit {
  max-width: 100% !important
}

.text-center {
  text-align: center !important
}

/* pygments syntax highlighting */
pre { line-height: 125%; }
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
.hll { background-color: #ffffcc }
.c { color: #3D7B7B; font-style: italic } /* Comment */
.err { border: 1px solid #F00 } /* Error */
.k { color: #008000; font-weight: bold } /* Keyword */
.o { color: #666 } /* Operator */
.ch { color: #3D7B7B; font-style: italic } /* Comment.Hashbang */
.cm { color: #3D7B7B; font-style: italic } /* Comment.Multiline */
.cp { color: #9C6500 } /* Comment.Preproc */
.cpf { color: #3D7B7B; font-style: italic } /* Comment.PreprocFile */
.c1 { color: #3D7B7B; font-style: italic } /* Comment.Single */
.cs { color: #3D7B7B; font-weight: bold; font-style: italic } /* Comment.Special */
.gd { color: #A00000 } /* Generic.Deleted */
.ge { font-style: italic } /* Generic.Emph */
.ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
.gr { color: #E40000 } /* Generic.Error */
.gh { color: #000080; font-weight: bold } /* Generic.Heading */
.gi { color: #008400 } /* Generic.Inserted */
.go { color: #717171 } /* Generic.Output */
.gp { color: #000080; font-weight: bold } /* Generic.Prompt */
.gs { font-weight: bold } /* Generic.Strong */
.gu { color: #800080; font-weight: bold } /* Generic.Subheading */
.gt { color: #04D } /* Generic.Traceback */
.kc { color: #008000; font-weight: bold } /* Keyword.Constant */
.kd { color: #008000; font-weight: bold } /* Keyword.Declaration */
.kn { color: #008000; font-weight: bold } /* Keyword.Namespace */
.kp { color: #008000 } /* Keyword.Pseudo */
.kr { color: #008000; font-weight: bold } /* Keyword.Reserved */
.kt { color: #B00040 } /* Keyword.Type */
.m { color: #666 } /* Literal.Number */
.s { color: #BA2121 } /* Literal.String */
.na { color: #687822 } /* Name.Attribute */
.nb { color: #008000 } /* Name.Builtin */
.nc { color: #00F; font-weight: bold } /* Name.Class */
.no { color: #800 } /* Name.Constant */
.nd { color: #A2F } /* Name.Decorator */
.ni { color: #717171; font-weight: bold } /* Name.Entity */
.ne { color: #CB3F38; font-weight: bold } /* Name.Exception */
.nf { color: #00F } /* Name.Function */
.nl { color: #767600 } /* Name.Label */
.nn { color: #00F; font-weight: bold } /* Name.Namespace */
.nt { color: #008000; font-weight: bold } /* Name.Tag */
.nv { color: #19177C } /* Name.Variable */
.ow { color: #A2F; font-weight: bold } /* Operator.Word */
.w { color: #BBB } /* Text.Whitespace */
.mb { color: #666 } /* Literal.Number.Bin */
.mf { color: #666 } /* Literal.Number.Float */
.mh { color: #666 } /* Literal.Number.Hex */
.mi { color: #666 } /* Literal.Number.Integer */
.mo { color: #666 } /* Literal.Number.Oct */
.sa { color: #BA2121 } /* Literal.String.Affix */
.sb { color: #BA2121 } /* Literal.String.Backtick */
.sc { color: #BA2121 } /* Literal.String.Char */
.dl { color: #BA2121 } /* Literal.String.Delimiter */
.sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
.s2 { color: #BA2121 } /* Literal.String.Double */
.se { color: #AA5D1F; font-weight: bold } /* Literal.String.Escape */
.sh { color: #BA2121 } /* Literal.String.Heredoc */
.si { color: #A45A77; font-weight: bold } /* Literal.String.Interpol */
.sx { color: #008000 } /* Literal.String.Other */
.sr { color: #A45A77 } /* Literal.String.Regex */
.s1 { color: #BA2121 } /* Literal.String.Single */
.ss { color: #19177C } /* Literal.String.Symbol */
.bp { color: #008000 } /* Name.Builtin.Pseudo */
.fm { color: #00F } /* Name.Function.Magic */
.vc { color: #19177C } /* Name.Variable.Class */
.vg { color: #19177C } /* Name.Variable.Global */
.vi { color: #19177C } /* Name.Variable.Instance */
.vm { color: #19177C } /* Name.Variable.Magic */
.il { color: #666 } /* Literal.Number.Integer.Long */
