:root{--global-bg-color: #fff;--global-code-bg-color: rgba(181,9,172,0.05);--global-text-color: #000;--global-text-color-light: #828282;--global-theme-color: #B509AC;--global-hover-color: #B509AC;--global-hover-text-color: #fff;--global-footer-bg-color: #1C1C1D;--global-footer-text-color: #e8e8e8;--global-footer-link-color: #fff;--global-distill-app-color: #828282;--global-divider-color: rgba(0,0,0,.1);--global-card-bg-color: #fff;--global-code-block-bg: #f6f8fa;--global-code-block-text: #24292e;--global-code-inline-bg: #f3f0f7;--global-code-inline-text: #B509AC;--global-tip-block: #42b983;--global-tip-block-bg: #e2f5ec;--global-tip-block-text: #215d42;--global-tip-block-title: #359469;--global-warning-block: #e7c000;--global-warning-block-bg: #fff8d8;--global-warning-block-text: #6b5900;--global-warning-block-title: #b29400;--global-danger-block: #c00;--global-danger-block-bg: #ffe0e0;--global-danger-block-text: #600;--global-danger-block-title: #c00}:root .fa-sun{display:none}:root .fa-moon{padding-left:10px;padding-top:12px;display:block}:root .repo-img-light{display:block}:root .repo-img-dark{display:none}html[data-theme='dark']{--global-bg-color: #1C1C1D;--global-code-bg-color: #2c3237;--global-text-color: #e8e8e8;--global-text-color-light: #e8e8e8;--global-theme-color: #2698BA;--global-hover-color: #2698BA;--global-hover-text-color: #fff;--global-footer-bg-color: #e8e8e8;--global-footer-text-color: #1C1C1D;--global-footer-link-color: #000;--global-distill-app-color: #e8e8e8;--global-divider-color: #424246;--global-card-bg-color: #212529;--global-code-block-bg: #161b22;--global-code-block-text: #c9d1d9;--global-code-inline-bg: #2d2438;--global-code-inline-text: #62c4e0;--global-tip-block: #42b983;--global-tip-block-bg: #e2f5ec;--global-tip-block-text: #215d42;--global-tip-block-title: #359469;--global-warning-block: #e7c000;--global-warning-block-bg: #fff8d8;--global-warning-block-text: #6b5900;--global-warning-block-title: #b29400;--global-danger-block: #c00;--global-danger-block-bg: #ffe0e0;--global-danger-block-text: #600;--global-danger-block-title: #c00}html[data-theme='dark'] .fa-sun{padding-left:10px;padding-top:12px;display:block}html[data-theme='dark'] .fa-moon{display:none}html[data-theme='dark'] .repo-img-light{display:none}html[data-theme='dark'] .repo-img-dark{display:block}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;font-size:16px;line-height:1.7;color:var(--global-text-color);background-color:var(--global-bg-color);-webkit-font-smoothing:antialiased;display:flex;flex-direction:column;min-height:100vh;transition:background-color 0.3s ease, color 0.3s ease}a{color:var(--global-theme-color);text-decoration:none;transition:color 0.2s ease}a:hover{color:var(--global-hover-color);text-decoration:underline}hr{border:0;border-top:1px solid var(--global-divider-color);margin:2rem 0}img{max-width:100%;height:auto}.wrapper{max-width:820px;margin:0 auto;padding:0 20px;width:100%}.content{flex:1 0 auto;padding-top:40px;padding-bottom:60px}.site-nav{position:sticky;top:0;z-index:100;background-color:var(--global-bg-color);border-bottom:1px solid var(--global-divider-color);backdrop-filter:saturate(180%) blur(6px)}.site-nav .wrapper{display:flex;align-items:center;justify-content:space-between;height:60px;max-width:1000px}.site-nav .brand{font-weight:700;font-size:1.05rem;color:var(--global-text-color);letter-spacing:-0.01em}.site-nav .brand:hover{color:var(--global-theme-color);text-decoration:none}.site-nav .nav-links{display:flex;align-items:center;gap:1.25rem;list-style:none;margin:0;padding:0}.site-nav .nav-links a{color:var(--global-text-color);font-size:0.95rem}.site-nav .nav-links a:hover,.site-nav .nav-links a.active{color:var(--global-theme-color);text-decoration:none}.icon-btn{background:none;border:none;cursor:pointer;color:var(--global-text-color);font-size:0.9rem;padding:4px 8px;border-radius:6px;line-height:1}.icon-btn:hover{color:var(--global-theme-color)}.lang-toggle{border:1px solid var(--global-divider-color);border-radius:6px;padding:3px 10px;font-weight:600;font-size:0.82rem}.profile{display:flex;align-items:center;gap:28px;margin-bottom:2.5rem;flex-wrap:wrap}.profile img{width:130px;height:130px;border-radius:50%;object-fit:cover;border:1px solid var(--global-divider-color)}.profile .profile-text{flex:1;min-width:250px}.profile h1{margin:0 0 0.3rem;font-size:1.9rem}.profile .tagline{color:var(--global-text-color-light);margin:0 0 0.8rem}.social-links{display:flex;gap:14px;font-size:1.15rem}.social-links a{color:var(--global-text-color-light)}.social-links a:hover{color:var(--global-theme-color)}.contact-links{list-style:none;margin:0.6rem 0 0;padding:0;font-size:0.92rem}.contact-links li{margin:0.2rem 0;color:var(--global-text-color-light)}.contact-links li i{color:var(--global-text-color-light);margin-right:6px}.contact-links a{color:var(--global-text-color)}.contact-links a:hover{color:var(--global-theme-color)}.section-title{font-size:1.4rem;margin:2rem 0 1rem;padding-bottom:0.4rem;border-bottom:1px solid var(--global-divider-color)}.post-list{list-style:none;margin:0;padding:0}.post-list li{padding:1.6rem 0;border-bottom:1px solid var(--global-divider-color)}.post-list .post-title{font-size:1.6rem;font-weight:700;line-height:1.25;margin:0 0 0.35rem;letter-spacing:-0.01em}.post-list .post-title a{color:var(--global-text-color)}.post-list .post-title a:hover{color:var(--global-theme-color);text-decoration:none}.post-list .post-desc{color:var(--global-text-color-light);margin:0.2rem 0 0.5rem;font-size:1rem;line-height:1.6}.post-list .post-meta{color:var(--global-text-color-light);font-size:0.85rem;display:flex;align-items:center;gap:0.6rem;flex-wrap:wrap}.post-tags{display:inline-flex;gap:6px;flex-wrap:wrap}.page-content h1{font-size:2rem;margin-bottom:1.5rem}.page-content{max-width:820px}.site-footer{flex-shrink:0;text-align:center;padding:24px 20px;color:var(--global-text-color-light);font-size:0.85rem;border-top:1px solid var(--global-divider-color)}.site-footer a{color:var(--global-text-color-light)}.site-footer a:hover{color:var(--global-theme-color)}.callout{border-left:4px solid var(--global-tip-block);background:var(--global-tip-block-bg);color:var(--global-tip-block-text);padding:0.8em 1em;border-radius:4px;margin:1.2em 0}.callout p:last-child{margin-bottom:0}.callout p:first-child{margin-top:0}.callout.warning{border-left-color:var(--global-warning-block);background:var(--global-warning-block-bg);color:var(--global-warning-block-text)}.callout.danger{border-left-color:var(--global-danger-block);background:var(--global-danger-block-bg);color:var(--global-danger-block-text)}.page-title{font-size:2rem;margin-bottom:1rem}.intro{margin-bottom:1rem}.hero{position:relative;min-height:360px;display:flex;align-items:center;justify-content:center;text-align:center;background-position:center 30%;background-size:cover;background-repeat:no-repeat;color:#fff;overflow:hidden}.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(6,14,30,0.15) 0%, rgba(6,14,30,0.55) 100%)}.hero .hero-inner{position:relative;z-index:1;padding:0 20px}.hero h1{font-size:2.6rem;margin:0 0 0.5rem;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,0.4);letter-spacing:-0.01em}.hero p{margin:0;font-size:1.05rem;color:rgba(255,255,255,0.9);font-style:italic;text-shadow:0 1px 8px rgba(0,0,0,0.4)}.post-byline{max-width:820px;margin:0 auto;padding:1rem 0 1.4rem;border-top:1px solid var(--global-divider-color);border-bottom:1px solid var(--global-divider-color);display:flex;flex-wrap:wrap;gap:2.5rem}.post-byline .byline-col{display:flex;flex-direction:column;gap:0.3rem}.post-byline .byline-label{text-transform:uppercase;font-size:0.72rem;letter-spacing:0.06em;color:var(--global-text-color-light)}.post-byline .byline-value{font-size:0.92rem;color:var(--global-text-color)}.post-byline .byline-tags{display:flex;flex-wrap:wrap;gap:6px}.tag{display:inline-block;font-size:0.75rem;color:var(--global-theme-color);background:var(--global-code-inline-bg);padding:1px 8px;border-radius:10px}a.tag:hover{text-decoration:none;color:var(--global-hover-text-color);background:var(--global-theme-color)}.tag-hint-text{color:var(--global-text-color-light);font-size:0.9rem;margin:0 0 1.2rem}.tag-cloud{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:2rem}.tag-cloud .tag{font-size:0.9rem;padding:4px 12px}.tag-cloud .tag sup{font-size:0.7rem;opacity:0.7}.tag-filter{cursor:pointer;border:1px solid transparent;font-family:inherit;transition:background 0.15s ease, color 0.15s ease}.tag-filter:hover{border-color:var(--global-theme-color)}.tag-filter.selected{background:var(--global-theme-color);color:var(--global-hover-text-color)}.tag-empty{color:var(--global-text-color-light);font-style:italic}.publications .pub-note{color:var(--global-text-color-light);font-size:0.9rem;margin-bottom:1.5rem}.publications .pub-list{list-style:none;margin:0;padding:0}.publications .pub-list li{padding:1rem 0;border-bottom:1px solid var(--global-divider-color)}.publications .pub-title{font-weight:600;font-size:1.05rem;line-height:1.4;margin-bottom:0.25rem}.publications .pub-authors{color:var(--global-text-color);font-size:0.92rem;margin-bottom:0.15rem}.publications .pub-authors b{color:var(--global-theme-color)}.publications .pub-venue{color:var(--global-text-color-light);font-size:0.9rem}.publications .pub-links{margin-top:0.4rem;display:flex;align-items:center;gap:12px;font-size:0.85rem}.publications .pub-role{font-size:0.72rem;text-transform:uppercase;letter-spacing:0.04em;color:var(--global-hover-text-color);background:var(--global-theme-color);padding:1px 8px;border-radius:10px}.post-nav{display:flex;justify-content:space-between;gap:1rem;margin:2.5rem auto 0;font-size:0.9rem}.post-nav .next{margin-left:auto;text-align:right}.comments{margin:2rem auto 0}d-contents nav ul,d-contents nav ol{list-style:none;padding-left:1em;margin:0}d-contents nav>ul{padding-left:0}d-contents nav li{margin-bottom:0.5em;line-height:1.35}d-contents nav a{color:var(--global-text-color)}d-contents nav a:hover{color:var(--global-theme-color)}html[data-lang='zh'] .lang-en{display:none}html[data-lang='en'] .lang-zh{display:none}@media (max-width: 640px){.site-nav .nav-links{gap:0.85rem}.site-nav .brand{font-size:0.95rem}.profile{justify-content:center;text-align:center}}d-byline{border-top-color:var(--global-divider-color) !important}d-byline h3{color:var(--global-text-color) !important}d-byline a,d-article d-byline a{color:var(--global-text-color) !important}d-byline a:hover,d-article d-byline a:hover{color:var(--global-hover-color) !important}d-article{border-top-color:var(--global-divider-color) !important}d-article p,d-article h1,d-article h2,d-article h3,d-article h4,d-article h5,d-article h6,d-article li,d-article table{color:var(--global-text-color) !important}d-article h1,d-article h2,d-article hr,d-article table,d-article table th,d-article table td{border-bottom-color:var(--global-divider-color) !important}d-article a{color:var(--global-theme-color) !important}d-article a:hover{color:var(--global-theme-color) !important}d-article b i{display:inline}d-article details{color:var(--global-text-color);background-color:var(--global-code-bg-color);margin-top:0;padding:8px 12px;position:relative;border-radius:6px;display:block;margin-bottom:20px;grid-column:text;overflow:auto;max-width:100%}d-article details summary{color:var(--global-theme-color)}d-article details p{margin-top:0.5rem;margin-bottom:0.5rem}d-article d-contents{align-self:start;grid-column:1 / 4;grid-row:auto / span 4;justify-self:end;margin-top:0em;padding-left:2em;padding-right:3em;border-right:1px solid var(--global-divider-color);width:calc(max(70%, 300px));margin-right:0px;margin-top:0em;display:grid;grid-template-columns:minmax(8px, 1fr) [toc] auto minmax(8px, 1fr) [toc-line] 1px minmax(32px, 2fr)}d-article d-contents nav{grid-column:toc}d-article d-contents nav a{border-bottom:none !important}d-article d-contents nav a:hover{border-bottom:1px solid var(--global-text-color) !important}d-article d-contents nav h3{margin-top:0;margin-bottom:1em}d-article d-contents nav div{display:block;outline:none;margin-bottom:0.8em;color:rgba(0,0,0,0.8);font-weight:bold}d-article d-contents nav ul{padding-left:1em;margin-top:0;margin-bottom:6px;list-style-type:none}d-article d-contents nav ul li{margin-bottom:0.25em}d-article d-contents .figcaption{line-height:1.4em}d-article d-contents toc-line{border-right:1px solid var(--global-divider-color);grid-column:toc-line}d-article d-footnote{scroll-margin-top:66px}d-appendix{border-top-color:var(--global-divider-color) !important;color:var(--global-distill-app-color) !important}d-appendix h3,d-appendix li,d-appendix span{color:var(--global-distill-app-color) !important}d-appendix a,d-appendix a.footnote-backlink{color:var(--global-distill-app-color) !important}d-appendix a:hover,d-appendix a.footnote-backlink:hover{color:var(--global-hover-color) !important}@media (max-width: 1024px){d-article d-contents{display:block;grid-column-start:2;grid-column-end:-2;padding-bottom:0.5em;margin-bottom:1em;padding-top:0.5em;width:100%;border:1px solid var(--global-divider-color)}d-article d-contents nav{grid-column:none}}d-article{overflow:visible !important}@media (min-width: 1025px){d-article d-contents{position:sticky;top:70px;align-self:start;grid-row:1 / -1;max-height:calc(100vh - 90px);overflow-y:auto}}d-article aside{font-size:0.8rem;line-height:1.55;color:var(--global-text-color-light)}@media (min-width: 1025px){d-article aside{float:right;clear:right;width:220px;margin-right:-260px;margin-left:2rem;margin-top:0;margin-bottom:1.2rem;padding-left:0.9em;border-left:2px solid var(--global-divider-color)}}@media (max-width: 1024px){d-article aside{display:block;border-left:3px solid var(--global-divider-color);padding-left:0.9em;margin:1em 0}}d-article figure{margin:1.6rem 0;text-align:center;scroll-margin-top:80px}d-article figure img{max-width:100%;height:auto;border-radius:6px}d-article figcaption{font-size:0.85rem;color:var(--global-text-color-light);margin-top:0.6rem;line-height:1.5;text-align:center}d-article figcaption .fig-label{font-weight:700;color:var(--global-text-color)}d-article a.xref{font-weight:600;white-space:nowrap}d-article table{border-collapse:collapse;margin:1.2rem auto;font-size:0.92rem;scroll-margin-top:80px}d-article figure table{margin:0 auto}d-article table th,d-article table td{border:1px solid var(--global-divider-color);padding:6px 12px;text-align:left}d-article table th{background:var(--global-code-block-bg);font-weight:600}d-article code,.page-content code,.post code{font-family:"SFMono-Regular","JetBrains Mono",Menlo,Consolas,"Liberation Mono",monospace;font-size:0.86em;background:var(--global-code-inline-bg);color:var(--global-code-inline-text);padding:0.15em 0.4em;border-radius:4px;border:1px solid var(--global-divider-color)}d-article div.highlighter-rouge,.page-content div.highlighter-rouge,figure.highlight,d-article pre,.post pre{margin:1.2em 0}d-article .highlight,.page-content .highlight,.highlighter-rouge .highlight{background:var(--global-code-block-bg) !important;border:1px solid var(--global-divider-color);border-radius:8px;overflow:hidden}d-article pre,.page-content pre,.highlight pre,.highlight{font-family:"SFMono-Regular","JetBrains Mono",Menlo,Consolas,"Liberation Mono",monospace !important;font-size:0.84rem;line-height:1.55}.highlight pre,d-article .highlight pre{background:transparent !important;color:var(--global-code-block-text) !important;margin:0 !important;padding:14px 16px !important;overflow-x:auto;border:none !important;border-radius:0 !important}.highlight code,d-article .highlight code{background:transparent !important;border:none !important;padding:0 !important;font-size:inherit !important;color:inherit !important}d-article pre:not(.highlight),.page-content pre:not(.highlight){background:var(--global-code-block-bg) !important;color:var(--global-code-block-text) !important;border:1px solid var(--global-divider-color);border-radius:8px;padding:14px 16px !important;overflow-x:auto}.highlight .c,.highlight .cm,.highlight .c1,.highlight .cs,.highlight .cd{color:#6a737d;font-style:italic}.highlight .cp{color:#6a737d}.highlight .k,.highlight .kn,.highlight .kp,.highlight .kr,.highlight .kd,.highlight .kt{color:#d73a49}.highlight .o,.highlight .ow{color:#d73a49}.highlight .n,.highlight .na,.highlight .nl,.highlight .nx{color:#24292e}.highlight .nf,.highlight .nd{color:#6f42c1}.highlight .nb,.highlight .bp{color:#005cc5}.highlight .nc,.highlight .nn{color:#6f42c1}.highlight .s,.highlight .s1,.highlight .s2,.highlight .sb,.highlight .sc,.highlight .sd,.highlight .se,.highlight .sh,.highlight .si,.highlight .sx,.highlight .sr,.highlight .dl{color:#032f62}.highlight .m,.highlight .mi,.highlight .mf,.highlight .mh,.highlight .mo,.highlight .il{color:#005cc5}.highlight .p,.highlight .pi{color:#24292e}.highlight .nv,.highlight .vc,.highlight .vg,.highlight .vi{color:#e36209}.highlight .gd{color:#b31d28;background:#ffeef0}.highlight .gi{color:#22863a;background:#f0fff4}.highlight .err{color:#b31d28}html[data-theme='dark'] .highlight .c,html[data-theme='dark'] .highlight .cm,html[data-theme='dark'] .highlight .c1,html[data-theme='dark'] .highlight .cs,html[data-theme='dark'] .highlight .cd{color:#8b949e;font-style:italic}html[data-theme='dark'] .highlight .cp{color:#8b949e}html[data-theme='dark'] .highlight .k,html[data-theme='dark'] .highlight .kn,html[data-theme='dark'] .highlight .kp,html[data-theme='dark'] .highlight .kr,html[data-theme='dark'] .highlight .kd,html[data-theme='dark'] .highlight .kt{color:#ff7b72}html[data-theme='dark'] .highlight .o,html[data-theme='dark'] .highlight .ow{color:#ff7b72}html[data-theme='dark'] .highlight .n,html[data-theme='dark'] .highlight .na,html[data-theme='dark'] .highlight .nl,html[data-theme='dark'] .highlight .nx{color:#c9d1d9}html[data-theme='dark'] .highlight .nf,html[data-theme='dark'] .highlight .nd{color:#d2a8ff}html[data-theme='dark'] .highlight .nb,html[data-theme='dark'] .highlight .bp{color:#79c0ff}html[data-theme='dark'] .highlight .nc,html[data-theme='dark'] .highlight .nn{color:#d2a8ff}html[data-theme='dark'] .highlight .s,html[data-theme='dark'] .highlight .s1,html[data-theme='dark'] .highlight .s2,html[data-theme='dark'] .highlight .sb,html[data-theme='dark'] .highlight .sc,html[data-theme='dark'] .highlight .sd,html[data-theme='dark'] .highlight .se,html[data-theme='dark'] .highlight .sh,html[data-theme='dark'] .highlight .si,html[data-theme='dark'] .highlight .sx,html[data-theme='dark'] .highlight .sr,html[data-theme='dark'] .highlight .dl{color:#a5d6ff}html[data-theme='dark'] .highlight .m,html[data-theme='dark'] .highlight .mi,html[data-theme='dark'] .highlight .mf,html[data-theme='dark'] .highlight .mh,html[data-theme='dark'] .highlight .mo,html[data-theme='dark'] .highlight .il{color:#79c0ff}html[data-theme='dark'] .highlight .p,html[data-theme='dark'] .highlight .pi{color:#c9d1d9}html[data-theme='dark'] .highlight .nv,html[data-theme='dark'] .highlight .vc,html[data-theme='dark'] .highlight .vg,html[data-theme='dark'] .highlight .vi{color:#ffa657}html[data-theme='dark'] .highlight .gd{color:#ffdcd7;background:#67060c}html[data-theme='dark'] .highlight .gi{color:#aff5b4;background:#033a16}html[data-theme='dark'] .highlight .err{color:#ffa198}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#6a737d;font-style:italic}.token.punctuation{color:#24292e}.token.keyword,.token.tag,.token.selector,.token.important,.token.atrule{color:#d73a49}.token.operator,.token.entity,.token.url{color:#d73a49}.token.function,.token.class-name{color:#6f42c1}.token.string,.token.char,.token.attr-value,.token.regex{color:#032f62}.token.number,.token.boolean,.token.constant,.token.symbol{color:#005cc5}.token.builtin,.token.property,.token.attr-name{color:#005cc5}.token.variable{color:#e36209}.token.deleted{color:#b31d28;background:#ffeef0}.token.inserted{color:#22863a;background:#f0fff4}.token.namespace{opacity:0.7}html[data-theme='dark'] .token.comment,html[data-theme='dark'] .token.prolog,html[data-theme='dark'] .token.doctype,html[data-theme='dark'] .token.cdata{color:#8b949e}html[data-theme='dark'] .token.punctuation{color:#c9d1d9}html[data-theme='dark'] .token.keyword,html[data-theme='dark'] .token.tag,html[data-theme='dark'] .token.selector,html[data-theme='dark'] .token.important,html[data-theme='dark'] .token.atrule{color:#ff7b72}html[data-theme='dark'] .token.operator,html[data-theme='dark'] .token.entity,html[data-theme='dark'] .token.url{color:#ff7b72}html[data-theme='dark'] .token.function,html[data-theme='dark'] .token.class-name{color:#d2a8ff}html[data-theme='dark'] .token.string,html[data-theme='dark'] .token.char,html[data-theme='dark'] .token.attr-value,html[data-theme='dark'] .token.regex{color:#a5d6ff}html[data-theme='dark'] .token.number,html[data-theme='dark'] .token.boolean,html[data-theme='dark'] .token.constant,html[data-theme='dark'] .token.symbol{color:#79c0ff}html[data-theme='dark'] .token.builtin,html[data-theme='dark'] .token.property,html[data-theme='dark'] .token.attr-name{color:#79c0ff}html[data-theme='dark'] .token.variable{color:#ffa657}html[data-theme='dark'] .token.deleted{color:#ffdcd7;background:#67060c}html[data-theme='dark'] .token.inserted{color:#aff5b4;background:#033a16}.cv{max-width:820px}.cv .cv-header{margin-bottom:2rem;display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:0.5rem}.cv .cv-header h1{margin:0;font-size:2rem}.cv .cv-header .cv-download a{font-size:0.9rem;border:1px solid var(--global-divider-color);padding:5px 12px;border-radius:6px}.cv .cv-section{margin-bottom:2.2rem}.cv .cv-section>h2{font-size:1.25rem;border-bottom:1px solid var(--global-divider-color);padding-bottom:0.35rem;margin-bottom:1rem}.cv .cv-entry{display:grid;grid-template-columns:130px 1fr;gap:1rem;padding:0.6rem 0}.cv .cv-entry .cv-date{color:var(--global-text-color-light);font-size:0.9rem}.cv .cv-entry .cv-body h3{margin:0 0 0.15rem;font-size:1.05rem}.cv .cv-entry .cv-body .cv-place{color:var(--global-text-color-light);font-size:0.92rem;margin:0 0 0.35rem}.cv .cv-entry .cv-body ul{margin:0.3rem 0 0;padding-left:1.1rem}.cv .cv-entry .cv-body p{margin:0.3rem 0 0}.cv .cv-skills{list-style:none;padding:0;margin:0}.cv .cv-skills li{padding:0.35rem 0}.cv .cv-skills .skill-label{font-weight:600;margin-right:0.5rem}@media (max-width: 640px){.cv .cv-entry{grid-template-columns:1fr;gap:0.15rem}}
