body {
font-family:Inter, system-ui, Avenir, Helvetica, Arial, sans-serif;
line-height:1.5;
font-weight:400;

color-scheme:only dark;
color:#C0C0C0;
background-color:#161616;

font-synthesis:none;
text-rendering:optimizeLegibility;
-webkit-font-smoothing:antialiased;
-moz-osx-font-smoothing:grayscale;

margin:0 auto;
padding:2rem;
}

.a {
overflow:hidden;
border-bottom:1px solid #ccc;
background-color:#343434;
position:fixed;
top:0;
left:0;
right:0;
}
.a > .b {
background-color:#444;
float:left;
border-radius:0;
border:none;
border-left:0.5px solid #aaa;
border-right:0.5px solid #aaa;
outline:none;
cursor:pointer;
padding:14px 16px;
transition:0.2s;
}
.a > .b:hover {
background-color:#777;
}
.a > .b.c {
background-color:#ccc;
}
.d > div.e {
display:none;
}

.f {
display:flex;
}
.f > div {
padding:5px;
}
th {
text-wrap:nowrap;
}
.g th {
text-align:right;
}
.h td {
padding-right:32px;
}

.i {
display:none;
}
.j {
display:flex;
overflow-x:auto;
max-width:96vw;
}
.j > div {
padding-right:20px;
}

.k {
max-height:500px;
overflow-y:auto;
}

.l {
padding:4px 5px 4px 5px;
background-color:#444;
border:0.5px solid white;
font-size:10px;
position:absolute;
margin-left:10px;
margin-top:10px;
}

.m {
--height:350px;
--width:550px;
position:absolute;
padding:0;
margin:0;
height:var(--height);
width:var(--width);
border:solid 3px black;
background:#161616;
overflow:hidden;
border-radius:10%;
}
.m > svg {
--scale:1.5;
position:absolute;
padding:0;
}

.n {
background-color:#2B2B2B;
position:relative;
}
.n pre {
font-family:'JetBrains Mono', monospace;
font-variant-ligatures:no-contextual common-ligatures;
font-size:smaller;
}
.o {
max-width:600px;
max-height:500px;
overflow-x:auto;
overflow-y:auto;
background-color:#2B2B2B;
}
.p {
display:flex;
height:fit-content;
}
.q svg {
margin-top:7px;
margin-left:3px;
}
.q svg .r path {
fill:none;
}
.q svg .s path {
}
.t {
padding-left:7px;
padding-right:12px;
}
div.u {
background-color:#444;
text-align:right;
padding-left:12px;
padding-right:7px;
}
.n pre {
margin-top:7px;
margin-bottom:7px;
}

@media screen and (max-width:500px) {
.q {
display:none;
}
}

.v .w {
font-family:"JetBrains Mono", monospace;
font-size:11px !important;
}
.v .x {
font-family:"JetBrains Mono", monospace;
}
.v .y {
font-family:"JetBrains Mono", monospace;
}

div.z {
overflow-x:auto;
}
.z svg {
font-family:"JetBrains Mono", monospace;
background-color:#202020;
padding:8px;
border-radius:7px;
margin-top:10px;
}
.ba {
dominant-baseline:text-top;
text-anchor:middle;
fill:#C0C0C0;
}
.bb {

}
.bc rect {
fill:#303030;
stroke-width:1px;
stroke:#B0B0B0;
}
.bc text {
text-anchor:middle;
dominant-baseline:middle;
font-size:x-small;
fill:#E0E0E0;
}
.bc text.bd {
font-size:xx-small;
}
.bc text.bd.be {
text-anchor:start;
}
.bc text.bd.bf {
text-anchor:end;
}

