@font-face{font-family:CangEr ShuYuan;src:url(/blog/assets/Font_CangEr-ShuYuan-Extend-HqwlQBnD.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Meialia Dragon;src:url(/blog/assets/Meialia_Dragon-Regular-34ekDDty.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}*{box-sizing:border-box}html,body,#app{min-width:0;height:100%;margin:0;overflow:hidden}body{color:#5a4a3a;background:#f4e4c4;font-family:CangEr ShuYuan,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;line-height:1.7;overflow-x:hidden}#app{position:relative;background:#f4e4c4}#app:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background-image:url(/blog/assets/Sprite_Vertical_BG-S07OKrA8.png);background-size:cover;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}a{color:inherit}button,input,textarea,select{font:inherit}.language-switcher{position:relative;flex:0 0 auto;width:fit-content;margin-left:auto;color:#5a4a3a}.language-button{display:inline-flex;align-items:center;min-width:168px;padding:8px 12px;color:inherit;border:1px solid #d4af8c;border-radius:0;background:#f8f4e8;cursor:pointer}.language-button:hover{border-color:#c8b299;background:#e6d4b8}.language-button:focus-visible,.language-option:focus-visible{outline:2px solid #8b7355;outline-offset:2px}.language-icon{width:18px;height:18px;flex:0 0 auto;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.language-label{flex:1 1 auto;min-width:0;margin:0 14px;text-align:left;white-space:nowrap}.language-caret{width:16px;height:16px;flex:0 0 auto;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.language-menu{position:absolute;top:calc(100% - 1px);right:0;z-index:5;min-width:100%;border:1px solid #d4af8c;background:#f8f4e8;box-shadow:0 4px #5a4a3a1f}.language-option{display:block;width:100%;padding:8px 14px;color:inherit;border:0;border-radius:0;background:#f8f4e8;text-align:left;white-space:nowrap;cursor:pointer}.language-option:hover,.language-option.is-active{color:#fff;background:#8b7355}.blog-list-header{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px 18px}.blog-list-heading{flex:1 1 260px;min-width:0}.blog-shell{position:relative;z-index:1;height:100%;overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable both-edges;padding:28px 12px;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.blog-frame{width:min(100%,1080px);margin:0 auto;border:16px solid transparent;border-image-source:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAcAAAAEACAYAAAAkzabHAAAAAXNSR0IArs4c6QAADxpJREFUeJzt3T9O3coCB+DhKftgAXSIArEANhB2kDYF6dJF6dKFIm12QDZA/YQoEB0LQHpLeD2veDLXMfZ47OPj45n5PulKN3Dwn7HP/DxjeyYEAAAAAIBiHXV/8OP7l9fuz75++/nucwCH1FdXDTk9OQ4hhHB5dT27Lhta31r149j+zt2OKeW4j3UdMl+SAjCE+EZOKUBhuj2x4+d4rW9fFV0J5lTWIcwPwLnrC2G347TLeod0t2fXdTRlGkJ/ud7d3rwt/+n5ZdK27Sq1TksOwL4FLHGQTk+OBwuvW2gp691q5bDmVdYu61x6G8bkeCz3Ze7xqqGcxsrm86eP0b+/f3h8+/+xEIxV3O31/Pr9J7rOFO1jl3r8u/u6xHb0LbdPd12xEGzKsS/8Pn/6OLjd+27JRgOwvaDYRg4ZKsSh5QxdmfUFYKp9FuCcZa8VRLuupzl2U49VV+zEX8suPRaHCJS+bZpb0e1z+9domaSsM6Wy7mpCcOj8bQdfCP+cv1PXtVQgzVn3kNg27bqOvnJtl+XF+dms7WobOkdi5+NQfTYpAFM2dpcCjBVeU3ApB6/vM1MrgjlXEFOXOecqK7b+lBNgjr5tGOvyCGF6+MW2ccmK5FDmXLikHrcly2dOBbOk1O65peuaRjf8QohX3LvaZyCtrdu6Tg2/rn21ZNvL7Z5noyf9vg9GX9dENwBT7RKCY/scu4oYW15suWN2OSn2cezGupLmHrtdTSmnsXI5ZPAufdGyL0ucW0v1Lk1x//C4qfO2FO2Li6XKconvdCz8QthAAIawfOHFCu7rt59Hc+8ntJc7dO8yhP7u231XGGteNQ5dSc+98ivZksG8tK1s25rndUqPE9O1L4xD2E5ZzgrAEIa7Qffh0FcPbamtg9i9yxDm3z/IwVArUEXC1g0FoHN2d+16YSvl2dTXQz12H1IWsO9K/OL8LNw/PC5agaY8rTVnv6Y8GFRi+IXwz/GC3PXd+2M3Wwm/FKMBWIKlg+jzp49vAXB3e/PavXe5j3VunYqEXOVUYW9dbmX5r6FftJuMa9xcbwoulwKMbWcu+7CEbvDVtO/kpzk/725vXl20LWvL3/2h5z4GA5BpavsytU/22vadcmy50mb/ogG49gvBuZ6Mnn78v5r3HdiesVtRWoA76Fb4NQdAzftOnpyzCMAd1fwlqnnfydfF+ZlzlxDCyFOgaw2DlDtfJoD8VPEaBPsj/IFcJXWB1vZOGwD5G3uFzz1AAKokAAEozthA2CGM3ANsz/8GACVJagHePzwa/BiA7MQGdEka6WXt2ZIBYK6U7s8QEl+D6Jvz7f7hUQgCsFljt/FmjfVp7EsAtqpv4uM+SS1Ao/0DsHWpwdeIfsi9PwC2bmrwNXo/3A6+p+eXEILRYADYnrnhF0InAPuCLwThB8C2dV/VSwnEoxDisz4IPwBy8uv3n7cnQGNBaCg0AIry+dPH8PT88ldPZp9/hRB/URAASvTWAhwKwbHpJAAgR391gX799vNIaxCAGvTeAxSEAJTOQzAAVEkAAlAlAQhAlQQgAFUSgABUSQACUKXBAIyNDwoAudMCBKBYscbcaACaDQKAEmkBAlCclMabAASgaEPdoAIQgOL1haAABKBI3W7QbggOBuDpyfHblPIAkKPYvcDRFuD9w+OiGwMAWzAYgJdX10eXV9dHIQhBAMoz2gIUggCUoDvRe9JDMEIQgNIkBeDd7c1rCCFcnJ/td2sAYEG/fv8Z/N1oAAo/AEqU1AIUfgDkrHv/L4SRAGxafwBQmsEAbMLv6fllva0BgJVEW4DCD4BSRV+EX3NDAGBNBsMGoEoCEIAqCUAAihR7CT6EED6stB0AsJpfv/+MTumnBQhAUe4fHv8Kv6GHOgcDsG/6eADYsu6kDbE3Gnq7QIUfADnpm61o7HW+0XuAsenkAeDQprT62kbvAY49RQMAh9IOv8ur66Mpg7h4CAaALHXDb+rfew0CgKz1hV93NqO+zwhAALLTtP6aYJszfV+0ydh+GtTDMABsQd8Tn10X52dvz7D0TYYbghYgAJm7OD+b9XfRAPz67eeRdwIB2JK5gdcVfQpU+AFQKq9BAFCclHfYkwLQAzAAlEYLEIBiDT0BGoIABKBSAhCAooy9/9cQgABUSQACUCUzwgNQJS1AAIqRev8vhIQA9A4gACXSAgSgSr0B6P4fAKXTAgSgStEAdP8PgByl9GRqAQJQJQEIQDGm9FwKQACK0oTgWDeoAASgSgIQgCpFAzBlSnkA2KpYN6gWIABV6g3AlEFEAWCrUp4G1QIEoEofhn5xenIcQgjh/uHx7WcX52fvPjf2ewDYokktwHbY3T88/vVvAMjJYAvw8ur67T7g3e3N21M03dC7vLo+av8eAHIwGIBtTRi2g677M92fAOQkKQAb7VZhCMIPgG1KeY99UgCG8HcrMAThB0Cekt73G7rHJ/wA2Jp26y/2Xnu0BSj4AChVUheowAMgN2OjmkXfA3x6fglPzy8GxQYgC1PyylBoAFQpGoAGxQYgRyn5pQUIQJUEIADFiU2E2xCAAFQpGoApCQoAW5EyEW5jMACFHwAlS+oCnZKoAJCD3gBst/6EHwA5GuvJjLYAhR8ApfIUKABFSW28CUAAqiQAAaiSAASgSgIQgCoJQACKdHpyHP29AASgKPcPj+H05DhcXl1Hp0T6sNYGAcAc9w+P7352cX42+Lmx4GsIQAA2rQm7dsDd3d68G+UlNfgavR82FBoAW3X/8Dg57Pq4BwhAVi7Oz0JfC3Cq3gD8+u3nzskKAPuyRAhqAQKQpSYE5wahAAQgWxfnZ7Nbg6MB+Ov3n3lbBQArmROCWoAAFOHp+WVSCA4GoAdhAMjN0/NL8me1AAGo0mAAtl+GB4BcpOaXFiAAVRoNQEOhAZCDqXnVG4C6PwEonS5QAIqT0pB7F4BmggCgBlqAABRjSsNtMAC1/gAo2bsAPD05Dqcnx4fYFgBYzNh9wA/dHzRTzTdTzw9ppqgHgBwlj/fZDDAq+ADYumYmo9i41u9agG3dUbWFHwCl6A3AdvAJPQBK9O4hmCb8np5fhB8AWYs9CNP7GsSU+ZQAIEfvAvDy6tpEuABkLeVddiPBAFAlAQhAlXoDsHlvonmPAgBKM9oCFIIAlEgXKABVGgzA2PAxALBlKb2XWoAAVEkAAlCsWG+mAASgSgIQgKKkvr0gAAGokgAEoEhjbzMIQACqJAABqJIABKBKAhCAKg0GYGwaeQDInRYgAMWYMoPRaACmTCsPALnRAgSgOCkzGglAAIqT8hyLAASgSr1NxHZyugcIQE66D8IMdYdqAQJQpdEAnPJIKQDkIqkF+Ov3H0EIQFGij4kOPUXjviAAW9ZutM26B/j128+jlHcpAGArUnssP4x9oNsK1PoDYOtOT45DCCFcXl0PNuImdYEKPwC27P7hMYQQD77G4AeEHwC5mBJ8jdEu0BCEHwDbNCf4GqMBKPwA2Jpdgq+R1AIEgC25OD8LIYTw3//8+zWEPXaBAsCWNYF4d3vzGkJaEBoLFIBiXJyfhYvzs7cgjBGAABSnCcFYEApAAIr09PwS/b0ABKA4zXBosRAcfAimGUamebKm0dxoBICcDQZg+wmau9ubV8EHQG5iEzqMdoEKPwBK1JuM7admhB8AuZk1H+CP719en55fwtPzi/ADoFieAgWgOCnjWAtAAKoUDcDUaeUBIDfvArB7s1AIAlCi3hZg7L0JACjBYBeoEAQgZ82DMD++f+kdEDvpIRjdoACUxlOgABRprPEWDUDdoACUSgsQgKIlD4UGADUQgABUSQACUCUBCEBxmidAd5oQFwBKJAABqJIABKBYQ8OghTAhAA2HBkBJRgPQaDAA5MaM8AAwQAACUCUBCEBxUp5bEYAAFKUdfl6EB6AKU95YEIAAFKP99OfYWwwCEIAqCUAAqiQAAajSaADGxlEDgK0ay6/kFmDKsDIAkAtdoAAUJbXBFg1A3Z8AlCoagKcnx2ttBwCs6sPQL+5ub15DEIIAlGkwALvuHx7f/v/i/GwvGwMAa0ma7LZpDXYJQgC2ZtHBsC+vro8ur67fLaTdKgSAnCR1gfa1ALX+ANiyscGwowEo+CAP9w+Pvpt7omzLNdgF2g2/i/MzJwFQpVxu99w/PGazrVsweg9wy8HnQCsD/jkHnAv7tfXy3fr2HcJOY4E+Pb9Mml0XoCTdUNlqyGx1u7ZuMAD7nvrcEle9yoB8KujctevDrZXx1rZnC9pjgcZagckvwgPbdXl1fTT0vi7LaELw7vbmtQmdQ94e6gZfd/vmbltKr18pswNlORtEc+CbA+4KSBnUaKgCdC7sV7c1uFZ5//r95+2/oWO/xPJTP7t1KSE92ALMZSaI5sq31keV21f+tZZB7bZ0uyK1Ytx6C+LX7z9v4yD3lW+7tRXC/r977XLtjs+86/GfG2Z9f7fV4/rj+5fXvncCs+sC7bb+2nI6ILtqXwEKwfrEvgfN79c4D5aqPLf0PR3apx/fv/z176/ffv713Wv+LrYv7WWn7vNQ+O07+MZeIu9rJMXKIKV81rZTAK7ZV9ysq292iuYkPD05Dk/PLwfbxrX0dbkIQUJY915g7Ls1VHkO9Sz9+v1n0vdwqZbm0HKmzILTBFGzb0MVfXddKWHYF35LdXf2GQu92GdjvYbt9U091inLbGsv+/Onj9FzZfQkHTuIU8zZ6bknwK5duCknZN/f7PMqp90tE8JwOTQV4NPzy6LbsWa//5oXJXOuyg+p2/rv/r4dgLELoZQKZOyzjSkVZ9shbrWMVYohLLc/7bKcGtrdz6duU/v7n2ru/nYtdTzn1L9Dy2n+pm8fkwNw7hXDUIFMvTJb6gC1rf3lS6lcxw5wykVAuwIc+hLMvTLeuiXKeB/Lmru+vuWPnQN9x39ORZxq1+/mLt/DqS3NOcuaI7b+9npSt3POtt3d3ryOheDS9WrKfi9d705Zbnd/Z508cwqtb5kpV2K7rHOOOfu+VpBOaQGnhOBc+z4Wa1+YzKmQDiX1HtCU479LBbJv7W3aR9Ae4lyOrXPJbRwLwLWP5Zip372p5dj3N8kBeKgm8tYO0hyHvhrdZVtyK/8lK/G1AmHf6+kuP7djWoIpQb5k6NfsEBc8k/34/uV161fdAAAAAAAAkJH/ATIIKfKXFERLAAAAAElFTkSuQmCC);border-image-slice:16;border-image-repeat:round;background:#f4e4c4;background-clip:padding-box}.blog-panel{padding:clamp(22px,4vw,46px);background:#f4e4c4}.blog-title{margin:0;font-size:clamp(28px,5vw,46px);font-weight:700;line-height:1.25;letter-spacing:0;color:#4d3e2f}.blog-subtitle{margin:8px 0 0;font-family:Meialia Dragon,serif;font-size:20px;color:#8b7355;letter-spacing:0}.post-list{display:grid;gap:14px;margin-top:28px}.post-link{position:relative;display:block;padding:20px;text-decoration:none;background:#f8f4e8;border:1px solid #d4af8c;border-radius:0}.post-link:hover{background:#f0e6d2}.post-meta{display:block;margin:0 0 8px;padding-right:110px;font-size:14px;color:#8a7a6a}.post-date{position:absolute;top:18px;right:20px;font-size:13px;color:#8a7a6a}.post-link h2{margin:0;padding-right:110px;font-size:24px;font-weight:700;line-height:1.3;color:#5a4a3a}.post-link p{margin:8px 0 0;color:#6d5a44}.blog-back{display:inline-flex;align-items:center;gap:6px;margin-bottom:18px;padding:8px 14px;text-decoration:none;color:#5a4a3a;background:#f8f4e8;border:1px solid #d4af8c}.blog-back-icon{width:18px;height:18px;flex:0 0 auto;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.blog-back:hover{border-color:#c8b299;background:#e6d4b8}.blog-back:focus-visible{outline:2px solid #8b7355;outline-offset:2px}.blog-post-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}.blog-post-header .blog-title{min-width:0}.blog-post-header .blog-back{flex:0 0 auto;margin-bottom:0}.blog-post-footer{display:flex;justify-content:flex-end;margin-top:32px}.blog-post-footer .blog-back{margin-bottom:0}.markdown-body{font-size:18px;color:#4f4032}.markdown-body h1,.markdown-body h2,.markdown-body h3{color:#4d3e2f;line-height:1.3}.markdown-body h1{margin:0 0 22px;font-size:clamp(30px,5vw,44px);font-weight:700}.markdown-body-with-title>h1:first-child{display:none}.markdown-body h2{margin:38px 0 16px;padding-bottom:8px;border-bottom:2px solid #d4af8c;font-size:28px;font-weight:700}.markdown-body h3{margin:28px 0 12px;font-size:22px;font-weight:700}.markdown-body p,.markdown-body ul,.markdown-body ol,.markdown-body table{margin:16px 0}.markdown-body ul,.markdown-body ol{padding-left:1.4em}.markdown-body li+li{margin-top:8px}.markdown-body img{display:block;max-width:100%;height:auto;margin:18px auto;border:1px solid #d4af8c;background:#f8f4e8}.markdown-body table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;border:1px solid #d4af8c}.markdown-body th,.markdown-body td{min-width:120px;padding:10px 12px;border:1px solid #d4af8c;vertical-align:top}.markdown-body th{background:#e6d4b8;font-weight:700}.markdown-body td{background:#f8f4e8}.empty-state{margin-top:32px;padding:24px;text-align:center;background:#f8f4e8;border:1px solid #d4af8c}.blog-pagination{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:0;margin-top:24px}.blog-page-button,.blog-page-ellipsis{width:38px;height:38px}.blog-page-button{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:0;color:#5a4a3a;background:#f8f4e8;border:1px solid #d4af8c;border-radius:0;cursor:pointer}.blog-pagination>:not(:first-child){margin-left:-1px}.blog-page-button:hover:not(:disabled){z-index:1;background:#e6d4b8;border-color:#c8b299}.blog-page-button.is-active{z-index:1;color:#fff;background:#8b7355;border-color:#8b7355;font-weight:700}.blog-page-button.is-active:hover{background:#7a664b;border-color:#7a664b}.blog-page-button:focus-visible{z-index:2;outline:2px solid #8b7355;outline-offset:2px}.blog-page-button:first-child,.blog-page-button:last-child{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:20px;line-height:1}.blog-page-button:disabled{color:#b8aa98;background:#f3eadb;cursor:default}.blog-page-ellipsis{display:inline-flex;align-items:center;justify-content:center;color:#8a7a6a;background:#f8f4e8;border:1px solid #d4af8c}@media(max-width:640px){.language-icon{width:16px;height:16px}.language-button{min-width:144px;padding:7px 10px}.language-label{margin:0 10px}.language-option{padding:7px 12px;font-size:14px}.blog-shell{padding:12px 6px}.blog-frame{border-width:10px;border-image-slice:16}.blog-panel{padding:16px 12px}.post-list{gap:12px;margin-top:24px}.post-link{padding:14px}.post-date{top:13px;right:14px}.post-meta{padding-right:92px}.post-link h2{padding-right:0;font-size:21px}.blog-post-header{flex-direction:column;align-items:stretch;gap:10px;margin-bottom:18px}.blog-post-header .blog-back{width:fit-content;align-self:flex-end;padding:7px 12px}.blog-pagination{gap:5px;margin-top:20px}.blog-page-button,.blog-page-ellipsis{width:36px;height:36px}.markdown-body{font-size:16px}.markdown-body h2{margin:30px 0 14px;font-size:24px}.markdown-body p,.markdown-body ul,.markdown-body ol,.markdown-body table{margin:14px 0}.markdown-body img{margin:16px auto}}
