@font-face{font-family:Monaspace Argon;src:url(/fonts/MonaspaceArgon-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Monaspace Argon;src:url(/fonts/MonaspaceArgon-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{color-scheme:light;--cv-background: #f7f3ea;--cv-foreground: #243848;--cv-accent: #007fa8;--cv-muted: color-mix(in srgb, var(--cv-foreground) 62%, transparent);--cv-faint: color-mix(in srgb, var(--cv-foreground) 20%, transparent);--cv-panel: color-mix(in srgb, var(--cv-accent) 5%, transparent);--cv-panel-strong: color-mix(in srgb, var(--cv-accent) 8%, transparent)}*,*:before,*:after{box-sizing:border-box}html{min-width:320px;background:var(--cv-background)}body{min-height:100vh;margin:0;background:var(--cv-background);color:var(--cv-foreground);font-family:Monaspace Argon,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:16px;line-height:1.65;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}a{color:var(--cv-accent);text-decoration-color:color-mix(in srgb,var(--cv-accent) 50%,transparent);text-underline-offset:.22em;overflow-wrap:anywhere;transition:color .16s ease,text-decoration-color .16s ease}a:hover{color:color-mix(in srgb,var(--cv-accent) 78%,var(--cv-foreground));text-decoration-color:currentColor}a:focus-visible{outline:2px solid var(--cv-accent);outline-offset:3px}::selection{background:var(--cv-accent);color:var(--cv-background)}.cv{width:min(100% - 64px,59rem);margin:0 auto;padding:86px 0 104px}.cv-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(16rem,.65fr);align-items:end;gap:90px}.identity{padding-left:3px;transform:translateY(2px)}.english-name,.contact,.period,.tags,.project-link{font-family:Monaspace Argon,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}.identity h1{max-width:9.5ch;margin:0;color:var(--cv-accent);font-size:clamp(2.7rem,7vw,3.3rem);font-weight:700;letter-spacing:0;line-height:1.02;transform:translate(-3px)}.english-name{margin:10px 0 0;color:var(--cv-foreground);font-size:1.25rem;font-weight:700;letter-spacing:.025em}.contact{display:grid;gap:5px;margin:0;color:var(--cv-muted);font-size:.95rem;font-style:normal}.contact-row{display:grid;grid-template-columns:5.1rem minmax(0,1fr);gap:17px}.contact-label{color:color-mix(in srgb,var(--cv-muted) 70%,transparent);text-align:right}.contact a{width:fit-content;max-width:100%}.header-rule{height:1px;margin:24px 0 40px;background:linear-gradient(90deg,var(--cv-accent),var(--cv-faint) 38%,transparent)}.cv-section{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:36px;align-items:start}.cv-section+.cv-section{margin-top:38px}.cv-section>h2{display:flex;justify-content:flex-end;gap:.55em;margin:2px 0 0;color:var(--cv-accent);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:1.05rem;font-weight:700;letter-spacing:.055em;line-height:1.45;text-align:right}.section-content{min-width:0}.profile-copy p{max-width:44rem;margin:0;font-size:1.06rem}.profile-copy p+p{margin-top:12px}.entry-list{display:grid;gap:18px}.entry{min-width:0}.entry+.entry{padding-top:16px;border-top:1px dashed var(--cv-faint)}.entry-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:baseline}.entry h3,.skill-group h3{margin:0;color:var(--cv-foreground);font-size:1.21rem;font-weight:700;line-height:1.45}.period{margin:0;color:var(--cv-muted);font-size:.76rem;line-height:1.5;white-space:nowrap}.entry-subtitle{margin:4px 0 0;color:var(--cv-muted);font-size:.97rem}.entry-copy{margin:10px 0 0}.description-panel{margin:13px 0 0;padding:1em 1em 1em 1.5em;background:color-mix(in srgb,var(--cv-accent) 8%,transparent);border-left:4px solid var(--cv-accent);color:color-mix(in srgb,var(--cv-foreground) 86%,transparent);font-size:.92rem}.highlights{display:grid;gap:6px;margin:13px 0 0;padding:0;list-style:none;font-size:.92rem}.highlights li{position:relative;padding-left:1.2rem}.highlights li:before{position:absolute;top:0;left:0;color:var(--cv-accent);content:"—"}.entry-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;margin-top:14px}.tags{display:flex;flex-wrap:wrap;gap:12px;margin:0;padding:0;list-style:none}.tags li{padding:2px 9px;color:var(--cv-muted);background:var(--cv-panel-strong);border:1px solid var(--cv-faint);font-size:.75rem;line-height:1.6}.tags li:before,.tags li:after{color:var(--cv-accent)}.tags li:before{content:"[";margin-right:.18em}.tags li:after{content:"]";margin-left:.18em}.project-link{font-size:.76rem;white-space:nowrap}.skill-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 36px}.skill-group h3{margin-bottom:10px;color:var(--cv-muted);font-size:.86rem}.cv-updated{margin:48px 0 0;padding-top:16px;border-top:1px dashed var(--cv-faint);color:var(--cv-muted);font-family:Monaspace Argon,system-ui,sans-serif;font-size:.72rem;letter-spacing:.025em;text-align:right}@media (max-width: 700px){.cv{width:min(100% - 50px,59rem);padding-top:32px}.identity{padding-left:0;transform:translateY(0)}.identity h1{max-width:10ch;transform:translate(-2px)}.cv-header{grid-template-columns:1fr;gap:20px}.contact-label{text-align:left}.contact-row{grid-template-columns:4.9rem minmax(0,1fr);gap:12px}.header-rule{margin:23px 0 40px}.cv-section{grid-template-columns:1fr;gap:20px}.cv-section+.cv-section{margin-top:38px}.cv-section>h2{justify-content:flex-start;width:min(100%,16rem);margin-top:-7px;padding-bottom:8px;border-bottom:1px solid color-mix(in srgb,var(--cv-foreground) 16%,transparent);text-align:left}.profile-copy p{max-width:40rem}.entry-heading{gap:5px}}@media (max-width: 480px){body{font-size:16.5px;line-height:1.61}.cv{padding-bottom:56px}.identity h1{font-size:2.9rem;line-height:1.05;letter-spacing:0}.english-name{font-size:1.1rem}.contact{font-size:.9rem}.cv-section>h2{font-size:1.1rem}.profile-copy p{font-size:1rem}.entry h3,.skill-group h3{font-size:1.1rem}.entry-subtitle{font-size:1rem}.period{font-size:.9rem}.description-panel,.highlights{font-size:1rem}.tags li{font-size:.8rem}.entry-heading{grid-template-columns:1fr}.period{white-space:normal}.description-panel{padding:1em 1em 1em 1.5em;border-left-width:4px}.skill-groups{grid-template-columns:1fr;gap:22px}}@media (prefers-reduced-motion: reduce){a{transition:none}}
