.rs{--rs-paper:#f8f8f6;--rs-card:#fff;--rs-ink:#1c2420;--rs-ink-2:#4f5b55;--rs-ink-3:#7c877f;--rs-ink-4:#a7afaa;--rs-rule:#e2e6e2;--rs-rule-soft:#ecefeb;--rs-pine:#2f6b55;--rs-pine-deep:#214b3c;--rs-pine-mist:#dfeee6;--rs-vermilion:#c45e4c;--rs-hand:var(--v9-hand);--rs-mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,monospace;--rs-serif:"Instrument Serif","Noto Serif SC","Songti SC","Source Han Serif SC","Noto Serif CJK SC","STSong",serif;--rs-serif-cjk:"Noto Serif SC","Songti SC","Source Han Serif SC","Noto Serif CJK SC","STSong","Instrument Serif",serif;position:relative;min-height:100vh;background:var(--v9-page,#fff);color:var(--v9-ink,#1f2330)}.rs *{box-sizing:border-box}.rs button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}.rs .v9-btn{font-family:var(--v9-ui);font-weight:700;padding:0 18px}.rs .v9-btn--lg{padding:0 22px}.rs .v9-btn--sm{padding:0 13px;font-size:13.5px}.rs .v9-btn--icon,.rs .v9-btn--icon.v9-btn--sm{padding:0}.rs .v9-btn--quiet{color:var(--v9-ink-2)}.rs .v9-seg button{padding:0 11px}.rs .v9-seg button[aria-pressed=true]{background:var(--v9-surface)}.rs .v9-btn--ink{color:#fff;background:var(--v9-ink)}.rs .v9-btn--ink:hover{background:#333949}.rs .v9-btn--line{border:1.5px solid var(--v9-ink);background:var(--v9-surface)}.rs-hand{font-family:var(--v9-hand)}.rs-top{position:sticky;top:0;z-index:12;display:flex;align-items:center;gap:10px;height:60px;padding:0 16px 0 10px;border-bottom:1px solid var(--v9-line-2);background:var(--v9-page)}.rs-top-t{display:grid;min-width:0;margin-right:6px}.rs-top-t h1{margin:0;font-size:15.5px;font-weight:800;line-height:1.3}.rs-top-t p{margin:0;overflow:hidden;color:var(--v9-ink-3);font-size:12.5px;font-weight:500;line-height:1.45;white-space:nowrap;text-overflow:ellipsis}.rs-top-sp{flex:1}.rs-tools{display:flex;align-items:center;gap:4px}.rs-tools .v9-seg{margin:0 4px}.rs-tools .rs-sep{width:1px;height:20px;margin:0 6px;background:var(--v9-line)}.rs-tools .rs-synced{padding:0 6px;color:var(--v9-ok-deep);font-size:12.5px;font-weight:700;white-space:nowrap}.rs-tools .v9-btn[aria-pressed=true]{background:var(--v9-ink);color:#fff}.rs-sw{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 10px;border-radius:10px;color:var(--v9-ink-2);font-size:13.5px;font-weight:500;white-space:nowrap;transition:background-color .2s}.rs-sw:hover{background:var(--v9-wash);color:var(--v9-ink)}.rs-sw i{position:relative;display:inline-block;width:28px;height:16px;border:1.5px solid var(--v9-ink);border-radius:999px;background:var(--v9-surface);transition:background-color .2s}.rs-sw i:after{content:"";position:absolute;left:2px;top:2px;width:9px;height:9px;border-radius:50%;background:var(--v9-ink);transition:transform .25s var(--v9-spring),background-color .2s}.rs-sw.on i{background:var(--v9-blue);border-color:var(--v9-blue-deep)}.rs-sw.on i:after{transform:translateX(12px);background:#fff}.rs-menu-wrap{position:relative}.rs-menu{position:absolute;right:0;top:40px;z-index:30;display:flex;flex-direction:column;min-width:250px;padding:6px;border:1.5px solid var(--v9-ink);border-radius:14px;background:var(--v9-surface);box-shadow:var(--v9-float)}.rs-menu a,.rs-menu button{padding:9px 11px;border-radius:9px;color:var(--v9-ink);font-size:14px;font-weight:600;text-align:left;line-height:1.45}.rs-menu a:hover,.rs-menu button:hover:not(:disabled){background:var(--v9-wash)}.rs-menu button:disabled{opacity:.45;cursor:default}.rs-menu small{display:block;margin-top:1px;color:var(--v9-ink-3);font-size:12.5px;font-weight:500}.rs-menu hr{height:1px;margin:4px 6px;border:0;background:var(--v9-line-2)}.rs-slices{display:flex;flex-wrap:wrap;align-items:center;gap:4px 22px;padding:0 28px;border-bottom:1px solid var(--v9-line-2);background:var(--v9-page)}.rs-slices .s{position:relative;padding:11px 0 12px;color:var(--v9-ink-3);font-size:14.5px;font-weight:500;white-space:nowrap}.rs-slices .s.on,.rs-slices .s:hover{color:var(--v9-ink)}.rs-slices .s.on:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:4px;border-radius:4px;background:var(--v9-blue)}.rs-slices .s.add{color:var(--v9-blue-deep)}.rs-slices .diff{margin-left:auto;color:var(--v9-ink-3);font-size:13px;font-weight:500}.rs-slices .diff .rm{margin-left:12px;color:var(--v9-bad-deep);font-weight:700}.rs-slices .diff .rm:hover{text-decoration:underline;text-underline-offset:3px}.rs-sheet{position:relative;display:grid;grid-template-columns:1fr 760px 1fr;gap:0 36px;align-items:start;padding:34px 40px 200px;background-color:var(--v9-sunken);background-image:radial-gradient(var(--v9-dots) 1.1px,transparent 1.3px);background-size:22px 22px;min-height:calc(100vh - 60px)}.rs-paperwrap{grid-column:2}.rs-margin-col{grid-column:3;max-width:320px;position:sticky;top:84px;max-height:calc(100vh - 200px);overflow-y:auto;padding:4px 6px 12px 2px}@media (max-width:1320px){.rs-sheet{grid-template-columns:minmax(0,760px) minmax(0,1fr);padding-left:28px;padding-right:20px;gap:0 28px}.rs-paperwrap{grid-column:1}.rs-margin-col{grid-column:2}}@media (max-width:1180px){.rs-sheet{grid-template-columns:1fr;padding:16px 14px 260px}.rs-paperwrap{grid-column:1;max-width:760px;width:100%;margin:0 auto}}.rs-zhupi{color:var(--v9-ink-2);font-size:14px;line-height:1.7}.rs-zhupi .sum{display:block;width:100%;padding:0 0 12px;margin-bottom:4px;border-bottom:1.5px solid var(--v9-ink);color:var(--v9-blue-deep);font-family:var(--v9-hand);font-size:19px;line-height:1.5;text-align:left;cursor:default}.rs-zhupi .sum .chev{float:right;color:var(--v9-ink-3);font-family:var(--v9-ui);font-size:14px}.rs-zhupi .note{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;padding:12px 8px 12px 6px;margin:0 -8px 0 -6px;border-bottom:1px solid var(--v9-line);border-radius:12px;transition:background-color .2s}.rs-zhupi .note:last-of-type{border-bottom-color:transparent}.rs-zhupi .note .no{display:grid;place-items:center;width:20px;height:20px;margin-top:2px;border:1.5px solid var(--v9-blue-deep);border-radius:99px;color:var(--v9-blue-deep);font-size:11px;font-weight:800;font-variant-numeric:tabular-nums}.rs-zhupi .note .no:empty{border-color:transparent}.rs-zhupi .note[data-kind=tailor] .no{border-color:var(--v9-ok-deep);color:var(--v9-ok-deep)}.rs-zhupi .note[data-kind=risk] .no{border-color:var(--v9-bad-deep);color:var(--v9-bad-deep)}.rs-zhupi .note .t{margin-right:6px;color:var(--v9-blue-deep);font-family:var(--v9-hand);font-size:16px}.rs-zhupi .note[data-kind=tailor] .t{color:var(--v9-ok-deep)}.rs-zhupi .note[data-kind=risk] .t{color:var(--v9-bad-deep)}.rs-zhupi .note .txt{color:var(--v9-ink)}.rs-zhupi .note.hover,.rs-zhupi .note.on{background:var(--v9-surface);box-shadow:0 0 0 1.5px var(--v9-ink);border-bottom-color:transparent}.rs-zhupi .note.done{opacity:.5}.rs-zhupi .note.done .no{border-color:var(--v9-ink-4);color:var(--v9-ink-4)}.rs-zhupi .prop{display:grid;gap:4px;margin-top:8px;padding:8px 10px;border-radius:10px;background:var(--v9-surface);border:1px solid var(--v9-line)}.rs-zhupi .prop .old{color:var(--v9-ink-3);font-size:13px;text-decoration:line-through;text-decoration-color:var(--v9-bad);text-decoration-thickness:1.5px}.rs-zhupi .prop .new{color:var(--v9-blue-deep);font-family:var(--v9-hand);font-size:16px;line-height:1.6}.rs-zhupi .acts{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:9px}.rs-zhupi .acts .live{color:var(--v9-blue-deep);font-size:13px;font-weight:800}.rs-zhupi .acts .done{color:var(--v9-ok-deep);font-size:13px;font-weight:800}.rs-zhupi .foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 10px;padding-top:12px;color:var(--v9-ink-3);font-size:12.5px;font-weight:500}.rs-impression .k{margin-bottom:10px;padding-bottom:10px;border-bottom:1.5px solid var(--v9-ink);color:var(--v9-ink);font-size:15px;font-weight:800}.rs-impression .hand{margin:0 0 12px;color:var(--v9-blue-deep);font-family:var(--v9-hand);font-size:18px;line-height:1.75}.rs-impression .loading{color:var(--v9-ink-3)}.rs-sheetbar{display:none}@media (max-width:1180px){.rs-margin-col{display:none}.rs-sheetbar{display:block;position:fixed;left:0;right:0;bottom:0;z-index:14;max-height:72vh;overflow:auto;padding:14px 18px calc(16px + env(safe-area-inset-bottom));border-top:1.5px solid var(--v9-ink);border-radius:20px 20px 0 0;background:var(--v9-surface);box-shadow:var(--v9-float)}.rs-sheetbar .sum{border-bottom:0;margin-bottom:0;padding-bottom:0;cursor:pointer;font-size:17px}.rs-sheetbar:not(.collapsed) .sum{border-bottom:1.5px solid var(--v9-ink);margin-bottom:4px;padding-bottom:10px}.rs-listen.idle{display:none}.rs-listen{z-index:16}}.rs-listen{position:fixed;left:0;right:0;bottom:0;z-index:10;padding:34px 0 max(18px,env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(246,247,250,0) 0,var(--v9-sunken) 34%);pointer-events:none}.rs-listen .inner{width:min(760px,calc(100% - 28px));margin:0 auto;pointer-events:auto}.rs-ask{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:0 4px 10px}.rs-ask .q{color:var(--v9-blue-deep);font-family:var(--v9-hand);font-size:19px;line-height:1.6}.rs-ask .r{display:flex;align-items:center;gap:10px;white-space:nowrap}.rs-ask .r .no{display:grid;place-items:center;width:22px;height:22px;border:1.5px solid var(--v9-blue-deep);border-radius:99px;color:var(--v9-blue-deep);font-size:12px;font-weight:800}.rs-bar,.rs-strip{display:flex;align-items:center;gap:10px;min-height:56px;padding:8px;border:2px solid var(--v9-ink);border-radius:18px;background:var(--v9-surface)}.rs-strip:focus-within{box-shadow:0 0 0 4px var(--v9-blue-soft)}.rs-mic,.rs-orb{position:relative;display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:12px;background:var(--v9-wash);color:var(--v9-ink);cursor:pointer;transition:background-color .2s}.rs-mic:hover,.rs-orb:hover{background:var(--v9-line)}.rs-orb.live{background:var(--v9-bad);color:#fff;animation:v9-live-pulse 1.6s ease-out infinite}.rs-heard{position:relative;flex:1;min-width:0}.rs-heard textarea{width:100%;padding:6px 2px;border:0;background:transparent;color:var(--v9-ink);font-family:var(--v9-ui);font-size:15.5px;line-height:1.6;resize:none;outline:none}.v9 .rs-heard textarea:focus-visible{outline:none}.rs-heard textarea::-moz-placeholder{color:var(--v9-ink-4)}.rs-heard textarea::placeholder{color:var(--v9-ink-4)}.rs-heard .interim{position:absolute;left:2px;right:0;top:6px;color:var(--v9-ink-3);font-size:15.5px;line-height:1.6;pointer-events:none}.rs-heard .interim:after{content:"";display:inline-block;width:1.5px;height:15px;margin-left:2px;vertical-align:-2px;background:var(--v9-blue);animation:rs-blink 1s steps(2) infinite}.rs-note{flex:none;font-size:12.5px}.rs-bar .l,.rs-note{color:var(--v9-ink-3);font-weight:500}.rs-bar .l{display:flex;flex:1;min-width:0;align-items:center;justify-content:space-between;gap:12px;font-size:14.5px}.rs-bar .hint{color:var(--v9-ink-3);font-size:12.5px;font-weight:500;white-space:nowrap}.rs-bar .hint.live{color:var(--v9-blue-deep);font-weight:800}@media (max-width:720px){.rs-bar .hint,.rs-note{display:none}}.rs-dim{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:20px;background:rgba(31,35,48,.3);animation:v9-my-fade .25s var(--v9-ease)}.rs-dialog{width:min(640px,100%);max-height:calc(100dvh - 40px);overflow-y:auto;padding:26px 28px 22px;border:1.5px solid var(--v9-ink);border-radius:20px;background:var(--v9-surface);box-shadow:var(--v9-float)}.rs-dialog h3{margin:0 0 6px;font-size:22px;font-weight:800}.rs-dialog .lede{margin:0 0 18px;color:var(--v9-ink-2);font-size:14.5px;line-height:1.75}.rs-dialog .row2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.rs-dialog label{display:block;margin-bottom:6px;color:var(--v9-ink-2);font-size:13px;font-weight:600}.rs-dialog textarea{min-height:220px;resize:vertical;font-size:14px;line-height:1.65}.rs-dialog .acts{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:16px}@media (max-width:560px){.rs-dialog .row2{grid-template-columns:1fr}.rs-dialog{padding:20px 18px 18px}}@keyframes v9-my-fade{0%{opacity:0}}.rs-cv{background:var(--rs-card);border:1.5px solid var(--v9-ink,#1f2330);border-radius:4px;box-shadow:5px 5px 0 var(--v9-ink,#1f2330);padding:44px 52px 48px;min-height:1075px;font-size:13.5px;position:relative;color:var(--rs-ink);font-family:Inter,-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;letter-spacing:-.011em}.rs-cv:after{content:"一页到这里";position:absolute;left:0;right:0;top:1075px;border-top:1.5px dashed #b3c0e4;font-family:var(--v9-hand,var(--rs-hand));font-size:13px;letter-spacing:0;color:var(--v9-blue-deep,#2f5be3);text-align:right;padding:3px 10px 0 0;pointer-events:none}.rs-cv .name{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.rs-cv .name h1{font-family:var(--rs-serif-cjk);font-weight:600;font-size:28px;letter-spacing:.02em;line-height:1.1;margin:0}.rs-cv .name h1:lang(en),.rs-cv[data-lang=en] .name h1{font-family:var(--rs-serif);font-weight:400;font-size:34px;letter-spacing:-.01em}.rs-cv .name .want{font-size:12.5px;color:var(--rs-ink-2);text-align:right;padding-bottom:4px}.rs-cv .mark{width:22px;height:0;border-top:2px solid var(--rs-pine);margin:8px 0 7px}.rs-cv .contact{font-size:11.5px;color:var(--rs-ink-3);display:flex;gap:0;flex-wrap:wrap;font-variant-numeric:tabular-nums}.rs-cv .contact>*+:before{content:"·";margin:0 8px;color:var(--rs-ink-4)}.rs-cv .contact .fill{color:var(--rs-ink-4);border-bottom:1px dashed var(--rs-rule)}.rs-cv h2{font-size:12.5px;font-weight:600;letter-spacing:.12em;color:var(--rs-ink);margin:18px 0 4px;padding-bottom:4px;border-bottom:1px solid var(--rs-ink)}.rs-cv .ent{margin-top:8px}.rs-cv .ent .hd{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:13.5px;line-height:1.5}.rs-cv .ent .hd b{font-weight:600}.rs-cv .ent .hd .role{color:var(--rs-ink-2);margin-left:8px;font-weight:400}.rs-cv .ent .hd .dt{font-family:var(--rs-mono);font-size:10.5px;color:var(--rs-ink-3);white-space:nowrap;font-variant-numeric:tabular-nums}.rs-cv .ent .meta,.rs-cv .ent .stack{font-size:12.5px;color:var(--rs-ink-3);margin-top:1px;line-height:1.45}.rs-cv ul{margin:3px 0 0;padding-left:14px;list-style:none}.rs-cv li{font-size:13.5px;line-height:1.52;margin:3px 0;position:relative;border-radius:4px}.rs-cv li:before{content:"•";position:absolute;left:-12px;top:0;font-size:11px;line-height:inherit;color:var(--rs-ink-2)}.rs-cv li b{font-weight:600}.rs-cv ul.own{margin-top:4px}.rs-cv li .t{display:block;cursor:text;margin:0 -6px;padding:0 6px;border-radius:4px}.rs-cv li .t:hover{background:rgba(28,36,32,.04)}.rs-cv li.old{color:var(--rs-ink-4);text-decoration:line-through;text-decoration-color:rgba(28,36,32,.35)}.rs-cv li.old .t{cursor:default}.rs-cv li.fresh{background:linear-gradient(90deg,rgba(79,125,255,.12),transparent 70%);margin-left:-10px;padding-left:10px}.rs-cv li.fresh:before{left:-2px}.rs-site .row li b{font-weight:600;color:var(--rs-ink)}.rs-cv li.weak{color:var(--rs-ink-4)}.rs-cv li .tag{position:absolute;right:-140px;top:1px;width:128px;font-family:var(--v9-hand,var(--rs-hand));font-size:14px;letter-spacing:0;color:var(--v9-ink-3,#6f7688);white-space:nowrap}.rs-cv li.fresh .tag{color:var(--v9-blue-deep,#2f5be3)}.rs-cv li.asking .t{box-shadow:inset 3px 0 0 var(--v9-blue,#4f7dff);background:rgba(226,234,255,.55);padding-left:8px}.rs-cv li.asking:before{display:none}.rs-cv li textarea{width:100%;font:inherit;line-height:inherit;color:inherit;background:#fff;border:1.5px solid var(--v9-ink,#1f2330);border-radius:6px;padding:2px 6px;margin:0 -6px;resize:none;outline:none;box-shadow:0 0 0 3px var(--v9-blue-soft,#e2eaff)}.rs-cv .skills{font-size:13.5px;line-height:1.6;display:grid;grid-template-columns:max-content 1fr;-moz-column-gap:16px;column-gap:16px;row-gap:2px;margin-top:6px}.rs-cv .skills b{font-weight:500;color:var(--rs-ink-3);font-size:12px}.rs-mark{display:inline-grid;place-items:center;min-width:16px;height:16px;margin-left:4px;padding:0 3px;border:1.5px solid;border-radius:99px;font-family:var(--v9-ui,sans-serif);font-size:10.5px;font-weight:800;letter-spacing:0;color:var(--v9-blue-deep,#2f5be3);vertical-align:2px;line-height:1;font-variant-numeric:tabular-nums}.rs-mark[data-kind=tailor]{color:var(--v9-ok-deep,#13865a)}.rs-mark[data-kind=risk]{color:var(--v9-bad-deep,#c63f31)}.rs-cv .ent.hovered>.hd,.rs-cv .skills.hovered,.rs-cv li.hovered .t{background:rgba(226,234,255,.7);border-radius:4px}.rs-cv li.hovered .t{box-shadow:inset 3px 0 0 var(--v9-blue,#4f7dff);padding-left:8px}.rs-cv li.hovered:before{display:none}.rs-cv .dim,.rs-cv li.dim{opacity:.22;transition:opacity .25s}.rs-cv .ent.dim .hd{opacity:1}.rs-cv .ent.dim>.hd{opacity:.22}.rs-cv.hr .name,.rs-cv.hr h2{opacity:1}.rs-caret{display:inline-block;width:1.5px;height:14px;background:var(--v9-blue,#4f7dff);margin-left:3px;vertical-align:-2px;animation:rs-blink 1s steps(2) infinite}@keyframes rs-blink{to{opacity:0}}@media (max-width:1080px){.rs-hide-m{display:none!important}}@media (max-width:720px){.rs-top{padding:0 8px 0 4px;gap:6px}.rs-top-t p{display:none}.rs-hide-s{display:none!important}.rs-slices{padding:0 16px;gap:2px 16px}.rs-slices .diff{flex-basis:100%;margin:0 0 8px}.rs-cv{padding:28px 20px 40px;box-shadow:3px 3px 0 var(--v9-ink)}.rs-cv .name{flex-direction:column;align-items:flex-start;gap:4px}.rs-cv .name .want{text-align:left}.rs-cv .ent .hd{flex-wrap:wrap}.rs-cv li .tag{display:none}}.rs-jd{color:var(--v9-ink-2);font-size:14px;line-height:1.65}.rs-jd .h{margin-bottom:4px;padding-bottom:10px;border-bottom:1.5px solid var(--v9-ink);color:var(--v9-ink);font-size:15px;font-weight:800}.rs-jd .req{display:grid;grid-template-columns:30px minmax(0,1fr);gap:8px;padding:10px 8px 10px 6px;margin:0 -8px 0 -6px;border-bottom:1px solid var(--v9-line);border-radius:12px;cursor:default;transition:background-color .2s}.rs-jd .req .r{display:inline-grid;place-items:center;height:20px;margin-top:2px;border-radius:99px;background:var(--v9-blue-soft);color:var(--v9-blue-deep);font-size:11.5px;font-weight:800}.rs-jd .req .hit{margin-top:2px;color:var(--v9-ok-deep);font-size:12.5px;font-weight:700}.rs-jd .req.miss .r{background:var(--v9-wash);color:var(--v9-ink-3)}.rs-jd .req.miss .hit{color:var(--v9-ink-3);font-weight:600}.rs-jd .req.on{background:var(--v9-surface);box-shadow:0 0 0 1.5px var(--v9-ink);border-bottom-color:transparent}.rs-jd .empty{color:var(--v9-ink-3);font-size:13.5px}.rs-mark[data-kind=req]{color:var(--v9-blue-deep);border-radius:6px}.rs-wire{position:absolute;left:0;top:0;z-index:3;overflow:visible;pointer-events:none}@media (max-width:1180px){.rs-wire{display:none}}.rs-landing{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,560px);gap:56px;align-items:center;width:min(1120px,100%);margin:0 auto;padding:48px 32px 80px;outline:none}.rs-landing-kicker{margin:0 0 14px;color:var(--v9-ink-3);font-size:14px;font-weight:600}.rs-landing h2{margin:0;font-size:44px;font-weight:800;line-height:1.28;letter-spacing:-.01em}.rs-landing-sub{max-width:500px;margin:18px 0 0;color:var(--v9-ink-2);font-size:17px;line-height:1.8}.rs-landing-steps{display:grid;gap:12px;max-width:500px;margin:26px 0 0;padding:0;list-style:none}.rs-landing-steps li{display:grid;grid-template-columns:26px minmax(0,1fr);gap:10px;font-size:15.5px;font-weight:600;line-height:1.7}.rs-landing-steps b{display:grid;place-items:center;width:26px;height:26px;border:1.5px solid var(--v9-ink);border-radius:99px;font-size:13px;font-weight:800;line-height:1}.rs-landing .alt{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:30px}.rs-landing .why{margin:16px 0 0;color:var(--v9-ink-3);font-size:13px;line-height:1.7}.rs-landing-board{padding:28px;border-radius:26px;background-color:var(--v9-sunken);background-image:radial-gradient(var(--v9-dots) 1.1px,transparent 1.3px);background-size:22px 22px}.rs-landing .drop{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:560px;padding:40px;border:2px dashed var(--v9-ink-4);border-radius:6px;background:var(--v9-surface);text-align:center;cursor:pointer;transform:rotate(-.6deg);transition:border-color .2s,transform .35s var(--v9-spring),box-shadow .2s}.rs-landing .drop.over,.rs-landing .drop:hover{border-style:solid;border-color:var(--v9-ink);transform:rotate(0deg) translate(-2px,-2px);box-shadow:5px 5px 0 var(--v9-ink)}.rs-landing .drop.over{background:#f7f9ff}.rs-landing .drop.busy{cursor:default;border-style:solid;border-color:var(--v9-ink);transform:none;box-shadow:5px 5px 0 var(--v9-ink)}.rs-landing .drop .ghost{position:absolute;inset:44px 48px auto;display:grid;gap:10px;opacity:.8;pointer-events:none}.rs-landing .drop .ghost i{display:block;height:8px;border-radius:4px;background:var(--v9-wash)}.rs-landing .drop .ghost i.h{width:38%;height:16px;background:var(--v9-line)}.rs-landing .t{margin-top:18px;font-size:21px;font-weight:800}.rs-landing .t.hand{color:var(--v9-blue-deep);font-family:var(--v9-hand);font-size:22px;font-weight:400}.rs-landing .s{max-width:34ch;margin-top:8px;color:var(--v9-ink-2);font-size:14.5px;line-height:1.75}.rs-landing .s .v9-kbd{margin:0 2px;vertical-align:1px}.rs-landing .err{margin-top:14px;padding:8px 12px;border-radius:10px;background:var(--v9-bad-soft);color:var(--v9-bad-deep);font-size:14px;font-weight:700}@media (max-width:960px){.rs-landing{grid-template-columns:1fr;gap:28px;padding:22px 18px 56px}.rs-landing h2{font-size:30px}.rs-landing-sub{font-size:15.5px}.rs-landing-board{padding:16px;border-radius:20px}.rs-landing .drop{min-height:380px;padding:28px 20px}.rs-landing .drop .ghost{inset:28px 24px auto}}.rs-site{min-height:100vh;background:var(--v9-page);color:var(--v9-ink)}.rs-site .body{width:min(680px,calc(100% - 40px));margin:0 auto;padding:80px 0 64px}.rs-site .hero{animation:rs-rise .7s var(--v9-ease) both}.rs-site .mono-mark{display:grid;place-items:center;border:2px solid var(--v9-ink);border-radius:99px;background:var(--v9-sun-soft);color:var(--v9-ink);font-size:22px;font-weight:800}.rs-site .avatar,.rs-site .mono-mark{width:56px;height:56px;margin-bottom:22px}.rs-site .avatar{display:block;border:2px solid var(--v9-ink);border-radius:50%;-o-object-fit:cover;object-fit:cover}.rs-site .hero h1{margin:0;font-size:46px;font-weight:800;line-height:1.15;letter-spacing:-.01em}.rs-site .hero .line{margin:14px 0 0;color:var(--v9-ink-2);font-size:20px;font-weight:600;line-height:1.6}.rs-site .hero .status{display:inline-flex;align-items:center;gap:8px;margin:18px 0 0;padding:5px 12px 5px 10px;border-radius:999px;background:var(--v9-ok-soft);color:var(--v9-ok-deep);font-size:14px;font-weight:700}.rs-site .hero .status i{width:7px;height:7px;border-radius:50%;background:var(--v9-ok)}.rs-site .hero .about{max-width:58ch;margin:16px 0 0;color:var(--v9-ink-2);font-size:15.5px;line-height:1.8}.rs-site .links{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.rs-site .sec{margin-top:56px;animation:rs-rise .7s var(--v9-ease) .12s both}.rs-site .sec+.sec{animation-delay:.2s}.rs-site .sec h2{margin:0;padding-bottom:8px;border-bottom:1.5px solid var(--v9-ink);font-size:17px;font-weight:800}.rs-site .row{display:grid;grid-template-columns:132px minmax(0,1fr);gap:24px;padding:18px 0;border-bottom:1px solid var(--v9-line-2)}.rs-site .row:last-child{border-bottom:0}.rs-site .row .when{padding-top:3px;color:var(--v9-ink-3);font-size:13px;font-weight:500;font-variant-numeric:tabular-nums}.rs-site .row h3{margin:0;font-size:16px;font-weight:800;line-height:1.5}.rs-site .row h3 .role{color:var(--v9-ink-3);font-weight:600}.rs-site .row .sub{margin-top:2px;color:var(--v9-ink-3);font-size:13.5px}.rs-site .row .lk{display:inline-block;margin-top:8px;font-size:13.5px}.rs-site .row ul{margin:8px 0 0;padding:0;list-style:none}.rs-site .row li{position:relative;margin:3px 0;padding-left:16px;color:var(--v9-ink-2);font-size:15px;line-height:1.75}.rs-site .row li:before{content:"";position:absolute;left:0;top:.8em;width:7px;height:7px;border:1.5px solid var(--v9-ink-3);border-radius:50%}.rs-site .row li b,.rs-site .row li strong{color:var(--v9-ink);font-weight:700}.rs-site .skills div{color:var(--v9-ink-2);font-size:15px;line-height:1.9}.rs-site .skills .k{display:inline-block;min-width:72px;margin-right:12px;font-size:13px}.rs-site .foot,.rs-site .skills .k{color:var(--v9-ink-3);font-weight:500}.rs-site .foot{display:flex;align-items:center;gap:8px;margin-top:72px;padding-top:16px;border-top:1px solid var(--v9-line-2);font-size:12.5px}.rs-site-off{display:grid;justify-items:start;gap:10px;padding-top:120px}.rs-site-off h1{margin:12px 0 0;font-size:30px;font-weight:800}.rs-site-off p{margin:0;color:var(--v9-ink-2);font-size:16px;line-height:1.8}@keyframes rs-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.rs-site .hero,.rs-site .sec{animation:none}}@media (max-width:640px){.rs-site .body{padding-top:44px}.rs-site .hero h1{font-size:34px}.rs-site .hero .line{font-size:17px}.rs-site .row{grid-template-columns:1fr;gap:4px;padding:14px 0}.rs-site .row .when{padding-top:0}.rs-site .sec{margin-top:42px}.rs-site-off{padding-top:64px}}@media print{.rs-site .foot,.rs-site .links{display:none}.rs-site .hero,.rs-site .sec{animation:none}}.rs-cv .head{display:block}.rs-cv .contact .ci{display:inline-flex;align-items:center;gap:5px}.rs-cv .contact .ci-ic{width:11px;height:11px;flex:none;opacity:.8}.rs-cv .skills .g{display:contents}.rs-cv ul.own.cols2{-moz-columns:2;column-count:2;-moz-column-gap:22px;column-gap:22px}.rs-cv ul.own.cols2 li{-moz-column-break-inside:avoid;break-inside:avoid}.rs-cv .skills.cols2{grid-template-columns:1fr 1fr;-moz-column-gap:22px;column-gap:22px;row-gap:3px}.rs-cv .skills.cols2 .g{display:block}.rs-cv .skills.cols2 .g b{margin-right:6px}.rs-cv[data-theme=qing]{--t-ink:#1a2233;--t-dim:#4b5563;--t-faint:#6b7280;--t-accent:#1f4e9c;--t-rule:#c9d3e6;color:var(--t-ink)}.rs-cv[data-theme=qing] .head{display:grid;grid-template-columns:1fr auto;grid-template-areas:"name contact" "mark mark";align-items:end;-moz-column-gap:24px;column-gap:24px}.rs-cv[data-theme=qing] .name{grid-area:name;display:block}.rs-cv[data-theme=qing] .name h1{font-family:inherit;font-weight:700;font-size:30px;letter-spacing:.01em}.rs-cv[data-theme=qing] .name .want{display:block;text-align:left;padding:6px 0 0;font-size:12.5px;font-weight:500;color:var(--t-accent)}.rs-cv[data-theme=qing] .contact{grid-area:contact;flex-direction:column;align-items:flex-end;gap:3px;color:var(--t-dim);font-size:11.5px}.rs-cv[data-theme=qing] .contact>*+:before{content:none;margin:0}.rs-cv[data-theme=qing] .mark{grid-area:mark;width:100%;border-top:1.5px solid var(--t-accent);margin:12px 0 0}.rs-cv[data-theme=qing] h2{color:var(--t-accent);font-size:13px;letter-spacing:.05em;border-bottom:1px solid var(--t-rule);padding-bottom:3px;margin-top:16px}.rs-cv[data-theme=qing] .ent .hd .role:before{content:"|";color:var(--t-rule);margin-right:8px}.rs-cv[data-theme=qing] .ent .hd .dt{font-family:inherit;font-size:11px;color:var(--t-faint)}.rs-cv[data-theme=qing] .ent .meta,.rs-cv[data-theme=qing] .ent .stack{color:var(--t-faint)}.rs-cv[data-theme=qing] li:before{content:"";width:4px;height:4px;background:var(--t-accent);top:.58em;left:-12px}.rs-cv[data-theme=qing] li.asking:before,.rs-cv[data-theme=qing] li.hovered:before{display:none}.rs-cv[data-theme=qing] .skills b{color:var(--t-ink);font-weight:600;font-size:13px}.rs-cv[data-theme=kan]{--t-ink:#1b1b1b;--t-dim:#4a4a4a;--t-faint:#7a7a7a;--t-accent:#8c3b2e;--t-rule:#b8b8b8;--kan-gut:84px;--kan-gap:12px;color:var(--t-ink);font-family:var(--rs-serif-cjk);letter-spacing:0}.rs-cv[data-theme=kan] .head{display:flex;flex-direction:column;align-items:center;text-align:center}.rs-cv[data-theme=kan] .name{flex-direction:column;align-items:center;gap:4px}.rs-cv[data-theme=kan] .name h1{font-size:27px;letter-spacing:.14em;font-weight:700}.rs-cv[data-theme=kan] .name .want{text-align:center;padding:0;color:var(--t-dim);letter-spacing:.03em}.rs-cv[data-theme=kan] .contact{order:2;justify-content:center;margin-top:3px;color:var(--t-faint);font-family:var(--rs-serif-cjk)}.rs-cv[data-theme=kan] .mark{order:3;width:100%;border-top:1.5px solid var(--t-ink);margin:9px 0 4px;position:relative}.rs-cv[data-theme=kan] .mark:after{content:"";position:absolute;left:0;right:0;top:1.5px;border-top:.5px solid var(--t-ink)}.rs-cv[data-theme=kan] h2{font-family:var(--rs-serif-cjk);color:var(--t-accent);font-size:12.5px;letter-spacing:.2em;border-bottom:.5px solid var(--t-rule);padding:0 0 4px calc(var(--kan-gut) + var(--kan-gap));margin-top:18px}.rs-cv[data-theme=kan] .ent.gutter{display:grid;grid-template-columns:var(--kan-gut) 1fr;-moz-column-gap:var(--kan-gap);column-gap:var(--kan-gap);margin-top:7px}.rs-cv[data-theme=kan] .ent.gutter .dt{text-align:right;font-family:var(--rs-serif-cjk);font-size:11px;color:var(--t-faint);padding-top:3px;white-space:nowrap;font-variant-numeric:tabular-nums}.rs-cv[data-theme=kan] .ent.gutter .hd{display:block}.rs-cv[data-theme=kan] .ent .hd .role{color:var(--t-dim)}.rs-cv[data-theme=kan] .ent .meta,.rs-cv[data-theme=kan] .ent .stack{color:var(--t-faint)}.rs-cv[data-theme=kan] .skills,.rs-cv[data-theme=kan] ul.own{margin-left:calc(var(--kan-gut) + var(--kan-gap))}.rs-cv[data-theme=kan] .skills{margin-left:0;grid-template-columns:var(--kan-gut) 1fr;-moz-column-gap:var(--kan-gap);column-gap:var(--kan-gap)}.rs-cv[data-theme=kan] .skills b{text-align:right;color:var(--t-faint);font-family:var(--rs-serif-cjk);font-weight:400;font-size:11.5px;padding-top:2px}.rs-cv[data-theme=kan] li:before{content:"–";color:var(--t-faint);font-size:12px;left:-13px}.rs-cv[data-theme=kan] li b{font-weight:700}.rs-cv[data-theme=kan] .ent.hovered>.body>.hd{background:rgba(226,234,255,.7);border-radius:4px}@media (max-width:720px){.rs-cv[data-theme=qing] .head{grid-template-columns:1fr;grid-template-areas:"name" "contact" "mark"}.rs-cv[data-theme=qing] .contact{align-items:flex-start;margin-top:8px}.rs-cv[data-theme=kan]{--kan-gut:64px;--kan-gap:10px}.rs-cv ul.own.cols2{-moz-columns:1;column-count:1}.rs-cv .skills.cols2{grid-template-columns:1fr}}.rs-menu.rs-themes{min-width:310px}.rs-themes button{display:grid;grid-template-columns:30px 1fr;gap:12px;align-items:center}.rs-themes button.on{background:var(--v9-blue-soft)}.rs-themes button b{font-weight:800}.rs-themes .sw{position:relative;display:block;width:30px;height:40px;border:1.5px solid var(--v9-ink);border-radius:3px;background:#fff}.rs-themes .sw:after,.rs-themes .sw:before{content:"";position:absolute}.rs-themes .sw-su:before{left:5px;top:6px;width:11px;height:2.5px;background:#141414}.rs-themes .sw-su:after{left:5px;top:11px;width:6px;height:1.5px;background:#2f6b55}.rs-themes .sw-qing:before{left:5px;top:6px;width:12px;height:2.5px;background:#1a2233}.rs-themes .sw-qing:after{left:5px;right:5px;top:12px;height:1.5px;background:#1f4e9c}.rs-themes .sw-kan:before{left:9px;right:9px;top:6px;height:2.5px;background:#1b1b1b}.rs-themes .sw-kan:after{left:5px;right:5px;top:12px;height:3px;border-top:1px solid #1b1b1b;border-bottom:.5px solid #1b1b1b}@media print{body,html{background:#fff!important}.rs{background:#fff;min-height:0}.rs-cv li .tag,.rs-cv li.old,.rs-dim,.rs-jd,.rs-listen,.rs-margin,.rs-mark,.rs-sheetbar,.rs-slices,.rs-top,.rs-wire,.rs-zhupi{display:none!important}.rs-sheet{background:none!important}.rs-cv{border-radius:0}.rs-cv .dim,.rs-cv li.dim{opacity:1!important}.rs-cv li.hovered .t{box-shadow:none;padding-left:6px;background:none}.rs-sheet{display:block;padding:0}.rs-paperwrap{max-width:none}.rs-cv{border:0;box-shadow:none;padding:0;min-height:0;color:#111;font-size:10.5pt}.rs-cv:after{display:none}.rs-cv .name h1{font-size:22pt}.rs-cv .ent .hd,.rs-cv .skills,.rs-cv li{font-size:10.5pt}.rs-cv .contact,.rs-cv .ent .meta,.rs-cv .ent .stack,.rs-cv .name .want{font-size:9.6pt}.rs-cv .ent .hd .dt{font-size:8.8pt}.rs-cv h2{font-size:10.5pt;margin:9pt 0 3pt}.rs-cv li{line-height:1.4;margin:1.5pt 0}@page{size:A4;margin:13.5mm 16mm}.rs-cv .mark{border-top-color:#111}.rs-cv h2{color:#333;border-bottom-color:#bbb}.rs-cv li:before{color:#111}.rs-cv .contact .fill+:before{content:none;margin:0}.rs-cv li.fresh{background:none;margin-left:0;padding-left:0}.rs-cv li.asking .t{box-shadow:none;padding-left:6px}.rs-cv li.asking:before{display:block}.rs-cv li.weak{color:#111}.rs-cv .contact,.rs-cv .ent .hd .dt,.rs-cv .ent .meta,.rs-cv .ent .stack,.rs-cv .name .want,.rs-cv li.weak{color:#333}.rs-cv .contact .fill{display:none}.rs-cv li .t:hover{background:none}}.rs-menu .rs-show-m{display:none}@media (max-width:1080px){.rs-menu .rs-show-m{display:block}}