:root{--paper:#fefefb;--n1:#f9f8f5;--n2:#f0efeb;--n3:#e3e1db;--n4:#d0cec6;--n5:#a8a69f;--n6:#787670;--n7:#5c5a55;--n8:#403f3a;--n9:#24231f;--accent:#c56473;--accent-soft:rgba(197,100,115,.10);--accent-line:rgba(197,100,115,.32);--hair:rgba(24,24,27,.07);--line:rgba(24,24,27,.10);--surface:#fff;--shadow:0 1px 2px rgba(24,24,27,.04),0 8px 24px -12px rgba(24,24,27,.10);--code-bg:#f4f3ef;--serif:"Noto Serif SC","Source Han Serif SC","Songti SC",STSong,SimSun,Georgia,serif;--sans:"Instrument Sans",system-ui,-apple-system,"PingFang SC","Noto Sans SC","Microsoft YaHei",sans-serif;--mono:"Cascadia Code PL","JetBrains Mono",Consolas,"Courier New",monospace;--mascot:min(440px,30vw,58vh);color-scheme:light}:root[data-theme=dark]{--paper:#1c1c1e;--n1:#141414;--n2:#242424;--n3:#404040;--n4:#5c5c5c;--n5:#787878;--n6:#a8a8a8;--n7:#d0d0d0;--n8:#e3e3e3;--n9:#f0efeb;--accent:#e095a4;--accent-soft:rgba(224,149,164,.12);--accent-line:rgba(224,149,164,.34);--hair:rgba(255,255,255,.10);--line:rgba(255,255,255,.14);--surface:#242426;--shadow:0 1px 2px rgba(0,0,0,.32),0 12px 32px -14px rgba(0,0,0,.55);--code-bg:#232326;color-scheme:dark}*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--n9);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;transition:background .4s ease,color .4s ease}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}button{font:inherit}:focus-visible{outline:2px solid var(--accent-line);outline-offset:2px;border-radius:4px}#prog{position:fixed;top:0;left:0;height:2px;width:0;background:var(--accent);z-index:99;transition:width .1s linear,background .4s}header{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:1px solid transparent;transition:border-color .3s,background .4s}@supports(backdrop-filter:blur(4px)){header{background:rgba(254,254,251,.86);backdrop-filter:blur(14px)saturate(150%);-webkit-backdrop-filter:blur(14px)saturate(150%)}:root[data-theme=dark] header{background:rgba(28,28,30,.86)}}header.stuck{border-bottom-color:var(--hair)}.hin{max-width:1080px;margin:0 auto;padding:0 28px;height:62px;display:flex;align-items:center;gap:28px}.brand{font-family:var(--serif);font-size:18px;font-weight:600;letter-spacing:.2px}.brand .d{color:var(--accent)}nav{margin-left:auto;display:flex;gap:26px;font-size:14px;color:var(--n6)}nav a{position:relative;transition:color .25s}nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:1px;background:var(--accent);transition:right .3s cubic-bezier(.2,.8,.3,1)}nav a:hover{color:var(--n9)}nav a:hover::after,nav a.on::after{right:0}nav a.on{color:var(--n9)}.tt{width:34px;height:34px;border:1px solid var(--hair);border-radius:9px;background:0 0;display:grid;place-items:center;cursor:pointer;color:var(--n6);transition:.25s}.tt:hover{color:var(--accent);border-color:var(--accent-line);background:var(--accent-soft)}.i-sun,.i-moon{display:none}:root[data-theme=light] .i-moon,:root[data-theme=dark] .i-sun{display:block}.wrap{max-width:1080px;margin:0 auto;padding:0 28px}.body{display:grid;grid-template-columns:minmax(0,1fr)236px;gap:60px;align-items:start;padding-bottom:90px}@media(max-width:880px){.body{grid-template-columns:1fr;gap:44px}}.hero{padding:78px 0 54px;max-width:760px}.hero .eyebrow{font-family:var(--mono);font-size:12.5px;letter-spacing:1.6px;color:var(--n5);text-transform:uppercase;margin-bottom:22px}.hero h1{font-family:var(--serif);font-size:44px;line-height:1.24;font-weight:600;letter-spacing:-.5px}.hero h1 em{font-style:normal;position:relative;color:var(--accent);white-space:nowrap}.hero h1 em::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;background:var(--accent-line);transform:scaleX(0);transform-origin:left;animation:draw 1s cubic-bezier(.2,.8,.3,1)1.05s forwards}@keyframes draw{to{transform:scaleX(1)}}.hero p{margin-top:22px;font-size:16.5px;line-height:1.78;color:var(--n6);max-width:600px}.fade{opacity:0;transform:translateY(16px);animation:rise .85s cubic-bezier(.2,.75,.3,1)forwards}.fade.d1{animation-delay:.05s}.fade.d2{animation-delay:.15s}.fade.d3{animation-delay:.3s}@keyframes rise{to{opacity:1;transform:none}}.head{padding:64px 0 40px;border-bottom:1px solid var(--hair);max-width:760px}.head .eyebrow{font-family:var(--mono);font-size:12.5px;letter-spacing:1.6px;color:var(--n5);text-transform:uppercase;margin-bottom:20px}.head h1{font-family:var(--serif);font-size:38px;font-weight:600;letter-spacing:-.4px;line-height:1.3}.head .lead{margin-top:18px;font-size:16px;line-height:1.78;color:var(--n6);max-width:600px}.lead-link{color:var(--accent);border-bottom:1px solid var(--accent-line);transition:border-color .25s}.lead-link:hover{border-bottom-color:var(--accent)}.shead{display:flex;align-items:baseline;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--hair);margin-bottom:8px}.shead h2{font-family:var(--serif);font-size:19px;font-weight:600}.shead span{margin-left:auto;font-family:var(--mono);font-size:12px;color:var(--n5)}.item{display:block;padding:20px 0;border-bottom:1px solid var(--hair);position:relative;transition:padding-left .32s cubic-bezier(.2,.8,.3,1)}.item:last-child{border-bottom:0}.item::before{content:"";position:absolute;left:-22px;top:22px;bottom:22px;width:2px;border-radius:2px;background:var(--accent);transform:scaleY(0);transform-origin:top;transition:transform .32s cubic-bezier(.2,.8,.3,1)}.item:hover{padding-left:16px}.item:hover::before{transform:scaleY(1)}.item h3{font-family:var(--serif);font-size:18.5px;font-weight:500;line-height:1.55;transition:color .25s}.item:hover h3{color:var(--accent)}.item .m{margin-top:9px;display:flex;gap:14px;align-items:center;font-family:var(--mono);font-size:12px;color:var(--n5)}.item .m i{font-style:normal;color:var(--accent);opacity:.85}.item p{margin-top:10px;font-size:14px;line-height:1.72;color:var(--n6)}.empty{text-align:center;padding:68px 20px;color:var(--n5)}.empty .ic{width:52px;height:52px;margin:0 auto 18px;color:var(--n4);display:block}.empty h3{font-family:var(--serif);font-size:17px;font-weight:500;color:var(--n7);margin-bottom:8px}.empty p{font-size:13.5px;line-height:1.7}.empty code{font-family:var(--mono);font-size:.9em;background:var(--n2);padding:2px 6px;border-radius:5px}aside .blk{margin-bottom:34px}aside h4{font-size:12.5px;letter-spacing:1.4px;text-transform:uppercase;color:var(--n5);font-family:var(--mono);margin-bottom:14px;font-weight:400}aside .tg{display:flex;flex-wrap:wrap;gap:8px}aside .tg a{font-size:12.5px;padding:5px 11px;border-radius:7px;border:1px solid var(--hair);color:var(--n6);transition:.25s}aside .tg a:hover{border-color:var(--accent-line);color:var(--accent);background:var(--accent-soft)}aside .ab{font-size:13.5px;line-height:1.8;color:var(--n6)}aside .st{display:flex;justify-content:space-between;font-size:13px;padding:8px 0;border-bottom:1px solid var(--hair);color:var(--n6)}aside .st b{font-weight:500;color:var(--n9);font-family:var(--mono);font-size:12.5px}.ahead{padding:64px 0 34px;max-width:760px}.ahead .eyebrow{font-family:var(--mono);font-size:12.5px;letter-spacing:1.6px;color:var(--accent);text-transform:uppercase;margin-bottom:20px}.ahead h1{font-family:var(--serif);font-size:40px;font-weight:600;line-height:1.3;letter-spacing:-.5px}.ameta{margin-top:22px;display:flex;gap:16px;flex-wrap:wrap;align-items:center;font-family:var(--mono);font-size:12.5px;color:var(--n5);padding-bottom:30px;border-bottom:1px solid var(--hair)}.ameta .atags{display:flex;gap:7px}.ameta .atags a{font-size:12px;padding:3px 10px;border-radius:6px;border:1px solid var(--hair);color:var(--n6);transition:.25s}.ameta .atags a:hover{border-color:var(--accent-line);color:var(--accent);background:var(--accent-soft)}.anav{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:56px;padding-top:26px;border-top:1px solid var(--hair);max-width:760px}.anav a{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border-radius:11px;border:1px solid var(--hair);transition:.25s;min-width:0}.anav a:hover{border-color:var(--accent-line);background:var(--accent-soft)}.anav .dir{font-family:var(--mono);font-size:11.5px;color:var(--n5)}.anav .ttl{font-family:var(--serif);font-size:15px;line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.anav .next{text-align:right}@media(max-width:620px){.anav{grid-template-columns:1fr}.anav .next{text-align:left}}.prose{max-width:760px;font-size:16.5px;line-height:1.85;color:var(--n7)}.prose>*+*{margin-top:1.15em}.prose h2{font-family:var(--serif);font-size:24px;font-weight:600;color:var(--n9);line-height:1.4;margin-top:2.1em;padding-top:.5em;letter-spacing:-.2px}.prose h3{font-family:var(--serif);font-size:19px;font-weight:600;color:var(--n9);line-height:1.5;margin-top:1.8em}.prose h4{font-size:16.5px;font-weight:600;color:var(--n9);margin-top:1.6em}.prose h2+*,.prose h3+*,.prose h4+*{margin-top:.7em}.prose p{margin-top:1.15em}.prose strong{color:var(--n9);font-weight:600}.prose em{font-style:italic}.prose a{color:var(--accent);border-bottom:1px solid var(--accent-line);transition:border-color .25s}.prose a:hover{border-bottom-color:var(--accent)}.prose .link-blocked{color:var(--n5);text-decoration:line-through;text-decoration-color:var(--accent-line);cursor:not-allowed}.prose ul,.prose ol{margin-top:1.15em;padding-left:1.45em}.prose li{margin-top:.45em}.prose li::marker{color:var(--n4)}.prose blockquote{border-left:2px solid var(--accent-line);background:var(--accent-soft);border-radius:0 10px 10px 0;padding:14px 20px;color:var(--n6);margin-top:1.3em}.prose blockquote>*+*{margin-top:.8em}.prose hr{border:0;border-top:1px solid var(--hair);margin:2.4em 0}.prose img{border-radius:12px;display:block;margin:1.5em auto}.prose code{font-family:var(--mono);font-size:.88em;background:var(--n2);padding:2px 6px;border-radius:5px;color:var(--n8);word-break:break-word}.prose pre{background:var(--code-bg);border:1px solid var(--hair);border-radius:12px;padding:18px 20px;overflow-x:auto;margin-top:1.4em;line-height:1.65}.prose pre code{background:0 0;padding:0;font-size:13.5px;color:var(--n8);word-break:normal}.prose table{width:100%;border-collapse:collapse;margin-top:1.4em;font-size:15px;display:block;overflow-x:auto}.prose th,.prose td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--hair);line-height:1.65}.prose th{font-family:var(--mono);font-size:11.5px;letter-spacing:.8px;text-transform:uppercase;color:var(--n5);font-weight:400;border-bottom-color:var(--n4);white-space:nowrap}.prose td{color:var(--n7)}.ygroup{margin-bottom:38px}.ygroup h4.y{font-family:var(--mono);font-size:13px;letter-spacing:1.6px;color:var(--n5);font-weight:400;padding-bottom:10px;border-bottom:1px solid var(--hair);display:flex;align-items:baseline;gap:10px}.ygroup h4.y span{margin-left:auto;font-size:11.5px;color:var(--n4)}.aitem{display:flex;gap:18px;align-items:baseline;padding:11px 0;position:relative;border-bottom:1px solid var(--hair);transition:padding-left .28s cubic-bezier(.2,.8,.3,1)}.aitem:last-child{border-bottom:0}.aitem::before{content:"";position:absolute;left:-18px;top:14px;bottom:14px;width:2px;border-radius:2px;background:var(--accent);transform:scaleY(0);transform-origin:top;transition:transform .28s}.aitem:hover{padding-left:14px}.aitem:hover::before{transform:scaleY(1)}.aitem time{font-family:var(--mono);font-size:12.5px;color:var(--n5);flex:none;width:44px}.aitem .t{font-family:var(--serif);font-size:16px;line-height:1.55;transition:color .25s}.aitem:hover .t{color:var(--accent)}.tagcloud{display:flex;flex-wrap:wrap;gap:11px}.tagcloud a{display:inline-flex;align-items:baseline;gap:8px;font-family:var(--serif);font-size:16px;padding:9px 16px;border-radius:11px;border:1px solid var(--hair);color:var(--n7);transition:.25s}.tagcloud a span{font-family:var(--mono);font-size:11.5px;color:var(--n5)}.tagcloud a:hover{border-color:var(--accent-line);color:var(--accent);background:var(--accent-soft)}.tagcloud a:hover span{color:var(--accent)}footer{border-top:1px solid var(--hair);padding:30px 0 260px}.fin{max-width:1080px;margin:0 auto;padding:0 28px}.fin .row{display:flex;gap:18px;flex-wrap:wrap;font-size:12.5px;color:var(--n5);font-family:var(--mono)}.fin .row a{color:var(--n6);transition:color .25s}.fin .row a:hover{color:var(--accent)}.fin .row .sp{margin-left:auto}@media(max-width:620px){footer{padding-bottom:200px}}.reveal{opacity:0;transform:translateY(18px);transition:opacity .8s cubic-bezier(.2,.75,.3,1),transform .8s cubic-bezier(.2,.75,.3,1)}.reveal.in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto}.reveal,.fade{opacity:1;transform:none}}#mascot{position:fixed;right:24px;bottom:16px;z-index:80;width:var(--mascot);transition:transform .45s cubic-bezier(.2,.8,.3,1),opacity .38s ease}#mascot:hover,#mascot.away:hover{transform:translateY(-9px);opacity:1}#mascot.away{transform:translateX(34px)scale(.96);opacity:.35}#mascot.hide{transform:translateX(155%)scale(.7);opacity:0;pointer-events:none}#mascot .board{position:relative;width:var(--mascot);height:var(--mascot);cursor:pointer;display:grid;place-items:center;transition:filter .32s}#mascot .board::after{content:"";position:absolute;inset:-7%;pointer-events:none;border-radius:50%;background:radial-gradient(circle at 50% 74%,rgba(254,254,251,.9) 0%,rgba(254,254,251,.62) 46%,rgba(254,254,251,0) 74%)}:root[data-theme=dark] #mascot .board::after{background:radial-gradient(circle at 50% 74%,rgba(28,28,30,.9) 0%,rgba(28,28,30,.62) 46%,rgba(28,28,30,0) 74%)}#mascot:hover .board{filter:drop-shadow(0 18px 30px rgba(88,166,232,.38))drop-shadow(0 3px 6px rgba(24,24,27,.16))}#mk{position:relative;z-index:2;width:100%;height:100%;object-fit:contain;display:block;transition:opacity .16s ease,transform .3s cubic-bezier(.2,.8,.3,1);-webkit-user-drag:none;user-select:none}#mk.out{opacity:0;transform:scale(.94)}#mascot.hop .board{animation:hop .52s ease}@keyframes hop{0%,100%{transform:translateY(0)}38%{transform:translateY(-14px)}}#say{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%)translateY(5px);background:var(--n9);color:var(--paper);font-size:13px;padding:7px 13px;border-radius:9px;white-space:nowrap;opacity:0;pointer-events:none;transition:.28s;z-index:6;max-width:min(300px,70vw);overflow:hidden;text-overflow:ellipsis}#say.on{opacity:1;transform:translateX(-50%)translateY(0)}#say::after{content:"";position:absolute;bottom:-4px;left:50%;margin-left:-4px;width:8px;height:8px;background:var(--n9);transform:rotate(45deg)}#mtools{position:fixed;right:24px;bottom:calc(var(--mascot) + 26px);z-index:80;display:flex;flex-direction:column;gap:8px}#mtools button{width:38px;height:38px;border-radius:11px;border:1px solid var(--hair);background:var(--surface);color:var(--n6);cursor:pointer;display:grid;place-items:center;box-shadow:var(--shadow);transition:.25s;position:relative}#mtools button:hover{color:var(--accent);border-color:var(--accent-line);transform:translateY(-2px)}#mtools .lab{position:absolute;right:48px;top:50%;transform:translateY(-50%)translateX(6px);background:var(--n9);color:var(--paper);font-size:11.5px;padding:4px 9px;border-radius:6px;white-space:nowrap;opacity:0;pointer-events:none;transition:.25s}#mtools button:hover .lab,#mtools button:focus-visible .lab{opacity:1;transform:translateY(-50%)translateX(0)}@media(max-width:620px){:root{--mascot:min(200px,44vw)}#mascot{right:6px;bottom:6px}#mascot.hide{transform:translateX(125%)}#mtools{right:8px;bottom:calc(var(--mascot) + 16px)}}@media(max-width:620px){.hero{padding:52px 0 38px}.hero h1{font-size:31px}.ahead{padding:44px 0 26px}.ahead h1{font-size:30px}.head{padding:44px 0 30px}.head h1{font-size:28px}.prose{font-size:16px}nav{gap:18px;font-size:13px}.hin{padding:0 20px}.wrap{padding:0 20px}}@media print{#mascot,#mtools,#prog,header{display:none!important}body{background:#fff;color:#000}.prose{max-width:none}}:root[data-theme=light] .chroma,:root[data-theme=dark] .chroma{background:0 0}:root[data-theme=light] .bg{color:#4c4f69}:root[data-theme=light] .chroma{color:#4c4f69;-webkit-text-size-adjust:none}:root[data-theme=light] .chroma .x{color:#4c4f69}:root[data-theme=light] .chroma .err{color:#d20f39}:root[data-theme=light] .chroma .cl{color:#4c4f69}:root[data-theme=light] .chroma .lnlinks{outline:none;text-decoration:none;color:inherit}:root[data-theme=light] .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}:root[data-theme=light] .chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}:root[data-theme=light] .chroma .lnt{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#8c8fa1}:root[data-theme=light] .chroma .ln{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#8c8fa1}:root[data-theme=light] .chroma .line{display:flex}:root[data-theme=light] .chroma .k{color:#8839ef}:root[data-theme=light] .chroma .kc{color:#fe640b}:root[data-theme=light] .chroma .kd{color:#d20f39}:root[data-theme=light] .chroma .kn{color:#179299}:root[data-theme=light] .chroma .kp{color:#8839ef}:root[data-theme=light] .chroma .kr{color:#8839ef}:root[data-theme=light] .chroma .kt{color:#d20f39}:root[data-theme=light] .chroma .na{color:#1e66f5}:root[data-theme=light] .chroma .nc{color:#df8e1d}:root[data-theme=light] .chroma .no{color:#df8e1d}:root[data-theme=light] .chroma .nd{color:#1e66f5;font-weight:700}:root[data-theme=light] .chroma .ni{color:#179299}:root[data-theme=light] .chroma .ne{color:#fe640b}:root[data-theme=light] .chroma .nl{color:#04a5e5}:root[data-theme=light] .chroma .nn{color:#fe640b}:root[data-theme=light] .chroma .nx{color:#4c4f69}:root[data-theme=light] .chroma .py{color:#fe640b}:root[data-theme=light] .chroma .nt{color:#8839ef}:root[data-theme=light] .chroma .nb{color:#04a5e5}:root[data-theme=light] .chroma .bp{color:#04a5e5}:root[data-theme=light] .chroma .nv{color:#dc8a78}:root[data-theme=light] .chroma .vc{color:#dc8a78}:root[data-theme=light] .chroma .vg{color:#dc8a78}:root[data-theme=light] .chroma .vi{color:#dc8a78}:root[data-theme=light] .chroma .vm{color:#dc8a78}:root[data-theme=light] .chroma .nf{color:#1e66f5}:root[data-theme=light] .chroma .fm{color:#1e66f5}:root[data-theme=light] .chroma .ld{color:#4c4f69}:root[data-theme=light] .chroma .s{color:#40a02b}:root[data-theme=light] .chroma .sa{color:#d20f39}:root[data-theme=light] .chroma .sb{color:#40a02b}:root[data-theme=light] .chroma .sc{color:#40a02b}:root[data-theme=light] .chroma .dl{color:#1e66f5}:root[data-theme=light] .chroma .sd{color:#9ca0b0}:root[data-theme=light] .chroma .s2{color:#40a02b}:root[data-theme=light] .chroma .se{color:#1e66f5}:root[data-theme=light] .chroma .sh{color:#9ca0b0}:root[data-theme=light] .chroma .si{color:#40a02b}:root[data-theme=light] .chroma .sx{color:#40a02b}:root[data-theme=light] .chroma .sr{color:#179299}:root[data-theme=light] .chroma .s1{color:#40a02b}:root[data-theme=light] .chroma .ss{color:#40a02b}:root[data-theme=light] .chroma .m{color:#fe640b}:root[data-theme=light] .chroma .mb{color:#fe640b}:root[data-theme=light] .chroma .mf{color:#fe640b}:root[data-theme=light] .chroma .mh{color:#fe640b}:root[data-theme=light] .chroma .mi{color:#fe640b}:root[data-theme=light] .chroma .il{color:#fe640b}:root[data-theme=light] .chroma .mo{color:#fe640b}:root[data-theme=light] .chroma .o{color:#04a5e5;font-weight:700}:root[data-theme=light] .chroma .ow{color:#04a5e5;font-weight:700}:root[data-theme=light] .chroma .or{color:#04a5e5;font-weight:700}:root[data-theme=light] .chroma .c{color:#9ca0b0;font-style:italic}:root[data-theme=light] .chroma .ch{color:#acb0be;font-style:italic}:root[data-theme=light] .chroma .cm{color:#9ca0b0;font-style:italic}:root[data-theme=light] .chroma .c1{color:#9ca0b0;font-style:italic}:root[data-theme=light] .chroma .cs{color:#9ca0b0;font-style:italic}:root[data-theme=light] .chroma .cp{color:#9ca0b0;font-style:italic}:root[data-theme=light] .chroma .cpf{color:#9ca0b0;font-weight:700;font-style:italic}:root[data-theme=light] .chroma .gd{color:#d20f39}:root[data-theme=light] .chroma .ge{font-style:italic}:root[data-theme=light] .chroma .gr{color:#d20f39}:root[data-theme=light] .chroma .gh{color:#fe640b;font-weight:700}:root[data-theme=light] .chroma .gi{color:#40a02b}:root[data-theme=light] .chroma .go{color:#4c4f69}:root[data-theme=light] .chroma .gp{color:#4c4f69}:root[data-theme=light] .chroma .gs{font-weight:700}:root[data-theme=light] .chroma .gu{color:#fe640b;font-weight:700}:root[data-theme=light] .chroma .gt{color:#d20f39}:root[data-theme=light] .chroma .gl{text-decoration:underline}:root[data-theme=dark] .bg{color:#cdd6f4}:root[data-theme=dark] .chroma{color:#cdd6f4;-webkit-text-size-adjust:none}:root[data-theme=dark] .chroma .x{color:#cdd6f4}:root[data-theme=dark] .chroma .err{color:#f38ba8}:root[data-theme=dark] .chroma .cl{color:#cdd6f4}:root[data-theme=dark] .chroma .lnlinks{outline:none;text-decoration:none;color:inherit}:root[data-theme=dark] .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}:root[data-theme=dark] .chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}:root[data-theme=dark] .chroma .lnt{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#7f849c}:root[data-theme=dark] .chroma .ln{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#7f849c}:root[data-theme=dark] .chroma .line{display:flex}:root[data-theme=dark] .chroma .k{color:#cba6f7}:root[data-theme=dark] .chroma .kc{color:#fab387}:root[data-theme=dark] .chroma .kd{color:#f38ba8}:root[data-theme=dark] .chroma .kn{color:#94e2d5}:root[data-theme=dark] .chroma .kp{color:#cba6f7}:root[data-theme=dark] .chroma .kr{color:#cba6f7}:root[data-theme=dark] .chroma .kt{color:#f38ba8}:root[data-theme=dark] .chroma .na{color:#89b4fa}:root[data-theme=dark] .chroma .nc{color:#f9e2af}:root[data-theme=dark] .chroma .no{color:#f9e2af}:root[data-theme=dark] .chroma .nd{color:#89b4fa;font-weight:700}:root[data-theme=dark] .chroma .ni{color:#94e2d5}:root[data-theme=dark] .chroma .ne{color:#fab387}:root[data-theme=dark] .chroma .nl{color:#89dceb}:root[data-theme=dark] .chroma .nn{color:#fab387}:root[data-theme=dark] .chroma .nx{color:#cdd6f4}:root[data-theme=dark] .chroma .py{color:#fab387}:root[data-theme=dark] .chroma .nt{color:#cba6f7}:root[data-theme=dark] .chroma .nb{color:#89dceb}:root[data-theme=dark] .chroma .bp{color:#89dceb}:root[data-theme=dark] .chroma .nv{color:#f5e0dc}:root[data-theme=dark] .chroma .vc{color:#f5e0dc}:root[data-theme=dark] .chroma .vg{color:#f5e0dc}:root[data-theme=dark] .chroma .vi{color:#f5e0dc}:root[data-theme=dark] .chroma .vm{color:#f5e0dc}:root[data-theme=dark] .chroma .nf{color:#89b4fa}:root[data-theme=dark] .chroma .fm{color:#89b4fa}:root[data-theme=dark] .chroma .ld{color:#cdd6f4}:root[data-theme=dark] .chroma .s{color:#a6e3a1}:root[data-theme=dark] .chroma .sa{color:#f38ba8}:root[data-theme=dark] .chroma .sb{color:#a6e3a1}:root[data-theme=dark] .chroma .sc{color:#a6e3a1}:root[data-theme=dark] .chroma .dl{color:#89b4fa}:root[data-theme=dark] .chroma .sd{color:#6c7086}:root[data-theme=dark] .chroma .s2{color:#a6e3a1}:root[data-theme=dark] .chroma .se{color:#89b4fa}:root[data-theme=dark] .chroma .sh{color:#6c7086}:root[data-theme=dark] .chroma .si{color:#a6e3a1}:root[data-theme=dark] .chroma .sx{color:#a6e3a1}:root[data-theme=dark] .chroma .sr{color:#94e2d5}:root[data-theme=dark] .chroma .s1{color:#a6e3a1}:root[data-theme=dark] .chroma .ss{color:#a6e3a1}:root[data-theme=dark] .chroma .m{color:#fab387}:root[data-theme=dark] .chroma .mb{color:#fab387}:root[data-theme=dark] .chroma .mf{color:#fab387}:root[data-theme=dark] .chroma .mh{color:#fab387}:root[data-theme=dark] .chroma .mi{color:#fab387}:root[data-theme=dark] .chroma .il{color:#fab387}:root[data-theme=dark] .chroma .mo{color:#fab387}:root[data-theme=dark] .chroma .o{color:#89dceb;font-weight:700}:root[data-theme=dark] .chroma .ow{color:#89dceb;font-weight:700}:root[data-theme=dark] .chroma .or{color:#89dceb;font-weight:700}:root[data-theme=dark] .chroma .c{color:#6c7086;font-style:italic}:root[data-theme=dark] .chroma .ch{color:#585b70;font-style:italic}:root[data-theme=dark] .chroma .cm{color:#6c7086;font-style:italic}:root[data-theme=dark] .chroma .c1{color:#6c7086;font-style:italic}:root[data-theme=dark] .chroma .cs{color:#6c7086;font-style:italic}:root[data-theme=dark] .chroma .cp{color:#6c7086;font-style:italic}:root[data-theme=dark] .chroma .cpf{color:#6c7086;font-weight:700;font-style:italic}:root[data-theme=dark] .chroma .gd{color:#f38ba8}:root[data-theme=dark] .chroma .ge{font-style:italic}:root[data-theme=dark] .chroma .gr{color:#f38ba8}:root[data-theme=dark] .chroma .gh{color:#fab387;font-weight:700}:root[data-theme=dark] .chroma .gi{color:#a6e3a1}:root[data-theme=dark] .chroma .go{color:#cdd6f4}:root[data-theme=dark] .chroma .gp{color:#cdd6f4}:root[data-theme=dark] .chroma .gs{font-weight:700}:root[data-theme=dark] .chroma .gu{color:#fab387;font-weight:700}:root[data-theme=dark] .chroma .gt{color:#f38ba8}:root[data-theme=dark] .chroma .gl{text-decoration:underline}