﻿
/* PrismJS 1.29.0
https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript+abap+abnf+actionscript+ada+agda+al+antlr4+apacheconf+apex+apl+applescript+aql+arduino+arff+armasm+arturo+asciidoc+aspnet+asm6502+asmatmel+autohotkey+autoit+avisynth+avro-idl+awk+bash+basic+batch+bbcode+bbj+bicep+birb+bison+bnf+bqn+brainfuck+brightscript+bro+bsl+c+csharp+cpp+cfscript+chaiscript+cil+cilkc+cilkcpp+clojure+cmake+cobol+coffeescript+concurnas+csp+cooklang+coq+crystal+css-extras+csv+cue+cypher+d+dart+dataweave+dax+dhall+diff+django+dns-zone-file+docker+dot+ebnf+editorconfig+eiffel+ejs+elixir+elm+etlua+erb+erlang+excel-formula+fsharp+factor+false+firestore-security-rules+flow+fortran+ftl+gml+gap+gcode+gdscript+gedcom+gettext+gherkin+git+glsl+gn+linker-script+go+go-module+gradle+graphql+groovy+haml+handlebars+haskell+haxe+hcl+hlsl+hoon+http+hpkp+hsts+ichigojam+icon+icu-message-format+idris+ignore+inform7+ini+io+j+java+javadoc+javadoclike+javastacktrace+jexl+jolie+jq+jsdoc+js-extras+json+json5+jsonp+jsstacktrace+js-templates+julia+keepalived+keyman+kotlin+kumir+kusto+latex+latte+less+lilypond+liquid+lisp+livescript+llvm+log+lolcode+lua+magma+makefile+markdown+markup-templating+mata+matlab+maxscript+mel+mermaid+metafont+mizar+mongodb+monkey+moonscript+n1ql+n4js+nand2tetris-hdl+naniscript+nasm+neon+nevod+nginx+nim+nix+nsis+objectivec+ocaml+odin+opencl+openqasm+oz+parigp+parser+pascal+pascaligo+psl+pcaxis+peoplecode+perl+php+phpdoc+php-extras+plant-uml+plsql+powerquery+powershell+processing+prolog+promql+properties+protobuf+pug+puppet+pure+purebasic+purescript+python+qsharp+q+qml+qore+r+racket+cshtml+jsx+tsx+reason+regex+rego+renpy+rescript+rest+rip+roboconf+robotframework+ruby+rust+sas+sass+scss+scala+scheme+shell-session+smali+smalltalk+smarty+sml+solidity+solution-file+soy+sparql+splunk-spl+sqf+sql+squirrel+stan+stata+iecst+stylus+supercollider+swift+systemd+t4-templating+t4-cs+t4-vb+tap+tcl+tt2+textile+toml+tremor+turtle+twig+typescript+typoscript+unrealscript+uorazor+uri+v+vala+vbnet+velocity+verilog+vhdl+vim+visual-basic+warpscript+wasm+web-idl+wgsl+wiki+wolfram+wren+xeora+xml-doc+xojo+xquery+yaml+yang+zig&plugins=line-highlight+line-numbers+highlight-keywords+toolbar+copy-to-clipboard */
code[class*=language-], pre[class*=language-] {
    color: #000;
    background: 0 0;
    text-shadow: 0 1px #fff;
    font-family: Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;
    font-size: 1em;
    text-align: left;
    white-space: pre;
    word-spacing: normal;
    word-break: normal;
    word-wrap: normal;
    line-height: 1.5;
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4;
    -webkit-hyphens: none;
    -moz-hyphens: none;
    -ms-hyphens: none;
    hyphens: none
}

    code[class*=language-] ::-moz-selection, code[class*=language-]::-moz-selection, pre[class*=language-] ::-moz-selection, pre[class*=language-]::-moz-selection {
        text-shadow: none;
        background: #b3d4fc
    }

    code[class*=language-] ::selection, code[class*=language-]::selection, pre[class*=language-] ::selection, pre[class*=language-]::selection {
        text-shadow: none;
        background: #b3d4fc
    }

