:root{--x-color-primary-600:#0969da}body{background:#ffffff}.site-logo{color:#24292f;font-size:14px;font-weight:600}.nextra-search,.nextra-toc{display:none}.site-footer-hidden,footer:has(.site-footer-hidden){display:none}.nextra-content{font-size:15px}.nextra-content h1{letter-spacing:0}.asset-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:12px;gap:12px;margin:16px 0 24px}.asset-stack{display:grid;grid-gap:18px;gap:18px;margin:16px 0 28px;max-width:860px}.asset-tile{border:1px solid #d0d7de;border-radius:8px;overflow:hidden;background:#ffffff}.asset-wide{max-width:860px;width:100%}.asset-tile img,.asset-tile video{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;background:#f6f8fa}.asset-wide img,.asset-wide video,.bilibili-video{aspect-ratio:16/9}.asset-wide img{aspect-ratio:auto;height:auto;object-fit:contain}.asset-contain{max-width:680px;width:100%}.asset-contain img{display:block;width:100%}.asset-contain img,.asset-wide video{aspect-ratio:auto;height:auto;object-fit:contain}.asset-wide video{max-height:560px}.asset-wide video:fullscreen{height:100%;object-fit:cover;width:100%}.asset-wide video:-webkit-full-screen{height:100%;object-fit:cover;width:100%}.bilibili-video{background:#f6f8fa;border:0;display:block;width:100%}.asset-tile figcaption{border-top:1px solid #d0d7de;color:#57606a;font-size:13px;line-height:1.45;padding:8px 10px}.review-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin:16px 0 28px;max-width:980px}.review-tile{background:#ffffff;border:1px solid #d0d7de;border-radius:8px;overflow:hidden}.review-trigger{cursor:zoom-in;display:block;width:100%}.review-thumb{aspect-ratio:16/10;background:#f6f8fa;display:block;object-fit:contain;width:100%}.review-tile figcaption{border-top:1px solid #d0d7de;color:#57606a;font-size:13px;line-height:1.45;padding:8px 10px}.link-panel{border:1px solid #d0d7de;border-radius:8px;display:grid;grid-gap:8px;gap:8px;margin:16px 0 24px;max-width:860px;padding:10px 12px}.link-panel-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.link-panel-label{color:#24292f;font-size:13px;font-weight:600;min-width:64px}.link-panel a{color:#0969da;font-size:14px;text-decoration:none}.link-panel span{color:#57606a;font-size:14px}.link-panel code{background:#f6f8fa;border:1px solid #d0d7de;border-radius:6px;color:#24292f;font-size:13px;padding:2px 6px}.link-panel-qr{display:grid;flex:0 0 auto;grid-gap:6px;gap:6px;justify-items:center}.link-panel-qr img{border:1px solid #d0d7de;border-radius:8px;height:96px;width:96px}.link-panel-qr span{color:#57606a;font-size:12px}@media (max-width:720px){.project-link-card-qr{display:grid}}.project-links{display:grid;grid-gap:10px;gap:10px;margin:16px 0 24px;max-width:860px}.project-link-card{align-items:center;border:1px solid #d0d7de;border-radius:8px;display:flex;flex-wrap:wrap;gap:8px;padding:10px 12px}.project-link-card-qr{align-items:flex-start;display:flex;justify-content:space-between}.project-link-title{color:#24292f;font-size:14px;font-weight:600}.project-link-line{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.project-link-tag{background:#f6f8fa;border:1px solid #d0d7de;border-radius:999px;color:#57606a;font-size:12px;line-height:1;padding:4px 7px}.project-link-card a{color:#0969da;font-size:14px;text-decoration:none}.project-link-card span{color:#57606a;font-size:14px}.yarl__slide_image{max-height:min(82vh,820px)!important;max-width:min(86vw,1180px)!important}.file-row{align-items:center;border:1px solid #d0d7de;border-radius:8px;display:flex;gap:10px;justify-content:space-between;margin:12px 0 20px;padding:10px 12px}.file-row code{font-size:13px}.resume-html-preview{border:0;border-radius:0;display:block;margin:0 0 24px;max-width:860px;overflow:hidden;width:100%}@media (max-width:720px){.resume-html-preview{min-height:1320px}}.tag{background:#f6f8fa;border:1px solid #d0d7de;border-radius:999px;color:#57606a;font-size:12px;line-height:1;padding:5px 8px;white-space:nowrap}@media (max-width:720px){.file-row{align-items:flex-start;flex-direction:column}}