@charset "UTF-8";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.6;--header-height: 70px;--color-primary: #2d90cd;--color-primary-rgb: 45, 144, 205;--color-primary-light: #F7F9FC;--color-primary-dark: #3A4F9A;--color-secondary: #E07A5F;--color-secondary-rgb: 224, 122, 95;--color-accent: #F0B8C0;--bg-main: #fcfcfc;--bg-soft: #F8F9FA;--bg-section: #F0F4F8;--bg-card: #ffffff;--bg-element: #F7F9FC;--bg-hover: #F1F3F4;--bg-active: #E8F0FE;--bg-tag: #E8F0FE;--bg-tag-hover: #5a77d5;--surface-glass: rgba(255, 255, 255, .9);--surface-glass-muted: rgba(255, 255, 255, .72);--text-title: #202124;--text-main: #3C4043;--text-subtle: #5F6368;--text-muted: #9AA0A6;--text-link: var(--color-primary);--text-on-primary: #FFFFFF;--border-light: #F1F3F4;--border-soft: rgba(32, 33, 36, .1);--border-base: #E8EAED;--border-strong: #BDC1C6;--state-primary-bg: rgba(var(--color-primary-rgb), .09);--state-primary-bg-hover: rgba(var(--color-primary-rgb), .13);--state-primary-bg-active: rgba(var(--color-primary-rgb), .16);--state-primary-border: rgba(var(--color-primary-rgb), .24);--color-success: #34A853;--color-warning: #FBBC04;--color-error: #EA4335;--color-info: #4285F4;--bg-success: #E8F5E8;--bg-warning: #FEF7E0;--bg-error: #FCE8E6;--bg-info: #E8F0FE;--shadow-xs: 0 1px 1px rgba(32, 33, 36, .06);--shadow-sm: 0 1px 2px rgba(32, 33, 36, .1);--shadow-md: 0 2px 6px rgba(32, 33, 36, .12), 0 1px 3px rgba(32, 33, 36, .08);--shadow-lg: 0 8px 25px rgba(32, 33, 36, .15), 0 4px 12px rgba(32, 33, 36, .1);--shadow-xl: 0 18px 50px rgba(15, 23, 42, .08), 0 8px 24px rgba(15, 23, 42, .06);--shadow-modal: 0 4px 20px rgba(0, 0, 0, .15);--focus-ring: 0 0 0 3px rgba(var(--color-primary-rgb), .15);--overlay-bg: rgba(0, 0, 0, .5);--overlay-bg-strong: rgba(0, 0, 0, .6);--bg-code: #1f2937;--text-code: #e5e7eb;--bg-main-fade: rgba(252, 252, 252, .8)}.dark{--color-primary: #8AB4F8;--color-primary-rgb: 138, 180, 248;--color-primary-light: #2D3748;--color-primary-dark: #1A202C;--color-secondary: #F2CC8F;--color-secondary-rgb: 242, 204, 143;--color-accent: #F8B4B4;--bg-main: #202124;--bg-soft: #2D2F30;--bg-section: #1A1C1E;--bg-card: #2D2F30;--bg-element: #3C4043;--bg-hover: #3C4043;--bg-active: #334155;--bg-tag: #3C4043;--bg-tag-hover: #8AB4F8;--surface-glass: rgba(45, 47, 48, .9);--surface-glass-muted: rgba(32, 33, 36, .72);--text-title: #FFFFFF;--text-main: #E8EAED;--text-subtle: #9AA0A6;--text-muted: #80868B;--text-link: var(--color-primary);--text-on-primary: var(--text-title);--border-light: #3C4043;--border-soft: rgba(232, 234, 237, .14);--border-base: #5F6368;--border-strong: #9AA0A6;--state-primary-bg: rgba(var(--color-primary-rgb), .13);--state-primary-bg-hover: rgba(var(--color-primary-rgb), .18);--state-primary-bg-active: rgba(var(--color-primary-rgb), .22);--state-primary-border: rgba(var(--color-primary-rgb), .34);--color-success: #34A853;--color-warning: #FBBC04;--color-error: #EA4335;--color-info: #4285F4;--bg-success: #155724;--bg-warning: #856404;--bg-error: #721C24;--bg-info: #1E3A8A;--shadow-xs: none;--shadow-sm: none;--shadow-md: 0 4px 6px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .4);--shadow-xl: 0 18px 50px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .2);--shadow-modal: 0 4px 20px rgba(0, 0, 0, .4);--focus-ring: 0 0 0 3px rgba(var(--color-primary-rgb), .25);--overlay-bg: rgba(0, 0, 0, .65);--overlay-bg-strong: rgba(0, 0, 0, .75);--bg-code: #111827;--text-code: #f3f4f6;--bg-main-fade: rgba(32, 33, 36, .8)}.text-subtle{color:var(--text-subtle)}.text-muted{color:var(--text-muted)}.text-primary{color:var(--color-primary)}.text-on-primary{color:var(--text-on-primary)}.bg-soft{background-color:var(--bg-soft)}.bg-card{background-color:var(--bg-card)}.bg-element{background-color:var(--bg-element)}.bg-primary{background-color:var(--color-primary)}@font-face{font-family:DDFont;src:url(/assets/dd-C1AWcZJq.ttf);font-weight:400;font-style:normal}*{margin:0;padding:0;box-sizing:border-box;outline:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,Helvetica Neue,Arial,sans-serif;-webkit-tap-highlight-color:transparent}h1,h2,h3,h4,h5,h6{font-family:DDFont}a{text-decoration:none;color:inherit}img{max-width:100%;height:auto}button{border:none;outline:none;background:none;cursor:pointer;color:inherit}input{box-shadow:var(--shadow-sm)}.app-container{width:100%;min-height:100vh;background-color:var(--bg-main);color:var(--text-main);transition:background-color .3s,color .3s}.content{max-width:1200px;margin:0 auto;padding:10px 20px}@media (max-width: 768px){.content{padding:16px}}@media (max-width: 480px){.content{padding:12px}}.flex{display:flex}.flex-col{display:flex;flex-direction:column}.flex-ac{display:flex;align-items:center}.flex-sb{display:flex;justify-content:space-between}.flex-jc{display:flex;justify-content:center;align-items:center}.flex-fw{display:flex;flex-wrap:wrap;row-gap:12px}.flex-1{flex:1}.text-center{text-align:center}.page-title{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.page-title.is-center{align-items:center;text-align:center}.page-title .title-badge{display:inline-flex;align-items:center;gap:6px;width:fit-content;padding:4px 14px;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-primary);background:rgba(var(--color-primary-rgb),.1);border-radius:30px}.page-title .title-heading{margin:0;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:700;color:var(--text-title);line-height:1.2}.page-title .title-heading .title-highlight{color:var(--color-secondary)}.page-title .title-desc{margin:0;color:var(--text-subtle);line-height:1.7}.page-title .title-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px}.badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:20px;font-size:14px;font-weight:600;color:var(--text-subtle);background:var(--bg-soft);border:1px solid var(--border-light)}.tag,.taxonomy-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;background:var(--bg-soft);color:var(--text-subtle);border-radius:999px;font-size:12px;line-height:1.4;transition:color .18s ease,background-color .18s ease,border-color .18s ease;cursor:pointer;border:1px solid var(--border-light)}@media (max-width: 768px){.tag,.taxonomy-chip{font-size:10px}}.tag:hover,.taxonomy-chip:hover{color:var(--text-title);background:var(--bg-element);border-color:var(--border-strong)}.tag:focus-visible,.taxonomy-chip:focus-visible{outline:2px solid var(--state-primary-border);outline-offset:2px}.tag:before{content:"#";margin-right:4px;color:var(--color-secondary);opacity:.8}.tags-cloud{display:flex;flex-wrap:wrap;gap:12px}.card{border-radius:12px;padding:20px;box-shadow:var(--shadow-sm);background-color:var(--bg-card)}@media (max-width: 480px){.card{width:100%;padding:10px}}.card-title{display:flex;align-items:center;gap:10px;margin-bottom:12px}.card-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:30px;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-primary);background:rgba(var(--color-primary-rgb),.1)}.card-badge .icon{color:var(--color-primary)}.card-title-text{font-size:1rem;font-weight:600;color:var(--text-main)}.card-title-text .card-highlight{color:var(--color-secondary)}.list{display:flex;flex-direction:column}.list-item{padding:10px 12px;border-radius:8px;border-bottom:1px solid var(--border-light);cursor:pointer;transition:background .2s ease,color .2s ease}.list-item:hover{background:var(--bg-hover)}.list-item:last-child{border-bottom:none}.fit{width:100%;height:100%;object-fit:cover}.fit-err{width:190px;max-width:100%;height:auto;margin-top:14px;opacity:.76;pointer-events:none;-webkit-user-select:none;user-select:none}.link{cursor:pointer}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.retry-btn{background:var(--color-primary);color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;margin-top:8px;transition:all .2s ease}.retry-btn:hover{background:var(--color-primary-dark);transform:translateY(-1px)}.post-summary{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5;max-height:3em;word-break:break-word;line-clamp:2;-webkit-line-clamp:2}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 24px;font-size:.9rem;font-weight:600;color:#fff;background:var(--color-primary);border:none;border-radius:30px;cursor:pointer;text-decoration:none;transition:all .25s ease;box-shadow:0 4px 12px rgba(var(--color-primary-rgb),.25)}.btn-primary:hover{background:var(--color-primary-dark);transform:translateY(-2px);box-shadow:0 6px 18px rgba(var(--color-primary-rgb),.35)}.btn-primary:active{transform:translateY(0)}.search-box{position:relative;display:flex;align-items:center;flex:1;max-width:400px}.search-input{flex:1;min-width:0;padding:8px 36px 8px 12px;border:1px solid var(--border-soft);border-radius:6px;font-size:.875rem;background:var(--bg-soft);color:var(--text-main);transition:all .2s}.search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #6ba6c51a}.search-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.search-btn{padding:8px 12px;background:var(--color-primary);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:4px;min-width:40px;font-size:.875rem;white-space:nowrap}.search-btn:hover:not(:disabled){background:var(--color-primary-dark)}.search-btn:disabled{opacity:.6;cursor:not-allowed}.loading-text,.empty-text{text-align:center;padding:40px 20px;color:var(--text-muted)}.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}.reveal.reveal-delay-1{transition-delay:.1s}@keyframes kenBurns{0%{transform:scale(1)}to{transform:scale(1.08)}}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}.lenis.lenis-smooth iframe{pointer-events:none}.gap-4{gap:4px}.gap-6{gap:6px}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-20{gap:20px}.p-8{padding:8px}.p-16{padding:16px}.p-20{padding:20px}.mb-0{margin-bottom:0}.mb-12{margin-bottom:12px}.mb-16{margin-bottom:16px}.mb-20{margin-bottom:20px}.mt-8{margin-top:8px}.shadow-sm{box-shadow:var(--shadow-sm)}.cursor-pointer{cursor:pointer}.rounded{border-radius:8px}.rounded-lg{border-radius:12px}.relative{position:relative}.transition{transition:all .3s ease}.text-xs,.text-sm{font-size:.75rem}.text-base{font-size:.85rem}.text-lg{font-size:.9rem}.text-2xl{font-size:1.5rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.markdown-content{line-height:1.6;word-wrap:break-word;overflow-wrap:break-word}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{margin-top:1.5rem;margin-bottom:.75rem;font-weight:600;color:var(--text-title);line-height:1.3}.markdown-content h1{font-size:1.75rem;border-bottom:2px solid var(--border-soft);padding-bottom:.5rem}.markdown-content h2{font-size:1.5rem;border-bottom:1px solid var(--border-soft);padding-bottom:.3rem}.markdown-content h3{font-size:1.25rem}.markdown-content h4{font-size:1.125rem}.markdown-content h5{font-size:1rem}.markdown-content h6{font-size:.875rem;color:var(--text-subtle)}.markdown-content p{margin-top:0;margin-bottom:1rem;color:var(--text-main)}.markdown-content a{color:var(--color-primary);text-decoration:none;border-radius:2px;transition:all .2s ease}.markdown-content a:hover{color:var(--color-primary-dark);text-decoration:underline}.markdown-content a:focus{outline:2px solid var(--color-primary);outline-offset:2px}.markdown-content strong{font-weight:600;color:var(--text-title)}.markdown-content em{font-style:italic}.markdown-content del{text-decoration:line-through;color:var(--text-subtle)}.markdown-content ins{text-decoration:underline;background-color:#5f91ad1a}.markdown-content ul,.markdown-content ol{margin-top:0;margin-bottom:1rem;padding-left:1.5rem}.markdown-content li{margin-bottom:.25rem}.markdown-content li>p{margin-bottom:.25rem}.markdown-content ul li{list-style-type:disc}.markdown-content ul ul li{list-style-type:circle}.markdown-content ul ul ul li{list-style-type:square}.markdown-content ol li{list-style-type:decimal}.markdown-content blockquote{margin:1rem 0;padding:.5rem 1rem;border-left:4px solid var(--color-primary);background-color:var(--bg-hover);color:var(--text-subtle);border-radius:0 4px 4px 0}.markdown-content blockquote p{margin-bottom:0}.markdown-content blockquote p:not(:last-child){margin-bottom:.5rem}.markdown-content code{font-family:Consolas,Monaco,Courier New,monospace;font-size:.875em;background-color:var(--bg-soft);padding:.125rem .375rem;border-radius:3px;color:var(--text-main);border:1px solid var(--border-soft)}.markdown-content pre{margin:1rem 0;padding:1rem;background-color:#282c34;border-radius:6px;overflow-x:auto;position:relative;box-shadow:var(--shadow-md)}.markdown-content pre code{background-color:transparent;padding:0;border:none;color:#abb2bf;font-size:.875rem;line-height:1.5}.markdown-content .hljs{color:#abb2bf;background:#282c34}.markdown-content .hljs-comment,.markdown-content .hljs-quote{color:#5c6370;font-style:italic}.markdown-content .hljs-keyword,.markdown-content .hljs-selector-tag,.markdown-content .hljs-subst{color:#c678dd}.markdown-content .hljs-number,.markdown-content .hljs-literal,.markdown-content .hljs-variable,.markdown-content .hljs-template-variable,.markdown-content .hljs-tag .hljs-attr{color:#d19a66}.markdown-content .hljs-string,.markdown-content .hljs-doctag{color:#98c379}.markdown-content .hljs-title,.markdown-content .hljs-section,.markdown-content .hljs-selector-id{color:#61afef}.markdown-content .hljs-type,.markdown-content .hljs-class .hljs-title{color:#e5c07b}.markdown-content .hljs-tag,.markdown-content .hljs-name,.markdown-content .hljs-attribute{color:#e06c75;font-weight:400}.markdown-content .hljs-regexp,.markdown-content .hljs-link{color:#56b6c2}.markdown-content .hljs-symbol,.markdown-content .hljs-bullet{color:#61afef}.markdown-content .hljs-built_in,.markdown-content .hljs-builtin-name{color:#e5c07b}.markdown-content .hljs-meta{color:#c678dd}.markdown-content .hljs-deletion{background:var(--color-error);color:#fff}.markdown-content .hljs-addition{background:var(--color-success);color:#fff}.markdown-content .hljs-emphasis{font-style:italic}.markdown-content .hljs-strong{font-weight:700}.markdown-content table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:.875rem;border:1px solid var(--border-soft);border-radius:4px;overflow:hidden}.markdown-content th,.markdown-content td{padding:.5rem 1rem;text-align:left;border-bottom:1px solid var(--border-soft)}.markdown-content th{background-color:var(--bg-hover);font-weight:600;color:var(--text-title)}.markdown-content tr:last-child td{border-bottom:none}.markdown-content tr:nth-child(2n){background-color:var(--bg-soft)}.markdown-content tr:hover{background-color:var(--bg-hover)}.markdown-content img{max-width:100%;height:auto;border-radius:4px;margin:.5rem 0;box-shadow:var(--shadow-sm)}.markdown-content hr{height:2px;border:none;background-color:var(--border-soft);margin:2rem 0}.markdown-content input[type=checkbox]{margin-right:.5rem}.markdown-content .footnote-ref{color:var(--color-primary);text-decoration:none;font-size:.875em;vertical-align:super}.markdown-content .footnotes{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--border-soft);font-size:.875rem;color:var(--text-subtle)}.markdown-content.streaming{animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:.95}to{opacity:1}}@media (max-width: 768px){.markdown-content{font-size:.9rem}.markdown-content h1{font-size:1.5rem}.markdown-content h2{font-size:1.25rem}.markdown-content pre{padding:.75rem;font-size:.8rem}}.rich-content{--rich-text: var(--text-main, #3c4043);--rich-heading: var(--text-title, #202124);--rich-muted: var(--text-subtle, #5f6368);--rich-link: var(--text-link, var(--color-primary, #4a69d1));--rich-link-hover: var(--color-primary-dark, #3a4f9a);--rich-accent: var(--color-primary, #4a69d1);--rich-surface: var(--bg-card, #ffffff);--rich-soft: var(--bg-soft, #f8f9fa);--rich-hover: var(--bg-hover, #f1f3f4);--rich-border: var(--border-soft, #e8eaed);--rich-code-bg: var(--bg-code, #1f2937);--rich-code-text: var(--text-code, #e5e7eb);--rich-mark-bg: var(--bg-warning, #fef7e0);--rich-shadow-sm: var(--shadow-sm, 0 1px 3px rgb(0 0 0 / 10%));color:var(--rich-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:16px;line-height:1.8;overflow-wrap:anywhere;word-break:normal}.rich-content.liutech-editor-light{--rich-text: #3c4043;--rich-heading: #202124;--rich-muted: #5f6368;--rich-link: #4a69d1;--rich-link-hover: #3a4f9a;--rich-accent: #4a69d1;--rich-surface: #ffffff;--rich-soft: #f8f9fa;--rich-hover: #f1f3f4;--rich-border: #e8eaed;--rich-code-bg: #1f2937;--rich-code-text: #e5e7eb;--rich-mark-bg: #fef7e0}.rich-content.liutech-editor-dark{--rich-text: #e8eaed;--rich-heading: #ffffff;--rich-muted: #9aa0a6;--rich-link: #8ab4f8;--rich-link-hover: #aecbfa;--rich-accent: #8ab4f8;--rich-surface: #2d2f30;--rich-soft: #303134;--rich-hover: #3c4043;--rich-border: #5f6368;--rich-code-bg: #1f2937;--rich-code-text: #e5e7eb;--rich-mark-bg: #856404;--rich-shadow-sm: 0 1px 3px rgb(0 0 0 / 30%)}html.liutech-editor-light,body.rich-content.liutech-editor-light{background:#fff}html.liutech-editor-dark,body.rich-content.liutech-editor-dark{background:#2d2f30}body.rich-content.liutech-editor-content{box-sizing:border-box;min-height:100%;margin:0;padding:24px;caret-color:var(--rich-accent)}.rich-content h1,.rich-content h2,.rich-content h3,.rich-content h4,.rich-content h5,.rich-content h6{margin:2em 0 .75em;color:var(--rich-heading);font-weight:700;line-height:1.35;scroll-margin-top:96px}.rich-content>:first-child{margin-top:0}.rich-content h1{font-size:2em}.rich-content h2{font-size:1.58em}.rich-content h3{font-size:1.28em}.rich-content h4{font-size:1.15em}.rich-content h5{font-size:1.05em}.rich-content h6{font-size:1em;color:var(--rich-muted)}.rich-content p{margin:0 0 1em}.rich-content a{color:var(--rich-link);text-decoration:none;text-underline-offset:.18em}.rich-content a:hover{color:var(--rich-link-hover);text-decoration:underline}.rich-content a:focus-visible{outline:2px solid var(--rich-accent);outline-offset:3px;border-radius:2px}.rich-content ul,.rich-content ol{margin:0 0 1em;padding-left:1.6em}.rich-content li{margin:.35em 0}.rich-content li>p{margin-bottom:.35em}.rich-content blockquote{margin:1.5em 0;padding:.9em 1.1em;border-left:4px solid var(--rich-accent);border-radius:0 8px 8px 0;background:var(--rich-soft);color:var(--rich-muted)}.rich-content blockquote>:last-child{margin-bottom:0}.rich-content code{padding:.12em .38em;border:1px solid var(--rich-border);border-radius:4px;background:var(--rich-soft);color:inherit;font-family:JetBrains Mono,Fira Code,Consolas,Monaco,Courier New,monospace;font-size:.9em}.rich-content pre{position:relative;margin:1.5em 0;padding:1.25em;overflow-x:auto;border:1px solid rgb(148 163 184 / 28%);border-radius:10px;background:var(--rich-code-bg);color:var(--rich-code-text);font-family:JetBrains Mono,Fira Code,Consolas,Monaco,Courier New,monospace;font-size:14px;line-height:1.65;tab-size:2}.rich-content pre code{padding:0;border:0;background:transparent;color:inherit;font-size:inherit;line-height:inherit;white-space:pre}.rich-content table{display:block;width:100%;margin:1.5em 0;overflow-x:auto;border:1px solid var(--rich-border);border-radius:8px;border-spacing:0;background:var(--rich-surface);font-size:.94em}.rich-content th,.rich-content td{min-width:7em;padding:.7em .9em;border-right:1px solid var(--rich-border);border-bottom:1px solid var(--rich-border);text-align:left;vertical-align:top}.rich-content th:last-child,.rich-content td:last-child{border-right:0}.rich-content tr:last-child td{border-bottom:0}.rich-content th{background:var(--rich-soft);color:var(--rich-heading);font-weight:650}.rich-content tr:hover td{background:var(--rich-hover)}.rich-content img,.rich-content video{max-width:100%;height:auto;border-radius:8px}.rich-content img{display:block;margin:1.25em auto;box-shadow:var(--rich-shadow-sm)}.rich-content figure.image{display:table;max-width:100%;margin:1.25em auto}.rich-content figure.image img{margin:0 auto}.rich-content figure.image figcaption{display:table-caption;caption-side:bottom;padding-top:.55em;color:var(--rich-muted);font-size:.9em;text-align:center}.rich-content figure.align-left,.rich-content img.align-left{float:left;margin:.35em 1.25em .75em 0}.rich-content figure.align-right,.rich-content img.align-right{float:right;margin:.35em 0 .75em 1.25em}.rich-content iframe{max-width:100%}.rich-content hr{height:1px;margin:2em 0;border:0;background:var(--rich-border)}.rich-content strong,.rich-content b{font-weight:650}.rich-content em,.rich-content i{font-style:italic}.rich-content del,.rich-content s{text-decoration:line-through}.rich-content u,.rich-content ins{text-decoration:underline;text-underline-offset:.15em}.rich-content mark{padding:.1em .25em;border-radius:3px;background:var(--rich-mark-bg)}.rich-content .text-left{text-align:left}.rich-content .text-center{text-align:center}.rich-content .text-right{text-align:right}.rich-content .text-justify{text-align:justify}.rich-content .img-responsive{width:100%}.rich-content .img-rounded{border-radius:12px}.rich-content .img-circle{border-radius:999px}.rich-content .hljs-comment,.rich-content .hljs-quote{color:#7f848e;font-style:italic}.rich-content .hljs-keyword,.rich-content .hljs-selector-tag,.rich-content .hljs-subst{color:#c678dd}.rich-content .hljs-number,.rich-content .hljs-literal,.rich-content .hljs-variable,.rich-content .hljs-template-variable,.rich-content .hljs-tag .hljs-attr{color:#d19a66}.rich-content .hljs-string,.rich-content .hljs-doctag{color:#98c379}.rich-content .hljs-title,.rich-content .hljs-section,.rich-content .hljs-selector-id,.rich-content .hljs-symbol,.rich-content .hljs-bullet{color:#61afef}.rich-content .hljs-type,.rich-content .hljs-class .hljs-title,.rich-content .hljs-built_in,.rich-content .hljs-builtin-name{color:#e5c07b}.rich-content .hljs-tag,.rich-content .hljs-name,.rich-content .hljs-attribute{color:#e06c75;font-weight:400}.rich-content .hljs-regexp,.rich-content .hljs-link{color:#56b6c2}.rich-content .hljs-meta{color:#c678dd}.rich-content .hljs-deletion{background:#7f1d1d;color:#fff}.rich-content .hljs-addition{background:#14532d;color:#fff}.rich-content .hljs-emphasis{font-style:italic}.rich-content .hljs-strong{font-weight:700}.rich-content .copy-btn{position:absolute;top:10px;right:10px;z-index:1;padding:4px 10px;border:1px solid rgb(255 255 255 / 18%);border-radius:6px;background:#111827d1;color:#d1d5db;cursor:pointer;font-size:12px;opacity:0;transition:opacity .2s,background-color .2s}.rich-content pre:hover .copy-btn,.rich-content .copy-btn:focus-visible{opacity:1}.rich-content .copy-btn:hover{background:#374151;color:#fff}@media (max-width: 768px){.rich-content{font-size:15px}body.rich-content.liutech-editor-content{padding:18px}.rich-content pre{padding:1em;font-size:13px}.rich-content th,.rich-content td{padding:.6em .75em}.rich-content .copy-btn{opacity:1}}@media (prefers-reduced-motion: reduce){.rich-content .copy-btn{transition:none}}.loader-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:var(--bg-main);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9999;display:flex;align-items:center;justify-content:center}.fade-enter-active,.fade-leave-active{transition:opacity .2s ease-in-out}.fade-enter-from,.fade-leave-to{opacity:0}.base{position:relative;width:32em;height:5.5em;transform:rotateX(12deg) rotate(3deg);transform-style:preserve-3d}@media (max-width: 768px){.base{font-size:12px}}@media (max-width: 480px){.base{font-size:10px}}.cube,.cube:after,.cube:before{content:"";height:1em;position:absolute;width:1em}.cube{background-color:var(--color-primary);position:absolute;transform:translateZ(1em);transform-style:preserve-3d;transition:.3s;box-shadow:var(--shadow-md);animation:letterPulse 1.5s cubic-bezier(.4,0,.2,1) infinite;border-radius:3px}.cube:after{background-color:inherit;filter:brightness(.7);transform:rotateX(-90deg) translateY(1em);transform-origin:100% 100%}.cube:before{background-color:inherit;filter:brightness(1.2);transform:rotateY(90deg) translate(1em);transform-origin:100% 0}.pos-1{left:0;top:0;animation-delay:.1s}.pos-2{left:0;top:1.2em;animation-delay:.15s}.pos-3{left:0;top:2.4em;animation-delay:.2s}.pos-4{left:0;top:3.6em;animation-delay:.25s}.pos-5{left:1.2em;top:3.6em;animation-delay:.3s}.pos-6{left:3.8em;top:0;animation-delay:.35s}.pos-7{left:3.8em;top:1.8em;animation-delay:.4s}.pos-8{left:3.8em;top:3.6em;animation-delay:.45s}.pos-9{left:6.2em;top:0;animation-delay:.3s}.pos-10{left:6.2em;top:1.2em;animation-delay:.32s}.pos-11{left:6.2em;top:2.4em;animation-delay:.34s}.pos-12{left:6.2em;top:3.6em;animation-delay:.36s}.pos-13{left:7.4em;top:3.6em;animation-delay:.38s}.pos-36{left:8.6em;top:3.6em;animation-delay:.4s}.pos-37{left:8.6em;top:2.4em;animation-delay:.42s}.pos-43{left:8.6em;top:1.2em;animation-delay:.44s}.pos-44{left:8.6em;top:0;animation-delay:.46s}.pos-14{left:11.2em;top:0;animation-delay:.5s}.pos-15{left:12.4em;top:0;animation-delay:.52s}.pos-16{left:13.6em;top:0;animation-delay:.54s}.pos-17{left:12.4em;top:1.2em;animation-delay:.56s}.pos-18{left:12.4em;top:2.4em;animation-delay:.58s}.pos-38{left:12.4em;top:3.6em;animation-delay:.6s}.pos-19{left:16.2em;top:0;animation-delay:.65s}.pos-20{left:17.4em;top:0;animation-delay:.67s}.pos-21{left:18.6em;top:0;animation-delay:.69s}.pos-22{left:16.2em;top:1.2em;animation-delay:.71s}.pos-23{left:16.2em;top:1.8em;animation-delay:.73s}.pos-24{left:17.4em;top:1.8em;animation-delay:.75s}.pos-25{left:16.2em;top:2.4em;animation-delay:.77s}.pos-45{left:16.2em;top:3.6em;animation-delay:.79s}.pos-46{left:17.4em;top:3.6em;animation-delay:.81s}.pos-47{left:18.6em;top:3.6em;animation-delay:.83s}.pos-26{left:21.2em;top:0;animation-delay:.85s}.pos-27{left:22.4em;top:0;animation-delay:.87s}.pos-28{left:23.6em;top:0;animation-delay:.89s}.pos-29{left:21.2em;top:1.2em;animation-delay:.91s}.pos-39{left:21.2em;top:2.4em;animation-delay:.93s}.pos-40{left:21.2em;top:3.6em;animation-delay:.95s}.pos-48{left:22.4em;top:3.6em;animation-delay:.97s}.pos-49{left:23.6em;top:3.6em;animation-delay:.99s}.pos-30{left:26.2em;top:0;animation-delay:1.01s}.pos-31{left:26.2em;top:1.2em;animation-delay:1.03s}.pos-32{left:26.2em;top:1.8em;animation-delay:1.05s}.pos-33{left:27.4em;top:1.8em;animation-delay:1.07s}.pos-34{left:28.6em;top:1.8em;animation-delay:1.09s}.pos-35{left:26.2em;top:2.4em;animation-delay:1.11s}.pos-41{left:26.2em;top:3.6em;animation-delay:1.13s}.pos-42{left:28.6em;top:0;animation-delay:1.15s}.pos-50{left:28.6em;top:1.2em;animation-delay:1.17s}.pos-51{left:28.6em;top:2.4em;animation-delay:1.19s}.pos-52{left:28.6em;top:3.6em;animation-delay:1.21s}.letter-l{background-color:var(--color-error)!important}.letter-i{background-color:var(--color-info)!important}.letter-u{background-color:var(--color-primary)!important}.letter-t{background-color:var(--color-success)!important}.letter-e{background-color:var(--color-warning)!important}.letter-c{background-color:var(--color-accent, #F0B8C0)!important}.letter-h{background-color:#a78bfa!important}:root.dark .cube{box-shadow:0 0 8px #ffffff1a}:root.dark .letter-c{background-color:#f8b4b4!important}:root.dark .letter-h{background-color:#c4b5fd!important}@keyframes letterPulse{0%,to{transform:translateZ(1em) scale(1)}50%{transform:translateZ(3em) scale(1.15)}}.route-progress[data-v-bb9fa322]{position:fixed;top:0;left:0;z-index:10000;width:100%;height:3px;overflow:hidden;pointer-events:none;opacity:0;animation:route-progress-reveal-bb9fa322 0s linear .12s forwards}.route-progress__bar[data-v-bb9fa322]{display:block;width:38%;height:100%;border-radius:0 999px 999px 0;background:linear-gradient(90deg,var(--color-primary),var(--color-info));box-shadow:0 0 10px rgba(var(--color-primary-rgb),.45);animation:route-progress-move-bb9fa322 1.15s cubic-bezier(.4,0,.2,1) infinite}@keyframes route-progress-reveal-bb9fa322{to{opacity:1}}@keyframes route-progress-move-bb9fa322{0%{transform:translate(-110%)}to{transform:translate(300%)}}.route-progress-leave-active[data-v-bb9fa322]{transition:opacity .18s ease}.route-progress-leave-to[data-v-bb9fa322]{opacity:0}@media (prefers-reduced-motion: reduce){.route-progress[data-v-bb9fa322]{animation-delay:0s}.route-progress__bar[data-v-bb9fa322]{width:72%;animation:none}}