.bg {
position:relative;
padding:8px 12px 8px 16px;
margin:16px;
border-radius:8px;
background-color:#202020;
}
.bh {
min-width:10px;
min-height:10px;
color:white;
font-weight:700;
display:inline-block;
background-color:#303030;
border-radius:100px;
padding:4px 14px 6px 12px;
}
.bi .bh {
padding:4px 20px 6px 12px;
}
.bh:hover {
color:white;
cursor:pointer;
}
.bj {
padding:4px 3px 10px 8px;
}
.bi .bj {
display:none;
}
.bh::after {
content:"⌄ Click to collapse";
}
.bi .bh::after {
content:"⌃ Click to expand";
}

a {
font-weight:500;
color:#646cff;
text-decoration:inherit;
}
a:hover {
color:#535bf2;
}

h1 {
font-size:3.2em;
line-height:1.1;
}

button {
border-radius:8px;
border:1px solid transparent;
padding:0.6em 1.2em;
font-size:1em;
font-weight:500;
font-family:inherit;
background-color:#1a1a1a;
cursor:pointer;
transition:border-color 0.25s;
}
button:hover {
border-color:#646cff;
}
button:focus,
button:focus-visible {
outline:4px auto -webkit-focus-ring-color;
}

body {
font-size:large;
padding:0;
min-height:100vh;
display:flex;
flex-direction:column;
}
@media screen and (max-width:600px) {
body {
font-size:medium;
}
}
@media screen and (min-width:501px) {
body {
overflow-x:hidden;
}
}

.bk {
background-color:#4477BB;
padding-left:20px;
padding-bottom:10px;
padding-top:10px;
width:calc(100% - 20px);
}
.bk h1 {
text-align:left;
margin-top:0;
font-family:"Sixtyfour", serif;
}
.bk h2 {
font-size:medium;
}
@media screen and (max-width:500px) {
.bk {
padding-top:5px;
}
.bk h1 {
margin-top:10px;
font-size:medium;
}
.bk h2 {
font-size:x-small;
margin-right:10px;
}
}
.bl {
float:right;
}
.bl a {
display:block;
color:#FFFFFF;
background-color:#2B2B2B;
border-radius:3px;
border:2px solid white;
margin-right:40px;
margin-top:10px;
padding:2px 20px 2px 20px;
}
.bl a:first-child {
margin-top:5px;
}
@media screen and (max-width:500px) {
.bl {
margin-top:3px;
}
.bl a {
margin-top:5px;
margin-right:30px;
font-size:small;
padding:2px 10px 2px 10px;
}
}

.bm {

}
.bm .bn {
float:right;
text-align:right;
padding-right:20px;
padding-bottom:20px;
margin-left:10px;
color:#505050;
}
.bm .bo {
font-size:x-small;
}
.bm .bp {
margin-top:5px;
font-size:xx-small;
}

.bq {
display:flex;
justify-content:center;
width:100%;
flex:1;
}
.br {
padding:0 2rem;
max-width:70%;
}
@media screen and (max-width:1000px) {
.br {
max-width:90%;
}
}

p {
margin-top:12px;
margin-bottom:0;
}

@media screen and (max-width:600px) {
p {
margin-top:6px;
}
}


ul {
margin-top:6px;
}

h1 {
text-align:center;
font-size:xxx-large;
}
h2 {
margin-top:16px;
font-size:xx-large;
}
h3 {
margin-top:16px;
font-size:x-large;
}
h1, h2, h3, h4 {
margin-bottom:0;
}

h1 + h2 {
margin-top:6px;
}
h2 + h3 {
margin-top:6px;
}
h2 + h4 {
margin-top:3px;
}
h2 + p, h3 + p, h4 + p {
margin-top:4px;
}

@media screen and (max-width:600px) {
h1 {
font-size:x-large;
}
h2 {
font-size:large;
}
h3 {
font-size:medium;
}
}