@media print {
    code[class*=language-], pre[class*=language-] {
        text-shadow: none
    }
}

pre[class*=language-] {
    padding: 1em;
    margin: .5em 0;
    overflow: auto
}

:not(pre) > code[class*=language-], pre[class*=language-] {
    background: #f5f2f0
}

:not(pre) > code[class*=language-] {
    padding: .1em;
    border-radius: .3em;
    white-space: normal
}

.token.cdata, .token.comment, .token.doctype, .token.prolog {
    color: #708090
}

.token.punctuation {
    color: #999
}

.token.namespace {
    opacity: .7
}

.token.boolean, .token.constant, .token.deleted, .token.number, .token.property, .token.symbol, .token.tag {
    color: #905
}

.token.attr-name, .token.builtin, .token.char, .token.inserted, .token.selector, .token.string {
    color: #690
}

.language-css .token.string, .style .token.string, .token.entity, .token.operator, .token.url {
    color: #9a6e3a;
    background: hsla(0,0%,100%,.5)
}

.token.atrule, .token.attr-value, .token.keyword {
    color: #07a
}

.token.class-name, .token.function {
    color: #dd4a68
}

.token.important, .token.regex, .token.variable {
    color: #e90
}

.token.bold, .token.important {
    font-weight: 700
}

.token.italic {
    font-style: italic
}

.token.entity {
    cursor: help
}

pre[data-line] {
    position: relative;
    padding: 1em 0 1em 3em
}

.line-highlight {
    position: absolute;
    left: 0;
    right: 0;
    padding: inherit 0;
    margin-top: 1em;
    background: hsla(24,20%,50%,.08);
    background: linear-gradient(to right,hsla(24,20%,50%,.1) 70%,hsla(24,20%,50%,0));
    pointer-events: none;
    line-height: inherit;
    white-space: pre
}

@media print {
    .line-highlight {
        -webkit-print-color-adjust: exact;
        color-adjust: exact
    }
}

.line-highlight:before, .line-highlight[data-end]:after {
    content: attr(data-start);
    position: absolute;
    top: .4em;
    left: .6em;
    min-width: 1em;
    padding: 0 .5em;
    background-color: hsla(24,20%,50%,.4);
    color: #f4f1ef;
    font: bold 65%/1.5 sans-serif;
    text-align: center;
    vertical-align: .3em;
    border-radius: 999px;
    text-shadow: none;
    box-shadow: 0 1px #fff
}

.line-highlight[data-end]:after {
    content: attr(data-end);
    top: auto;
    bottom: .4em
}

.line-numbers .line-highlight:after, .line-numbers .line-highlight:before {
    content: none
}

pre[id].linkable-line-numbers span.line-numbers-rows {
    pointer-events: all
}

    pre[id].linkable-line-numbers span.line-numbers-rows > span:before {
        cursor: pointer
    }

    pre[id].linkable-line-numbers span.line-numbers-rows > span:hover:before {
        background-color: rgba(128,128,128,.2)
    }

pre[class*=language-].line-numbers {
    position: relative;
    padding-left: 3.8em;
    counter-reset: linenumber
}

    pre[class*=language-].line-numbers > code {
        position: relative;
        white-space: inherit
    }

.line-numbers .line-numbers-rows {
    position: absolute;
    pointer-events: none;
    top: 0;
    font-size: 100%;
    left: -3.8em;
    width: 3em;
    letter-spacing: -1px;
    border-right: 1px solid #999;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.line-numbers-rows > span {
    display: block;
    counter-increment: linenumber
}

    .line-numbers-rows > span:before {
        content: counter(linenumber);
        color: #999;
        display: block;
        padding-right: .8em;
        text-align: right
    }

