/*! Cinderfolio
MIT License

Copyright (c) 2026 ShiJin

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
*/
section{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--cf-g0:#121212;--cf-g1:#212120;--cf-g2:#2f2f2f;--cf-g3:#3e3e3d;--cf-g4:#4c4c4c;--cf-g5:#5b5b5a;--cf-g6:#696968;--cf-g7:#787877;--cf-g8:#868685;--cf-g9:#959593;--cf-g10:#a3a3a2;--cf-g11:#b2b2b0;--cf-g12:#c0c0bf;--cf-g13:#cfcfcd;--cf-g14:#dddddb;--cf-g15:#ececea;--cf-g16:#fafaf8;--cf-accent-darker:#d65b06;--cf-accent-dark:#ef6606;--cf-accent-brand:#f97316;--cf-accent-light:#fa9148;--cf-accent-lighter:#fcaf79;--cf-background:#fafaf8;--cf-surface:#ececea;--cf-surface-hover:#dddddb;--cf-foreground:#121212;--cf-text-muted:#3e3e3d;--cf-text-subtle:#5b5b5a;--cf-border:#dddddb;--cf-border-strong:#c0c0bf;--cf-control-border:#5b5b5a;--cf-control-selected-background:#f97316;--cf-control-selected-foreground:#121212;--cf-interaction:#f97316;--cf-link:#ef6606;--cf-diagram-stroke:#d65b06;--cf-selection:#fad8c0;--cf-selected-background:#fae6d6;--pele-bg:#fafaf8;--pele-fg:#121212;--pele-muted:#3e3e3d;--pele-line:#3e3e3d;--pele-surface:#ececea;--pele-surface-alt:#dddddb;--pele-border:#787877;--pele-accent:#fa9148;--pele-critical:#f97316;--pele-error:#121212;--pele-series-1:#cf9600;--pele-series-2:#92bb54;--pele-series-3:#16dea9;--pele-series-4:#00b8ba;--pele-series-5:#85c4ff;--pele-series-6:#a69bff;--pele-series-7:#df83de;--pele-series-8:#fd7b98;--cf-pele-on-accent:#121212;--cf-pele-on-critical:#121212;--cf-pele-on-series-1:#121212;--cf-pele-on-series-2:#121212;--cf-pele-on-series-3:#121212;--cf-pele-on-series-4:#121212;--cf-pele-on-series-5:#121212;--cf-pele-on-series-6:#121212;--cf-pele-on-series-7:#121212;--cf-pele-on-series-8:#121212}@media (prefers-color-scheme:dark){section{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--cf-g0:#121212;--cf-g1:#212120;--cf-g2:#2f2f2f;--cf-g3:#3e3e3d;--cf-g4:#4c4c4c;--cf-g5:#5b5b5a;--cf-g6:#696968;--cf-g7:#787877;--cf-g8:#868685;--cf-g9:#959593;--cf-g10:#a3a3a2;--cf-g11:#b2b2b0;--cf-g12:#c0c0bf;--cf-g13:#cfcfcd;--cf-g14:#dddddb;--cf-g15:#ececea;--cf-g16:#fafaf8;--cf-accent-darker:#d65b06;--cf-accent-dark:#ef6606;--cf-accent-brand:#f97316;--cf-accent-light:#fa9148;--cf-accent-lighter:#fcaf79;--cf-background:#121212;--cf-surface:#212120;--cf-surface-hover:#2f2f2f;--cf-foreground:#fafaf8;--cf-text-muted:#cfcfcd;--cf-text-subtle:#b2b2b0;--cf-border:#2f2f2f;--cf-border-strong:#4c4c4c;--cf-control-border:#b2b2b0;--cf-control-selected-background:#f97316;--cf-control-selected-foreground:#121212;--cf-interaction:#f97316;--cf-link:#fa9148;--cf-diagram-stroke:#fa9148;--cf-selection:#4c2a13;--cf-selected-background:#352113;--pele-bg:#121212;--pele-fg:#fafaf8;--pele-muted:#cfcfcd;--pele-line:#cfcfcd;--pele-surface:#212120;--pele-surface-alt:#2f2f2f;--pele-border:#959593;--pele-accent:#fa9148;--pele-critical:#fcaf79;--pele-error:#fafaf8;--pele-series-1:#c08b00;--pele-series-2:#86ae47;--pele-series-3:#00d09d;--pele-series-4:#00aaac;--pele-series-5:#79b7f1;--pele-series-6:#9a8ef1;--pele-series-7:#d277d1;--pele-series-8:#ef6e8c;--cf-pele-on-accent:#121212;--cf-pele-on-critical:#121212;--cf-pele-on-series-1:#121212;--cf-pele-on-series-2:#121212;--cf-pele-on-series-3:#121212;--cf-pele-on-series-4:#121212;--cf-pele-on-series-5:#121212;--cf-pele-on-series-6:#121212;--cf-pele-on-series-7:#121212;--cf-pele-on-series-8:#121212}}section{--cf-marp-bar-height:32px;--cf-marp-inline-space:80px;--cf-marp-block-space:24px;--cf-marp-body-space:24px;--cf-marp-column-gap:24px;--cf-marp-divider-width:2px;--cf-marp-divider-top:400px;--cf-marp-column-media-height:none;box-sizing:border-box;width:1280px;height:720px;padding:calc(var(--cf-marp-bar-height) + var(--cf-marp-block-space)) var(--cf-marp-inline-space);color:var(--cf-foreground);background:var(--cf-background);overflow-wrap:anywhere;flex-direction:column;justify-content:flex-start;font:32px/1.5 Inter,Noto Sans SC,sans-serif;display:flex}section[data-size="4:3"]{--cf-marp-inline-space:56px;--cf-marp-block-space:20px;--cf-marp-body-space:20px;--cf-marp-column-gap:20px;font-size:28px}h1,h2,h3,h4,h5,h6{margin:0 0 .65em;font-weight:700;line-height:1.25}h2{font-size:1.5em}h3{font-size:1.25em}h4{font-size:1.1em}h5{font-size:1em}h6{font-size:.9em}p,ul,ol,blockquote,pre,table{margin:0 0 var(--cf-marp-body-space)}ul,ol{padding-left:1.25em}li+li{margin-top:calc(var(--cf-marp-body-space) / 3)}:is(section>:last-child,section>.cf-col:has(+footer)){margin-bottom:0}a{color:var(--cf-link);text-underline-offset:.15em}a:hover{color:var(--cf-accent-brand)}strong{font-weight:700}mark{color:inherit;background:var(--cf-selection);border-radius:.1em;padding:.05em .15em}blockquote{border-left:4px solid var(--cf-accent-brand);background:var(--cf-surface);padding:.4em .75em}blockquote>:last-child{margin-bottom:0}hr{border:0;border-top:2px solid var(--cf-border-strong);width:100%}table{border-collapse:collapse;font-size:.85em}th,td{border-bottom:1px solid var(--cf-border-strong);text-align:left;padding:.4em .75em}th{background:var(--cf-surface);font-weight:600}tr:nth-child(2n){background:var(--cf-surface)}::selection{color:currentColor;background:var(--cf-selection)}.markdown-alert{margin:0 0 var(--cf-marp-body-space);border:1px solid var(--cf-border-strong);background:var(--cf-surface);border-radius:.2em;padding:.5em .75em}.markdown-alert>:last-child{margin-bottom:0}.markdown-alert-title{color:var(--cf-foreground);margin-bottom:.35em;font-size:.8em;font-weight:600;line-height:1.25}.markdown-alert-important{border:2px solid var(--cf-accent-brand);background:var(--cf-selected-background)}.markdown-alert-tip,.markdown-alert-warning{border-left:4px solid var(--cf-accent-brand)}.markdown-alert-caution{border:2px solid var(--cf-accent-brand)}img,svg{object-fit:contain;max-width:100%}code{font-family:Sarasa Mono SC,monospace;font-size:.85em}:not(pre)>code{background:var(--cf-surface-hover);border-radius:.15em;padding:.1em .25em}pre{border:1px solid var(--cf-border);background:var(--cf-background);border-radius:.25em;padding:.75em 1em;line-height:1.4;overflow:visible}pre code{display:block}pre.shiki span{font-weight:var(--shiki-light-font-weight,normal);font-style:var(--shiki-light-font-style,normal);-webkit-text-decoration:var(--shiki-light-text-decoration,none);text-decoration:var(--shiki-light-text-decoration,none)}figure.cinderfolio-pele{margin:0 0 var(--cf-marp-body-space);--pele-font:"Inter", "Noto Sans SC", sans-serif;--pele-font-mono:"Sarasa Mono SC", monospace}figure.cinderfolio-pele>svg{width:100%;margin-inline:auto;display:block}.cf-cols{align-items:stretch;gap:var(--cf-marp-column-gap);margin:0 0 var(--cf-marp-body-space);display:flex}.cf-col{--cf-col-media-start:0;--cf-col-media-end:auto;margin:0 0 var(--cf-marp-body-space);text-align:left;flex-direction:column;flex:none;justify-content:flex-start;min-width:0;display:flex}.cf-cols>.cf-col{flex:1 1 0;margin:0}.cf-cols>.cf-col.cf-w1{flex-grow:1}.cf-cols>.cf-col.cf-w2{flex-grow:2}.cf-cols>.cf-col.cf-w3{flex-grow:3}.cf-cols>.cf-col.cf-w4{flex-grow:4}.cf-cols>.cf-col.cf-w5{flex-grow:5}.cf-col:is(.cf-align-tl,.cf-align-ml,.cf-align-bl){text-align:left;--cf-col-media-start:0;--cf-col-media-end:auto}.cf-col:is(.cf-align-tc,.cf-align-mc,.cf-align-bc){text-align:center;--cf-col-media-start:auto;--cf-col-media-end:auto}.cf-col:is(.cf-align-tr,.cf-align-mr,.cf-align-br){text-align:right;--cf-col-media-start:auto;--cf-col-media-end:0}.cf-col:is(.cf-align-tl,.cf-align-tc,.cf-align-tr){justify-content:flex-start}.cf-col:is(.cf-align-ml,.cf-align-mc,.cf-align-mr){justify-content:center}.cf-col:is(.cf-align-bl,.cf-align-bc,.cf-align-br){justify-content:flex-end}.cf-col>:last-child{margin-bottom:0}:is(.cf-col:not(:has(>*)),.cf-cols:not(:has(>.cf-col>*))){display:none}.cf-col img,.cf-col>figure.cinderfolio-pele>svg{width:auto;margin-inline:var(--cf-col-media-start) var(--cf-col-media-end);display:block}.cf-col>figure:not(.cinderfolio-pele),.cf-col>figure:not(.cinderfolio-pele)>p{margin:0}.cf-col figcaption{color:var(--cf-text-muted);margin-top:.5em;font-size:.75em}.cf-cols>.cf-col>figure.cinderfolio-pele>svg,.cf-cols>.cf-col pre::part(auto-scaling){max-height:var(--cf-marp-column-media-height)}header,footer,section:after{box-sizing:border-box;height:var(--cf-marp-bar-height);color:var(--cf-text-subtle);align-items:center;font-size:16px;line-height:20px;display:flex;position:absolute}header,footer{padding:0 var(--cf-marp-inline-space);background:var(--cf-surface);text-align:center;justify-content:center;left:0;right:0}header{box-shadow:inset 0 -1px var(--cf-border);top:0}header a{color:inherit;text-decoration:none}header:has(>a,>strong>a){box-shadow:none;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;align-items:stretch;padding:0;display:grid}header:has(>a,>strong>a)>*{min-width:0;box-shadow:inset 0 -1px var(--cf-border)}header:has(>a,>strong>a) a{box-sizing:border-box;justify-content:center;align-items:center;height:100%;padding:0 12px;display:flex}header>strong:has(>a){background:var(--cf-background);box-shadow:none;font-weight:600}header>strong a:hover{color:inherit}footer{padding-inline:calc(var(--cf-marp-inline-space) + 80px);box-shadow:inset 0 1px var(--cf-border);bottom:0}section:after{bottom:0;right:var(--cf-marp-inline-space);font-variant-numeric:tabular-nums;padding:0}section[data-marpit-pagination]:after{content:attr(data-marpit-pagination) " / " attr(data-marpit-pagination-total)}section:not(.cover)>h2:first-of-type{border-bottom:var(--cf-marp-divider-width) solid var(--cf-accent-brand);letter-spacing:-.025em}section:not(.cover,.transition){--cf-marp-content-inset:64px;--cf-marp-title-size:40px;--cf-marp-title-gap:16px;padding:calc(var(--cf-marp-bar-height) + var(--cf-marp-title-gap)) var(--cf-marp-content-inset)}section[data-size="4:3"]:not(.cover,.transition){--cf-marp-content-inset:48px;--cf-marp-title-size:36px}section:not(.cover,.transition)>h2:first-of-type{margin:0 calc(-1 * var(--cf-marp-content-inset)) var(--cf-marp-title-gap);padding:0 var(--cf-marp-content-inset) var(--cf-marp-title-gap);font-size:var(--cf-marp-title-size);flex-shrink:0;line-height:1.25}section:not(.cover,.transition) :is(h3,h4,h5,h6){margin-bottom:calc(var(--cf-marp-body-space) / 2);font-weight:600;line-height:1.3}section:not(.cover,.transition) h3{font-size:1em}section:not(.cover,.transition) h4{font-size:.95em}section:not(.cover,.transition) h5{font-size:.9em}section:not(.cover,.transition) h6{font-size:.85em}section.compact:not(.cover,.transition){--cf-marp-body-space:12px;--cf-marp-column-gap:20px;font-size:28px;line-height:1.4}section.compact[data-size="4:3"]:not(.cover,.transition){--cf-marp-body-space:10px;--cf-marp-column-gap:16px;font-size:24px}section.transition{justify-content:flex-end;gap:var(--cf-marp-block-space);padding-bottom:calc(720px - var(--cf-marp-divider-top) - var(--cf-marp-divider-width));text-align:center}section.transition>h2:first-of-type{margin:0 calc(-1 * var(--cf-marp-inline-space));padding:0 var(--cf-marp-inline-space) var(--cf-marp-block-space);text-wrap:balance;font-size:2em;line-height:1.2}section.transition>p{color:var(--cf-text-muted);text-wrap:balance;margin:0;font-size:.875em}section.transition>p:has(+h2){letter-spacing:.08em;font-variant-numeric:tabular-nums;font-size:.75em}section.transition>h2:first-of-type+p{top:calc(var(--cf-marp-divider-top) + var(--cf-marp-divider-width) + var(--cf-marp-block-space));left:var(--cf-marp-inline-space);right:var(--cf-marp-inline-space);position:absolute}section.cover{padding:var(--cf-marp-divider-top) var(--cf-marp-inline-space) 0;text-align:center;justify-content:center;align-items:center;gap:8px}section.cover:before{content:"";top:var(--cf-marp-divider-top);height:var(--cf-marp-divider-width);background:var(--cf-accent-brand);position:absolute;left:0;right:0}section.cover>h1{top:calc(var(--cf-marp-divider-top) / 2);left:var(--cf-marp-inline-space);right:var(--cf-marp-inline-space);letter-spacing:-.025em;text-wrap:balance;border:0;margin:0;padding:0;font-size:2.5em;line-height:1.2;position:absolute;transform:translateY(-50%)}section.cover>h1>small{color:var(--cf-text-muted);letter-spacing:normal;margin:0;font-size:.4em;font-weight:400;line-height:1.5;position:absolute;top:calc(100% + 24px);left:0;right:0}section.cover>p{color:var(--cf-text-muted);margin:0;font-size:.625em;line-height:1.5}section.cover>p:nth-of-type(3){color:var(--cf-text-subtle)}.cinderfolio-pele{color:var(--pele-fg);background:var(--pele-bg)}.cinderfolio-pele .pele-node>:is(rect,circle,ellipse,polygon,path),.cinderfolio-pele .pele-node>.cf-pele-edge>.pele-edge,.cinderfolio-pele .pele-cluster>rect{stroke-width:1.75px}.cinderfolio-pele .pele-edge>:is(path,line,polyline):not(.pele-marker,.cf-pele-edge-hit){stroke-width:1.5px}.cinderfolio-pele .cf-pele-edge-hit{fill:none;stroke:#0000;stroke-width:10px;stroke-dasharray:none;vector-effect:non-scaling-stroke;pointer-events:none}.cinderfolio-pele .pele-curves{stroke-width:2px}@media (hover:hover){.cinderfolio-pele .cf-pele-edge-hit{pointer-events:stroke}.cinderfolio-pele :is(.pele-node,.pele-task,.pele-note,.pele-commit,.pele-commit-label,.pele-ishikawa-head):hover>:is(rect,circle,ellipse,polygon,path):not(.pele-edge,.pele-marker,.cf-pele-edge-hit,.pele-divider,.pele-er-divider),.cinderfolio-pele .pele-gitGraph .pele-branch:hover>rect,.cinderfolio-pele :is(.pele-slice,.pele-point,.pele-curve,.pele-venn-set,.pele-sankey-node):hover,.cinderfolio-pele .pele-series>:is(rect,circle,path):not(.cf-pele-edge-hit):hover{stroke:var(--pele-accent);stroke-width:2.5px}.cinderfolio-pele .pele-ishikawa-category:has(>rect:hover,>.pele-label:hover)>rect{stroke:var(--pele-accent);stroke-width:2.5px}.cinderfolio-pele .pele-edge:hover,.cinderfolio-pele .pele-edge:hover>:is(path,line,polyline,polygon,circle):not([stroke=none],.cf-pele-edge-hit),.cinderfolio-pele .cf-pele-edge:hover>.pele-edge,.cinderfolio-pele .pele-marker:hover:not([stroke=none]){stroke:var(--pele-accent);stroke-width:2.5px}.cinderfolio-pele .pele-series:has(>.cf-pele-edge-hit:hover)>path:not(.cf-pele-edge-hit){stroke:var(--pele-accent);stroke-width:2.5px}.cinderfolio-pele .pele-edge:hover>.pele-marker[fill]:not([fill=none],[fill="var(--_bg)"]),.cinderfolio-pele .pele-marker[fill]:not([fill=none],[fill="var(--_bg)"]):hover,.cinderfolio-pele :is(.pele-shape-text,.pele-tree-dir,.pele-tree-file,.pele-venn-region):hover>text,.cinderfolio-pele .pele-ishikawa-causes>text:hover{fill:var(--pele-accent)}.cinderfolio-pele .pele-pie .pele-slice-labels{pointer-events:none}}.cinderfolio-pele .pele-task:has(>rect[fill="var(--_c)"]:not([fill-opacity]))>text[fill="var(--_bg)"]{fill:var(--cf-pele-on-accent)}.cinderfolio-pele .pele-task:has(>rect[fill^=var\(--pele-critical]:not([fill-opacity]))>text[fill="var(--_bg)"]{fill:var(--cf-pele-on-critical)}.cinderfolio-pele .pele-slice-labels[fill="var(--_bg)"]>text{fill:var(--cf-g0);stroke:var(--cf-g16);stroke-width:2.5px;stroke-linejoin:round;paint-order:stroke}.cinderfolio-pele :is(.pele-branch,.pele-leaf,.pele-period,.pele-timeline .pele-section):has(>rect[fill^=var\(--pele-series-1]:not([fill-opacity]))>text{fill:var(--cf-pele-on-series-1)}.cinderfolio-pele :is(.pele-branch,.pele-leaf,.pele-period,.pele-timeline .pele-section):has(>rect[fill^=var\(--pele-series-2]:not([fill-opacity]))>text{fill:var(--cf-pele-on-series-2)}.cinderfolio-pele :is(.pele-branch,.pele-leaf,.pele-period,.pele-timeline .pele-section):has(>rect[fill^=var\(--pele-series-3]:not([fill-opacity]))>text{fill:var(--cf-pele-on-series-3)}.cinderfolio-pele :is(.pele-branch,.pele-leaf,.pele-period,.pele-timeline .pele-section):has(>rect[fill^=var\(--pele-series-4]:not([fill-opacity]))>text{fill:var(--cf-pele-on-series-4)}.cinderfolio-pele :is(.pele-branch,.pele-leaf,.pele-period,.pele-timeline .pele-section):has(>rect[fill^=var\(--pele-series-5]:not([fill-opacity]))>text{fill:var(--cf-pele-on-series-5)}.cinderfolio-pele :is(.pele-branch,.pele-leaf,.pele-period,.pele-timeline .pele-section):has(>rect[fill^=var\(--pele-series-6]:not([fill-opacity]))>text{fill:var(--cf-pele-on-series-6)}.cinderfolio-pele :is(.pele-branch,.pele-leaf,.pele-period,.pele-timeline .pele-section):has(>rect[fill^=var\(--pele-series-7]:not([fill-opacity]))>text{fill:var(--cf-pele-on-series-7)}.cinderfolio-pele :is(.pele-branch,.pele-leaf,.pele-period,.pele-timeline .pele-section):has(>rect[fill^=var\(--pele-series-8]:not([fill-opacity]))>text{fill:var(--cf-pele-on-series-8)}