@page{size:A4;margin:8mm 11mm 9mm}.resume-document{--resume-ink: #000;--resume-paper: #fff;width:max-content;margin:0 auto;color:var(--resume-ink);font-family:Microsoft YaHei,PingFang SC,Noto Sans CJK SC,Arial,sans-serif;font-size:10.5pt;line-height:1.4}.resume-document *,.resume-document *:before,.resume-document *:after{box-sizing:border-box}.resume-document .resume-sheet-frame{width:max-content}.resume-document .resume-sheet{orphans:2;widows:2;display:block;width:210mm;min-height:0;margin:0 auto;padding:8mm 11mm 9mm;color:var(--resume-ink);background:var(--resume-paper);font:inherit}.resume-document[data-page-mode=continuous] .resume-sheet{min-height:0!important}.resume-document .resume-sheet[contenteditable=true]{cursor:text;caret-color:var(--resume-ink)}.resume-document .resume-sheet[contenteditable=true]:focus{outline:2px solid rgba(0,0,0,.32);outline-offset:2px}.resume-document .resume-sheet[contenteditable=true]:hover{box-shadow:0 0 0 2px #0000001a,0 2px 18px #00000029}.resume-document h1{margin:0 0 5px;color:var(--resume-ink);font-family:Microsoft YaHei,PingFang SC,Arial,sans-serif;font-size:24pt;font-weight:700;line-height:1.08}.resume-document .header-grid{display:grid;grid-template-columns:minmax(0,1fr) 20mm;gap:5mm;align-items:start;min-height:28mm}.resume-document .header-grid>div{min-width:0}.resume-document .profile-photo{display:block;width:20mm;height:28mm;border:1px solid var(--resume-ink);border-radius:0;background:var(--resume-paper);object-fit:cover;object-position:center 42%}.resume-document .meta-row{display:flex;align-items:center;gap:0;min-height:18px;margin:0;color:var(--resume-ink);font-size:9.6pt;font-weight:400;line-height:1.3;white-space:nowrap}.resume-document .meta-row+.meta-row{margin-top:1px}.resume-document .meta-icon{width:14px;height:14px;margin-right:5px;border-radius:0;object-fit:contain;flex:0 0 auto}.resume-document .meta-row strong{font-weight:400}.resume-document strong{font-weight:700}.resume-document .separator{margin:0 8px;padding:0;color:var(--resume-ink)}.resume-document .section{margin-top:14px}.resume-document .section-title{text-wrap:pretty;margin:0 0 8px;padding:0 0 4px;border:0;border-bottom:1px solid var(--resume-ink);color:var(--resume-ink);font-family:Microsoft YaHei,PingFang SC,Arial,sans-serif;font-size:14pt;font-weight:700;line-height:1.35;break-after:avoid}.resume-document .company{display:flex;align-items:baseline;gap:12px;min-height:22px;margin:8px 0 4px;padding:2px 0;border:0;border-radius:0;background:transparent;page-break-inside:avoid;break-inside:avoid;page-break-after:avoid;break-after:avoid}.resume-document .company-name{flex:1;min-width:0;font-size:11pt;font-weight:700}.resume-document .company-meta{color:var(--resume-ink);font-size:9.5pt;white-space:nowrap}.resume-document .education-name .education-major{margin-left:18px}.resume-document .project{margin:4px 0 12px}.resume-document .project-title{margin:2px 0 1px;color:var(--resume-ink);font-size:11pt;font-weight:700;line-height:1.4;break-after:avoid}.resume-document .project-title-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;break-after:avoid}.resume-document .project-title-row .project-title{flex:1;min-width:0}.resume-document .repo-link{flex:0 0 auto;color:var(--resume-ink);font-size:8.7pt;font-weight:700;line-height:1.4;white-space:nowrap}.resume-document a,.resume-document a:visited,.resume-document a:hover,.resume-document a:focus{color:var(--resume-ink);text-decoration:none}.resume-document ul{margin:1px 0 2px 17px;padding:0}.resume-document li{margin:3px 0;break-inside:avoid}.resume-document li::marker{font-size:.8em}.resume-document .inline-list{margin:2px 0 0}.resume-document .code{padding:0;border-radius:0;background:transparent;font-family:Cascadia Mono,Consolas,monospace;font-size:.9em}.resume-document .visual-page-spacer{display:block;height:var(--spacer-height, 0);pointer-events:none;user-select:none}@media screen{.resume-document[data-page-mode=paged]{padding:4mm 0 12mm}.resume-document[data-page-mode=paged] .resume-sheet{min-height:297mm;background:repeating-linear-gradient(to bottom,var(--resume-paper) 0,var(--resume-paper) 297mm,transparent 297mm,transparent 309mm);filter:none}.resume-document[data-page-mode=continuous] .visual-page-spacer{display:none}.resume-document[data-page-mode=spread]{--resume-spread-scale: 1;padding:4mm 0 12mm}.resume-document[data-page-mode=spread] .resume-sheet{width:432mm;height:297mm;min-height:297mm;padding:8mm 11mm 9mm;columns:2 188mm;column-fill:auto;column-gap:34mm;background:linear-gradient(to right,var(--resume-paper) 0,var(--resume-paper) 210mm,transparent 210mm,transparent 222mm,var(--resume-paper) 222mm,var(--resume-paper) 100%);filter:none;transform:scale(var(--resume-spread-scale));transform-origin:top left}}@media print{.resume-document{width:auto;margin:0}.resume-document .resume-sheet,.resume-document[data-page-mode] .resume-sheet{width:auto;min-height:0!important;margin:0;padding:0;background:var(--resume-paper);box-shadow:none;filter:none;outline:none}.resume-document .resume-sheet-frame{width:auto!important;height:auto!important}.resume-document[data-page-mode=spread] .resume-sheet{height:auto;columns:auto;column-gap:normal;transform:none}.resume-document .visual-page-spacer{display:none!important}}