.o {
max-width:unset;
max-height:min(80vw, 600px);
font-size:smaller;
margin-top:6px;
}
.t {
width:100%;
}
.bs {
visibility:hidden;
position:absolute;
right:10px;
top:5px;
background-color:#202020;
padding:3px 3px 5px 3px;
border-radius:7px;
}
.n:hover .bs {
display:inline;
visibility:visible;
cursor:pointer;
}
.bt {
display:none;
visibility:hidden;
position:fixed;
left:50vw;
background-color:#3B3B3B;
border-radius:20px;
top:15vh;
padding:10px 50px;
}
.bt.bu {
display:inline;
visibility:visible;
animation:fadeOut 0.7s 0.5s forwards;
}
@keyframes fadeOut {
from {
opacity:1;
}
to {
opacity:0;
display:none;
}
}
.bv {
animation-name:fadeOut;
}

/* Unused rules for pure-css tooltips on line numbers -- was an experiment to save bandwidth */
.bw.bx {
position:relative;
}
.bw.bx:hover::after {
display:block;
}
.bw.bx::after {
background-color:#333;
border-radius:10px;
display:none;
padding:5px 8px;
position:absolute;
text-align:center;
z-index:999;
}
.bw.bx::after {
content:'bottom';
top:0;
right:0;
transform:translateX(calc(100% + 10px));
}

.by {
background-color:pink;
}
.bz {
background-color:maroon;
}
.ca {
background-color:green;
}
.cb {
background-color:blue;
}
.cc {
background-color:orange;
}
.cd {
background-color:red;
}
.ce {
background-color:teal;
}
.cf {
background-color:goldenrod;
}
.cg {
background-color:slategray;
}
.ch {
background-color:indigo;
}

div.u {
padding-left:unset;
}
.ci, .bw {
width:100%;
display:inline-block;
padding-right:7px;
}
.cj {
margin-left:15px;
margin-top:14px;
text-wrap:nowrap;
display:flex;
flex-wrap:wrap;
max-width:50vw;
}
.ck {
flex-basis:23%;
display:flex;
}
.ck div {
}
.cl {
padding-left:4px;
font-size:medium;
}
.cm {
min-width:1.3em;
min-height:1.3em;
margin-bottom:4px;
}
@media screen and (max-width:1300px) {
.cj {
max-width:60vw;
}
}
@media screen and (max-width:1100px) {
.cj {
max-width:unset;
}
}
@media screen and (max-width:950px) {
.ck {
flex-basis:32%;
}
}
@media screen and (max-width:950px) {
.ck {
flex-basis:32%;
}
}
@media screen and (max-width:480px) {
.cl {
font-size:small;
}
}

table {
font-size:smaller;
}

table, th, td {
border:1px solid #464646;
border-collapse:collapse;
}
th, td {
padding:0 25px 1px 10px;
}
@media screen and (max-width:600px) {
.cn {
overflow-x:auto;
}
th, td {
padding:0 10px 1px 10px;
}
}

span.co {
display:inline;
background-color:#262626;
font-family:monospace;
white-space:pre;
padding:1px 2px;
border-radius:3px;
}

@media screen and (max-width:500px) {
span.co {
font-size:smaller;
}
}

