:root{--bg-color: #fafafa;--text-color: rgba(0, 0, 0, .667);--text-color-reverse: rgba(255, 255, 255, .667);--text-color-primary: rgba(0, 0, 0, .833);--text-color-secondary: rgba(0, 0, 0, .5);--text-color-tertiary: rgba(0, 0, 0, .333);--text-color-quaternary: rgba(0, 0, 0, .25);--text-color-quinary: rgba(0, 0, 0, .167);--text-color-senary: rgba(0, 0, 0, .083);--text-color-success: #109510;--scrollbar-color: #666 #333;--link-color: #0e69af;--content-bg-color: #fff;--pane-bg-color: rgba(0, 0, 0, .033);--blockquote-border-color: rgba(0, 0, 0, .067);--button-text-color: var(--text-color-reverse);--code-bg-color: #00000018;--code-color: var(--text-color-primary);--font-text: "Noto Serif SC", Georgia, Times, "Times New Roman", serif;--font-heading: "Noto Serif SC", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-code: Consolas, monaco, monospace;--font-cursive: "Bradley Hand", Chalkboard, "Comic Sans", Alexa;--input-border: 1px solid var(--text-color-senary);--alert-warning-color: #cdda1c}:root{--content-border: 1px solid #0001}:root{--content-padding: 2rem;--content-border-radius: .5rem}:root{--avatar-size: 3rem;--avatar-gap: .75rem}@media screen and (max-width: 600px){:root{--content-border-radius: 0rem;--content-padding: 1rem;--avatar-size: 2rem}}*{box-sizing:border-box}html{scroll-behavior:smooth;font-size:clamp(18px,2vw,20px)}html[lang=ja],html[lang=zh],html[lang^=zh-]{font-size:clamp(16px,2vw,18px)}html,body{height:100%}body{margin:0;background-color:var(--bg-color);scrollbar-color:var(--scrollbar-color);color:var(--text-color);line-height:1.667;font-family:var(--font-text);text-shadow:0 0 .75px rgba(130,130,130,0)}[lang=ja],[lang=zh],[lang^=zh-]{--font-text: Georgia, serif}p{margin:1.333em 0}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);margin:1.133em 0 .33em}.typography h1,.typography h2,.typography h3,.typography h4,.typography h5,.typography h6{max-width:max(80ch,100%)}.typography h1{font-size:3em}.typography h2{font-size:2.45em}.typography h3{font-size:2em}.typography h4{font-size:1.667em}.typography h5{font-size:1.33em}@media screen and (max-width: 600px){.typography h1{font-size:2.333em}.typography h2{font-size:2em}.typography h3{font-size:1.667em}.typography h4{font-size:1.444em}.typography h5{font-size:1.222em}}ul,ol{padding-left:var(--content-padding);margin:.667em 0}li{margin:.133em 0}a{text-decoration:none;color:var(--link-color);word-break:break-word}code{word-break:break-word;word-wrap:break-word}pre,code:not([class*=language-]):not(.code-highlight){background-color:var(--code-bg-color);border-radius:.25rem;color:var(--code-color)}code:not([class*=language-]){padding:.15rem .3rem}pre{padding:1rem;margin:.667em 0;overflow-x:auto;word-break:break-word;word-wrap:break-word;white-space:pre-wrap}pre.scroll-x{white-space:pre}@media screen and (max-width: 600px){pre{font-size:80%}}pre code{background-color:transparent!important;border-radius:0!important;padding:0!important}pre cite{margin:-1rem -1rem .125rem;padding:.25rem 1rem;background:#ffffff1a;display:block;font-style:normal}blockquote{background-color:var(--bg-color);padding:1rem;margin-left:0;margin-right:0;border-radius:.3rem;border:1px solid var(--blockquote-border-color);border-left:.33rem solid var(--blockquote-border-color)}textarea{resize:vertical;font-family:unset}label{position:relative;display:block;width:100%}label .label{position:absolute;top:.4em;left:1rem;pointer-events:none;display:flex;align-items:center;gap:.25rem;transition:.2s ease all;color:var(--text-color-tertiary)}label .tips{position:absolute;font-size:67%;padding-left:1rem;color:var(--text-color-quaternary)}label .tips a{color:var(--text-color-quaternary);text-decoration:underline;cursor:help}textarea,select,radio,checkbox,button,.button,input{padding:1rem 1rem .3rem;border-radius:.3rem;font-size:100%;border:var(--input-border);background-color:var(--content-bg-color);color:var(--text-color);display:block;width:100%;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}textarea::placeholder,select::placeholder,radio::placeholder,checkbox::placeholder,button::placeholder,.button::placeholder,input::placeholder{color:transparent}textarea:focus,select:focus,radio:focus,checkbox:focus,button:focus,.button:focus,input:focus{outline:none;border-color:#105795aa;box-shadow:0 0 0 .125rem #10579580}textarea:focus~.label,textarea:not([placeholder])[required]:valid~.label,textarea[placeholder]:not(:placeholder-shown)~.label,select:focus~.label,select:not([placeholder])[required]:valid~.label,select[placeholder]:not(:placeholder-shown)~.label,radio:focus~.label,radio:not([placeholder])[required]:valid~.label,radio[placeholder]:not(:placeholder-shown)~.label,checkbox:focus~.label,checkbox:not([placeholder])[required]:valid~.label,checkbox[placeholder]:not(:placeholder-shown)~.label,button:focus~.label,button:not([placeholder])[required]:valid~.label,button[placeholder]:not(:placeholder-shown)~.label,.button:focus~.label,.button:not([placeholder])[required]:valid~.label,.button[placeholder]:not(:placeholder-shown)~.label,input:focus~.label,input:not([placeholder])[required]:valid~.label,input[placeholder]:not(:placeholder-shown)~.label{top:.0667em;transform:scale(.667);transform-origin:left top;color:var(--text-color-quinary)}textarea:focus~.label a,textarea:not([placeholder])[required]:valid~.label a,textarea[placeholder]:not(:placeholder-shown)~.label a,select:focus~.label a,select:not([placeholder])[required]:valid~.label a,select[placeholder]:not(:placeholder-shown)~.label a,radio:focus~.label a,radio:not([placeholder])[required]:valid~.label a,radio[placeholder]:not(:placeholder-shown)~.label a,checkbox:focus~.label a,checkbox:not([placeholder])[required]:valid~.label a,checkbox[placeholder]:not(:placeholder-shown)~.label a,button:focus~.label a,button:not([placeholder])[required]:valid~.label a,button[placeholder]:not(:placeholder-shown)~.label a,.button:focus~.label a,.button:not([placeholder])[required]:valid~.label a,.button[placeholder]:not(:placeholder-shown)~.label a,input:focus~.label a,input:not([placeholder])[required]:valid~.label a,input[placeholder]:not(:placeholder-shown)~.label a{pointer-events:initial}button,.button{--button-bg-color: #105795;--button-height: 2.5rem;width:auto;margin:0;height:var(--button-height);padding:.5rem 3rem;border:none;white-space:nowrap;position:relative;display:inline-flex;flex-wrap:nowrap;align-items:center;justify-content:center;outline:none;text-align:center;cursor:pointer;text-decoration:none;font-size:100%;-webkit-user-select:none;user-select:none;gap:calc(var(--button-height) / 6);color:var(--button-text-color);background-color:var(--button-bg-color);transition:transform .2s ease}button.text,.button.text{--button-bg-color: transparent;color:var(--text-color)}button.button-block,.button.button-block{width:100%}button.button-thin,button.button-text,.button.button-thin,.button.button-text{padding-left:1rem;padding-right:1rem}button.button-pill,.button.button-pill{border-radius:calc(var(--button-height) / 2)}button.button-text,.button.button-text{background-color:transparent}button.button-text:active,button.button-text:focus,.button.button-text:active,.button.button-text:focus{outline:none;border:none;box-shadow:none}button.button-tertiary,button.button-3,.button.button-tertiary,.button.button-3{--button-bg-color: var(--text-color-quaternary)}button.button-square,.button.button-square{width:var(--button-height);padding:unset}button.button-quaternary,button.button-4,.button.button-quaternary,.button.button-4{--button-bg-color: transparent;color:var(--text-color-quaternary)}button.button-quaternary:hover,button.button-4:hover,.button.button-quaternary:hover,.button.button-4:hover{--button-bg-color: var(--text-color-quaternary);color:inherit}@media screen and (max-width: 600px){button.button-xs-block,.button.button-xs-block{width:100%}button.button-xs-thin,.button.button-xs-thin{padding-left:1rem;padding-right:1rem}}button:hover:not(:disabled),.button:hover:not(:disabled){transform:scale(1.05);transform-origin:center}button:disabled:not(.loading),.button:disabled:not(.loading){opacity:.5;cursor:not-allowed}button.loading,.button.loading{--loading-mask-bg: rgba(255, 255, 255, .0667);overflow:hidden;cursor:wait;position:relative}button.loading:after,.button.loading:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:repeating-linear-gradient(45deg,#fff1,#fff1 25%,#0001 25%,#0001 50%);background-repeat:repeat-x;background-size:var(--button-height) var(--button-height);z-index:1;animation:run 2s ease infinite}@keyframes run{to{background-position:var(--button-height) 0}}.loadable{--loading-mask-bg: transparent}.loadable.loading{overflow:hidden;cursor:wait;position:relative}.loadable.loading:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:var(--loading-mask-bg);z-index:1}.loadable.loadable-visual{--loading-mask-bg: rgba(255, 255, 255, .1667)}.loadable.loadable-visual.loading:after{content:"";position:absolute;width:2em;height:2em;border:2px solid rgba(255,255,255,.5);border-top-color:transparent;border-radius:50%;z-index:1;animation:spin 2s ease-in-out infinite;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}.input-group{--input-group-height: 2.5rem;display:flex;align-items:center;justify-content:center}.input-group>*:not(:first-child):not(:last-child){border-left:none;border-right:none;border-radius:none}.input-group>:first-child,.input-group>label:first-child>input,.input-group>label:first-child>select,.input-group>label:first-child>button{border-right:none;border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:last-child,.input-group>label:last-child>input,.input-group>label:last-child>select,.input-group>label:last-child>button{border-left:0;border-top-left-radius:0;border-bottom-left-radius:0;flex:0}.input-group.input-group-pill>:first-child,.input-group.input-group-pill>label:first-child>input,.input-group.input-group-pill>label:first-child>select,.input-group.input-group-pill>label:first-child>button{border-top-left-radius:calc(var(--input-group-height) / 2);border-bottom-left-radius:calc(var(--input-group-height) / 2)}.input-group.input-group-pill>:last-child,.input-group.input-group-pill>label:last-child>input,.input-group.input-group-pill>label:last-child>select,.input-group.input-group-pill>label:last-child>button{border-top-right-radius:calc(var(--input-group-height) / 2);border-bottom-right-radius:calc(var(--input-group-height) / 2)}table{min-width:50%;max-width:100%;margin-bottom:1rem;margin-left:auto;margin-right:auto}tbody,td,tfoot,th,thead,tr{border-style:solid;border-width:0;border-color:var(--text-color-tertiary)}td,th{word-break:break-word}details summary{cursor:pointer;-webkit-user-select:none;user-select:none}details summary>*{display:inline-block}details summary:hover>*{text-decoration:underline}hr{border-top:1px solid var(--text-color-quinary);border-bottom:0;border-left:0;border-right:0}.line-number:before{white-space:nowrap}code[class*=language-]{white-space:pre-wrap!important;line-height:1!important}code[class*=language-].scroll-x{white-space:pre!important}.code-line{transition:background-color .2s ease;transition:filter .2s ease;padding-top:.25rem;padding-bottom:.25rem}.code-line:not(.highlight-line):not(.inserted):not(.deleted):hover{background-color:#fff8}.code-line:hover{filter:brightness(80%)}article a:hover{text-decoration:underline}.article-content p>img,.comment-body p>img{max-width:100%;height:auto}.article-content p:has(>img):not(:has(:not(img))),.comment-body p:has(>img):not(:has(:not(img))){text-align:center}.article-content a,.comment-body a{position:relative}.article-content a:not([href^="#"]):before,.comment-body a:not([href^="#"]):before{content:"";background-color:var(--text-color-tertiary);mask:url("data:image/svg+xml; utf8, <svg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-link' width='20' height='20' viewBox='0 0 24 24' stroke-width='1' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'><path stroke='none' d='M0 0h24v24H0z' fill='none'></path><path d='M9 15l6 -6'></path><path d='M11 6l.463 -.536a5 5 0 0 1 7.071 7.072l-.534 .464'></path><path d='M13 18l-.397 .534a5.068 5.068 0 0 1 -7.127 0a4.972 4.972 0 0 1 0 -7.071l.524 -.463'></path></svg>") no-repeat 50% 50%;-webkit-mask-size:cover;mask-size:cover;height:1rem;width:1rem;display:inline-block;vertical-align:sub}@media print{.article-content a:not([href^="#"]):before,.comment-body a:not([href^="#"]):before{display:none}}.article-content a[href^="mailto:"]:before,.comment-body a[href^="mailto:"]:before{mask:url('data:image/svg+xml; utf8, <svg  xmlns="http://www.w3.org/2000/svg"  width="24"  height="24"  viewBox="0 0 24 24"  fill="none"  stroke="currentColor"  stroke-width="2"  stroke-linecap="round"  stroke-linejoin="round"  class="icon icon-tabler icons-tabler-outline icon-tabler-mail"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M3 7a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v10a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-10z" /><path d="M3 7l9 6l9 -6" /></svg>') no-repeat 50% 50%!important;-webkit-mask-size:cover!important;mask-size:cover!important}.article-content a[aria-describedby=footnote-label]:before{content:"["}.article-content a[aria-describedby=footnote-label]:after{content:"]"}blockquote :first-child{margin-top:0}blockquote :last-child{margin-bottom:0}table{border-collapse:collapse;border-top:3px solid var(--text-color-tertiary);border-bottom:3px solid var(--text-color-tertiary)}table>:first-child>*{border-bottom-width:1px}table>:not(caption)>*>*{padding:.5rem}@media (prefers-color-scheme: light){code[class*=language-],pre[class*=language-]{color:inherit!important;text-shadow:none!important}div.mermaid{background-color:inherit!important;color:var(--text-color)!important}div.mermaid .node rect,div.mermaid .node circle,div.mermaid .node polygon,div.mermaid .node path{fill:var(--bg-color)!important;stroke:var(--text-color)!important}div.mermaid .nodeLabel{color:var(--text-color)!important}}.alert{padding:1rem;border-radius:.25rem;margin:1rem 0;border-left-width:1px!important}.alert>strong:first-child,.alert .alert-label{color:var(--alert-color);margin-right:.5rem}@media screen and (max-width: 768px){.alert>strong:first-child,.alert .alert-label{display:block;margin-bottom:.5rem}}.alert.alert-info{--alert-color: #2a99ee;background:#2a99ee0f!important;border:1px solid rgba(42,153,238,.3)}.alert.alert-warning{--alert-color: #eebe00;background:#eebe000f!important;border:1px solid rgba(238,190,0,.3)}@media screen and (max-width: 600px){.container>.alert{margin-right:.5rem;margin-left:.5rem}}.container{margin:0 auto;max-width:54rem;flex:1}@media screen and (max-width: 576px){.container{max-width:100svw;min-width:15rem}}.trunk>.container>h1{padding-left:calc(var(--content-padding) / 2)}@media screen and (max-width: 576px){.trunk>.container>h1{padding-left:var(--content-padding)}}.read-container{max-width:86ch}.read-container .read-content{padding:3ch}.grid-container{--grid-column-gap: 3ch;display:grid;grid-template-columns:1fr min(86ch,100% - var(--grid-column-gap) * 2) 1fr;grid-column-gap:var(--grid-column-gap)}.grid-container>*{grid-column:2}.grid-container .full-width{width:100%;grid-column:1/-1}@media (prefers-color-scheme: dark){:root{--bg-color: #111;--text-color: rgba(255, 255, 255, .667);--text-color-primary: rgba(255, 255, 255, .833);--text-color-secondary: rgba(255, 255, 255, .5);--text-color-tertiary: rgba(255, 255, 255, .333);--text-color-quaternary: rgba(255, 255, 255, .25);--text-color-quinary: rgba(255, 255, 255, .167);--text-color-senary: rgba(255, 255, 255, .083);--text-color-success: #109510;--link-color: #2a99ee;--content-bg-color: #fff1;--pane-bg-color: rgba(255, 255, 255, .083);--blockquote-border-color: rgba(255, 255, 255, .167);--button-text-color: var(--text-color-primary);--code-bg-color: #000000aa;--code-color: var(--text-color);--input-border: none}:root{--content-border: unset}blockquote{border-right:0;border-top:0;border-bottom:0}.code-line{transition:background-color .2s ease;transition:filter .2s ease}.code-line:not(.highlight-line):not(.inserted):not(.deleted):hover{background-color:#ffffff0f}.code-line:hover{filter:brightness(125%)}}.print-only{display:none}@media print{html{font-size:11pt}body{background-color:unset}[lang=zh],[lang^=zh-]{--font-text: Georgia, serif;font-size:10pt}a[data-print-content]:after{content:" (" attr(data-print-content) ")";font-size:80%;color:#666}a:not([href^="#"]):not([data-print-content-none]):not([data-print-content]):not([href^="mailto:"]):after{content:"(" attr(href) ")";font-size:80%;color:#666}abbr[title]:after{content:" (" attr(title) ")"}ol a[href^="#fnref-"]{display:none}p{margin:.5em 0}h1,h2,h3,h4,h5,h6{margin:1em 0 .133em}h2,h3,h4,h5,h6{page-break-after:avoid}.typography h1{font-size:2.333em}.typography h2{font-size:2em}.typography h3{font-size:1.667em}.typography h4{font-size:1.444em}.typography h5{font-size:1.222em}p,pre{widows:4;orphans:3}.page-break{page-break-after:always;break-after:page}blockquote{page-break-inside:avoid}pre{page-break-inside:auto}blockqoute,pre{-webkit-box-decoration-break:clone;box-decoration-break:clone}code[class*=language-],pre[class*=language-]{color:inherit!important}pre,code:not([class*=language-]):not(.code-highlight){border:1px solid #eee;background-color:inherit}.no-print,.print-none{display:none!important}.print-only,.print{display:block!important}.print-hidden{display:none!important}.print-visible{display:block!important}.print-inline{display:inline!important}.print-block{display:block!important}.print-inline-block{display:inline-block!important}.print-flex{display:flex!important}.print-inline-flex{display:inline-flex!important}.print-grid{display:grid!important}.print-inline-grid{display:inline-grid!important}.print-table{display:table!important}.print-table-row{display:table-row!important}.print-table-cell{display:table-cell!important}}
