:root{--color-bg:#F5F5F5;--color-surface:#FFFFFF;--color-text:#1A1A1A;--color-text-secondary:#888888;--color-border:#EBEBEB;--font-main:'IBM Plex Sans', -apple-system, BlinkMacSystemFont, sans-serif}[data-theme=dark]{--color-bg:#1A1A1A;--color-surface:#262626;--color-text:#F5F5F5;--color-text-secondary:#888888;--color-border:#333333}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px}body{font-family:var(--font-main);background-color:var(--color-bg);color:var(--color-text);line-height:1.6;font-weight:400;min-height:100vh;display:flex;justify-content:center;align-items:flex-start;padding:60px 24px}.container{width:100%;max-width:640px;background:var(--color-surface);padding:clamp(40px,8vw,80px);box-shadow:0 1px 3px rgba(0,0,0,4%)}.logo{width:18px;height:18px;border:2px solid var(--color-text);border-radius:50%;margin-bottom:48px}.header{margin-bottom:64px}.name{font-size:1rem;font-weight:500;margin-bottom:2px;letter-spacing:-.01em}.role{font-size:1rem;color:var(--color-text-secondary);margin-bottom:24px}.bio{font-size:1rem;line-height:1.65;a { color: var(--color-text-secondary); text-decoration: none; } a:hover { color: var(--color-text); }}.section{margin-bottom:48px}.section:last-child{margin-bottom:0}.section-title{font-size:1rem;font-weight:500;margin-bottom:20px;letter-spacing:-.01em}.project-list{display:flex;flex-direction:column;gap:12px}.project-item{display:grid;grid-template-columns:100px 1fr;gap:10px;align-items:baseline;text-decoration:none;color:inherit;padding:4px 0;transition:opacity .2s ease}.project-item:hover{opacity:.6}.project-index{font-size:.9375rem;color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.project-name{font-size:.9375rem;font-weight:500}.links{display:flex;gap:24px;margin-top:48px;padding-top:48px;border-top:1px solid var(--color-border)}.links a{font-size:.9375rem;color:var(--color-text-secondary);text-decoration:none;transition:color .2s ease}.links a:hover{color:var(--color-text)}.post-header{margin-bottom:32px}.post-category{display:block;font-size:.9375rem;color:var(--color-text-secondary);margin-bottom:8px}.post-title{font-size:1.25rem;font-weight:500;margin-bottom:8px;letter-spacing:-.01em}.post-date{font-size:.9375rem;color:var(--color-text-secondary)}.post-content{font-size:1rem;line-height:1.7}.post-content h2,.post-content h3{font-weight:500;margin-top:2rem;margin-bottom:1rem}.post-content p{margin-bottom:1.25rem}.post-content a{color:var(--color-text-secondary);text-decoration:none}.post-content a:hover{color:var(--color-text)}.post-content ul,.post-content ol{margin-bottom:1.25rem;padding-left:1.5rem}.post-content li{margin-bottom:.5rem}.post-nav{margin-top:48px;padding-top:48px;border-top:1px solid var(--color-border)}.back-link{font-size:.9375rem;color:var(--color-text-secondary);text-decoration:none;transition:color .2s ease}.back-link:hover{color:var(--color-text)}.theme-toggle{position:absolute;top:clamp(40px,8vw,80px);right:clamp(40px,8vw,80px);background:0 0;border:none;cursor:pointer;padding:4px;color:var(--color-text-secondary);transition:color .2s ease}.theme-toggle:hover{color:var(--color-text)}.theme-toggle svg{display:block}.container{position:relative}@media(max-width:480px){body{padding:24px 16px}.container{padding:32px 24px}.project-item{grid-template-columns:1fr;gap:0}.project-index{margin-bottom:-1px}.theme-toggle{top:32px;right:24px}}