div.code-toolbar {
    position: relative
}

    div.code-toolbar > .toolbar {
        position: absolute;
        z-index: 10;
        top: .3em;
        right: .2em;
        transition: opacity .3s ease-in-out;
        opacity: 0
    }

    div.code-toolbar:hover > .toolbar {
        opacity: 1
    }

    div.code-toolbar:focus-within > .toolbar {
        opacity: 1
    }

    div.code-toolbar > .toolbar > .toolbar-item {
        display: inline-block
    }

        div.code-toolbar > .toolbar > .toolbar-item > a {
            cursor: pointer
        }

        div.code-toolbar > .toolbar > .toolbar-item > button {
            background: 0 0;
            border: 0;
            color: inherit;
            font: inherit;
            line-height: normal;
            overflow: visible;
            padding: 0;
            -webkit-user-select: none;
            -moz-user-select: none;
            -ms-user-select: none
        }

        div.code-toolbar > .toolbar > .toolbar-item > a, div.code-toolbar > .toolbar > .toolbar-item > button, div.code-toolbar > .toolbar > .toolbar-item > span {
            color: #bbb;
            font-size: .8em;
            padding: 0 .5em;
            background: #f5f2f0;
            background: rgba(224,224,224,.2);
            box-shadow: 0 2px 0 0 rgba(0,0,0,.2);
            border-radius: .5em
        }

            div.code-toolbar > .toolbar > .toolbar-item > a:focus, div.code-toolbar > .toolbar > .toolbar-item > a:hover, div.code-toolbar > .toolbar > .toolbar-item > button:focus, div.code-toolbar > .toolbar > .toolbar-item > button:hover, div.code-toolbar > .toolbar > .toolbar-item > span:focus, div.code-toolbar > .toolbar > .toolbar-item > span:hover {
                color: inherit;
                text-decoration: none
            }



.bdr-sidebar {
    height: 100vh;
    overflow-y: auto;
    position: sticky;
    top: 0;
}

.bdr-content-area {
    min-height: calc(100vh - 2rem);
}

.bdr-toc {
    height: 100%;
    overflow-y: auto;
    position: sticky;
    top: 0;
}

.bdr-nav-link {
    padding: 0.5rem 1rem;
    border-radius: 0.375rem;
    margin-bottom: 0.25rem;
    text-decoration: none !important;
    color: var(--bs-gray-600);
}

    .bdr-nav-link:hover {
        background-color: rgba(255, 255, 255, 0.1);
    }

    .bdr-nav-link.active {
        background-color: var(--bs-primary);
        color: white;
    }

.bdr-toc-link {
    font-size: 0.875rem;
    padding: 0.25rem 0.75rem;
    color: var(--bs-gray-600);
    text-decoration: none;
    display: block;
    border-radius: 0.25rem;
    margin-bottom: 0.125rem;
}

    .bdr-toc-link:hover {
        background-color: rgba(255, 255, 255, 0.05);
        color: var(--bs-light);
    }

    .bdr-toc-link.active {
        color: var(--bs-primary);
        background-color: rgba(var(--bs-primary-rgb), 0.1);
    }

.bdr-section {
    margin-bottom: 3rem;
}

/* Mobile TOC Enhancements */
.bdr-site-toc-mobile {
    list-style: none;
    padding-left: 0;
}

.bdr-toc-item {
    margin-bottom: 0.5rem;
}

.bdr-toc-row {
    padding: 0.75rem;
    border-radius: 0.375rem;
    cursor: pointer;
    transition: background-color 0.2s ease;
    border: 1px solid transparent;
}

    .bdr-toc-row:hover {
        background-color: rgba(0, 123, 255, 0.1);
        border-color: rgba(0, 123, 255, 0.2);
    }

    .bdr-toc-row.active {
        background-color: var(--bs-primary);
        color: white;
        border-color: var(--bs-primary);
    }

        .bdr-toc-row.active .bdr-toc-link {
            color: white;
        }

.bdr-toc-children {
    border-left: 2px solid rgba(0, 123, 255, 0.2);
    padding-left: 1rem;
}

