.heatmap[data-astro-cid-qdsh2lis]{width:100%;user-select:none}.heatmap-mobile[data-astro-cid-qdsh2lis]{display:none}.heatmap-grid[data-astro-cid-qdsh2lis]{display:flex;width:100%;gap:2px}.heatmap-week[data-astro-cid-qdsh2lis]{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}.heatmap-day[data-astro-cid-qdsh2lis]{width:100%;aspect-ratio:1;background-color:var(--bg-sunken)}.heatmap-day[data-astro-cid-qdsh2lis].level-1{background-color:color-mix(in srgb,var(--accent-color) 30%,var(--bg-sunken))}.heatmap-day[data-astro-cid-qdsh2lis].level-2{background-color:color-mix(in srgb,var(--accent-color) 50%,var(--bg-sunken))}.heatmap-day[data-astro-cid-qdsh2lis].level-3{background-color:color-mix(in srgb,var(--accent-color) 70%,var(--bg-sunken))}.heatmap-day[data-astro-cid-qdsh2lis].level-4{background-color:var(--accent-color)}@media(max-width:640px){.heatmap-desktop[data-astro-cid-qdsh2lis]{display:none}.heatmap-mobile[data-astro-cid-qdsh2lis]{display:block}.heatmap-grid[data-astro-cid-qdsh2lis],.heatmap-week[data-astro-cid-qdsh2lis]{gap:1px}}.intro[data-astro-cid-u43ozx4m]{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:2rem;padding-top:2rem}.intro-content[data-astro-cid-u43ozx4m]{display:flex;flex-direction:column;gap:1.4rem;min-width:0}.intro-title[data-astro-cid-u43ozx4m]{margin:0;color:var(--text-subtitle-color);font-size:var(--text-logo-fontsize);font-weight:var(--text-weight);font-family:"Noto serif SC",serif;line-height:1.3}.intro-description[data-astro-cid-u43ozx4m]{margin:0;color:var(--text-content-color);font-size:var(--text-content-fontsize);line-height:2}.intro-links[data-astro-cid-u43ozx4m]{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;margin:0;padding:0;list-style:none}.intro-links[data-astro-cid-u43ozx4m] a[data-astro-cid-u43ozx4m]{display:inline-flex;align-items:center;gap:.4rem;font-family:"Noto serif SC",serif;color:var(--text-description-color);font-size:13px;text-decoration:none}.intro-links[data-astro-cid-u43ozx4m] svg{width:16px;height:16px;flex-shrink:0}.intro-portrait[data-astro-cid-u43ozx4m]{--portrait-rotate: -4deg;box-sizing:border-box;flex:none;width:140px;height:140px;padding:8px;overflow:hidden;background-color:var(--bg-surface);transform:rotate(var(--portrait-rotate))}.intro-avatar[data-astro-cid-u43ozx4m]{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.intro-heatmap[data-astro-cid-u43ozx4m]{margin-top:1.4rem;padding-bottom:2rem;border-bottom:1px solid var(--line-divider-color)}@media(max-width:640px){.intro[data-astro-cid-u43ozx4m]{grid-template-columns:1fr;gap:1.25rem;padding-top:1.5rem}.intro-content[data-astro-cid-u43ozx4m]{gap:1.25rem}.intro-title[data-astro-cid-u43ozx4m]{font-size:28px}.intro-portrait[data-astro-cid-u43ozx4m]{display:none}.intro-heatmap[data-astro-cid-u43ozx4m]{margin-top:1.25rem;padding-bottom:2rem}}.recent[data-astro-cid-exmsxoax]{padding:32px 0}.recent-heading[data-astro-cid-exmsxoax]{margin:0 0 4px;color:var(--text-content-color);font-size:var(--text-content-fontsize);font-weight:var(--text-weight)}.recent-list[data-astro-cid-exmsxoax]{margin:0;padding:0;list-style:none}.recent-item[data-astro-cid-exmsxoax]{display:flex;flex-direction:column;gap:4px;padding:16px 0;border-bottom:1px dashed var(--line-divider-color)}.recent-published[data-astro-cid-exmsxoax]{color:var(--text-description-color);font-size:14px;font-variant-numeric:tabular-nums;line-height:1.6}.recent-body[data-astro-cid-exmsxoax]{display:flex;flex-direction:column;gap:4px;min-width:0}.recent-title[data-astro-cid-exmsxoax]{color:var(--text-title-color);font-weight:var(--text-weight);font-size:18px;line-height:1.6;overflow-wrap:anywhere;text-decoration:none}.recent-description[data-astro-cid-exmsxoax]{display:-webkit-box;overflow:hidden;margin:0;color:var(--text-description-color);font-size:13px;line-height:1.6;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}.recent-more[data-astro-cid-exmsxoax]{display:inline-block;margin-top:16px;color:var(--text-content-color);font-size:var(--text-description-fontsize);text-decoration:none}