.cp {
max-width:100%;
width:fit-content;
overflow-x:auto;
margin-top:15px;
}
.cp svg {
background-color:#262626;
padding:5px 10px 8px 5px;
}
.cp text.cq {
font-size:20pt;
text-align:center;
text-anchor:middle;
}
.cp text.cr {
text-align:center;
text-anchor:middle;
}
.cp path {
stroke:black;
stroke-width:0.25;
}
.cp text {
font-size:8.5pt;
fill:#D8D8D8;
font-weight:bold;
}
.cp text.cs {
text-anchor:start;
alignment-baseline:middle;
}
.cp .ct text {
font-family:"JetBrains Mono", monospace;
font-size:7pt;
}
.cp .cu text {
text-anchor:middle;
alignment-baseline:middle;
cursor:default;
}
.cp .cu rect.cv {
fill:transparent;
}
.cp .cu rect {
border-left:1px solid black;
stroke:black;
stroke-width:0.25;
}
.cp .cu.cw rect, .cp linearGradient stop.cw {
fill:blue;
stop-color:blue;
}
.cp .cu.cx rect {
/*fill:url(#i-d);*/
fill:blue;
}
.cp .cu.cy rect, .cp linearGradient stop.cy {
fill:green;
stop-color:green;
}
.cp .cu.cz rect {
/*fill:url(#d-e);*/
fill:green;
}
.cp .cu.da rect, .cp linearGradient stop.da {
fill:orange;
stop-color:orange;
}
.cp .cu.db rect {
/*fill:url(#e-r);*/
fill:orange;
}
.cp .cu.dc rect, .cp linearGradient stop.dc {
fill:red;
stop-color:red;
}
.cp text.dd {
text-anchor:middle;
}
.cp .de text {
text-anchor:start;
dominant-baseline:hanging;
}

.df {
background-color:#202020;
width:fit-content;
padding:0 10px;
border-radius:0 0 7px 0;
position:absolute;
left:0;
font-size:medium;
}

@media screen and (max-width:750px) {
.df {
font-size:small;
}
div:has(> .df)::after {
display:block;
min-height:1.25em;
content:'';
}
}
.df ol {
padding-left:0;
margin:0;
}
.df li {
list-style-type:none;
display:inline;
padding-left:3px;
padding-right:3px;
}

.dg {
position:absolute;
display:flex;
right:0;
}
.dh {
display:inline-block;
width:110px;
min-height:100%;
overflow:hidden;
}
.di {
display:inline-block;
color:#000;
font-size:large;
font-weight:bold;
padding:0 10px 3px 5px;
}
.di span {
cursor:default;
}

.dh.dj {
background:linear-gradient(-160deg, #D8B800 35px, #0000 0);
}
.di.dj {
background-color:#D8B800;
}

.dh.dk {
background:linear-gradient(-160deg, #309000 35px, #0000 0);
}
.di.dk {
background-color:#309000;
}

@media screen and (max-width:750px) {
.dh {
display:none;
}
.dg {
right:unset;
left:0;
}
.di {
font-size:small;
padding:0 7px 1px 5px;
border-radius:0 0 7px 0;
}
div:has(> .dg)::after {
display:block;
min-height:0.5em;
content:'';
}
}

.dl {
color:#A9B7C6;
font-family:'JetBrains Mono', monospace;
font-variant-ligatures:no-contextual common-ligatures;
}

.dm, .dn, .do {
color:#808080;
font-style:italic;
}

.dp, .dq {
color:#707070;
font-style:italic;
}

.dr, .ds, .dt, .du {
color:#cc7832;
}

.dv, .dw {
color:#93a629;
}

.dx, .dy {
color:#0f9795;
}

.dz {
color:#9876AA;
}

.ea {
color:#75B97C;
}

.eb, .ec, .ed {
color:#ab51ba;
}
.ee {
color:#ab51ba;
}

.ef, .eg {
color:#c678dd;
}

.eh, .ei, .ej, .ek, .el {
color:#e06c75;
}

.em, .en, .eo, .ep, .eq {
color:#6A8759;
}

.er {
color:#BBB529;
}

.es .et, .eu {
color:#e6c07b;
}

.ev {
display:none;
}

/*
interface 75B97C
method FFC66D
doccomment 629755
comment 808080
type 2893B3
number 6897BB
string 6A8759
keyword CC7832
*/

.ew, .ex, .ey, .ez, .fa {
color:#6897bb;
}

.fb {
color:#E06C75;
}

.fc {
color:#2893B3;
}

.fd, .fe, .ff, .fg, .et {
color:#61aeee;
}

.fh {
color:#4a6e7e;
}

.fi {
font-style:italic;
}

.fj {
font-weight:bold;
}

.ff {
text-decoration:underline;
}