.bdr-chevron {
    font-size: 0.75rem;
    color: var(--bs-gray-500);
    transition: transform 0.2s ease;
}

.bdr-toc-row:hover .bdr-chevron {
    color: var(--bs-primary);
}

.bdr-toc-row.active .bdr-chevron {
    color: white;
}

/* Page TOC Mobile Styles */
.bdr-page-toc-mobile {
    padding: 1rem;
    margin-bottom: 1.5rem;
    border: 1px solid rgba(0, 0, 0, 0.125);
}

.bdr-page-toc-list {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
}

.bdr-page-toc-item {
    margin-bottom: 0.5rem;
}

    .bdr-page-toc-item:last-child {
        margin-bottom: 0;
    }

.bdr-page-toc-children {
    list-style: none;
    padding-left: 0;
    border-left: 2px solid rgba(0, 123, 255, 0.2);
}

.bdr-page-toc-child-item {
    margin-bottom: 0.25rem;
}

    .bdr-page-toc-child-item:last-child {
        margin-bottom: 0;
    }

/* Responsive adjustments */
@media (max-width: 991.98px) {
    .bdr-sidebar, .bdr-toc {
        position: static;
        height: auto;
    }
    
    .bdr-toc-link {
        font-size: 0.875rem;
        padding: 0.5rem 0.75rem;
    }
    
    .bdr-toc-row {
        padding: 0.5rem 0.75rem;
    }
}

pre[data-line] {
    position: relative;
    padding: 1em 0 1em 3em;
}

.line-highlight {
    position: absolute;
    left: 0;
    right: 0;
    padding: inherit 0;
    margin-top: 0; /* Same as .prism’s padding-top */

    background: hsla(24, 20%, 50%,.08);
    background: linear-gradient(to right, hsla(24, 20%, 50%,.1) 70%, hsla(24, 20%, 50%,0));
    background-color: rgba(255, 255, 0, 0.15) !important; /* Light yellow */
    border-left: 3px solid rgba(255, 255, 0, 0.7);
    pointer-events: none;
    line-height: inherit;
    white-space: pre;
    width: 100% !important;
    z-index: 0 !important;
}

@media print {
    .line-highlight {
        /*
		 * This will prevent browsers from replacing the background color with white.
		 * It's necessary because the element is layered on top of the displayed code.
		 */
        -webkit-print-color-adjust: exact;
        color-adjust: exact;
    }
}

.line-highlight:before,
.line-highlight[data-end]:after {
    content: attr(data-start);
    position: absolute;
    top: .4em;
    left: .6em;
    min-width: 1em;
    padding: 0 .5em;
    background-color: hsla(24, 20%, 50%,.4);
    color: hsl(24, 20%, 95%);
    font: bold 65%/1.5 sans-serif;
    text-align: center;
    vertical-align: .3em;
    border-radius: 999px;
    text-shadow: none;
    box-shadow: 0 1px white;
}

.line-highlight[data-end]:after {
    content: attr(data-end);
    top: auto;
    bottom: .4em;
}

.line-numbers .line-highlight:before,
.line-numbers .line-highlight:after {
    content: none;
}

pre[id].linkable-line-numbers span.line-numbers-rows {
    pointer-events: all;
}

    pre[id].linkable-line-numbers span.line-numbers-rows > span:before {
        cursor: pointer;
    }

    pre[id].linkable-line-numbers span.line-numbers-rows > span:hover:before {
        background-color: rgba(128, 128, 128, .2);
    }

.line-highlight.added {
    background-color: rgba(0, 255, 128, 0.15) !important; /* Light green */
    border-left: 3px solid rgba(0, 255, 128, 0.7);
}

.line-highlight.removed {
    background-color: rgba(255, 0, 0, 0.15) !important; /* Light red */
    border-left: 3px solid rgba(255, 0, 0, 0.7);
}

.line-numbers .line-highlight {
    left: 0 !important; /* Align with line numbers */
    margin-left: -3em;
    width: 100% !important;
}

