:root{--bg: #ffffff;--fg: #1a1a1a;--fg-secondary: #6b6b6b;--fg-tertiary: #9ca3af;--border: #e5e5e5;--accent: #1a1a1a;--selection: #e5e5e5;--max-width: 680px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Fira Code", "Fira Mono", "Roboto Mono", monospace;--font-size: 16px;--line-height: 1.7}@media(prefers-color-scheme:dark){:root{--bg: #1a1a1a;--fg: #e5e5e5;--fg-secondary: #9ca3af;--fg-tertiary: #6b6b6b;--border: #333333;--accent: #e5e5e5;--selection: #333333}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:var(--font-size);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);line-height:var(--line-height);color:var(--fg);background-color:var(--bg);padding:0 24px}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.3;margin-top:2em;margin-bottom:.5em;letter-spacing:-.02em}h1{font-size:2em}h2{font-size:1.5em}h3{font-size:1.25em}h4{font-size:1.1em}p{margin-bottom:1.25em}a{color:var(--fg);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;transition:opacity .15s ease}a:hover{opacity:.6}strong,b{font-weight:700}em,i{font-style:italic}code{font-family:var(--font-mono);font-size:.875em;padding:.2em .4em;background-color:var(--selection);border-radius:3px}pre{margin:1.5em 0;padding:1em;overflow-x:auto;font-size:.875em;line-height:1.5;border:1px solid var(--border);border-radius:6px;background-color:#fafafa}@media(prefers-color-scheme:dark){pre{background-color:#111}}pre code{padding:0;background:none;border-radius:0}blockquote{margin:1.5em 0;padding-left:1em;border-left:3px solid var(--border);color:var(--fg-secondary)}blockquote p{margin-bottom:.5em}ul,ol{margin:1em 0;padding-left:1.5em}li{margin-bottom:.25em}img{max-width:100%;height:auto;border-radius:4px;margin:1.5em 0}hr{border:none;border-top:1px solid var(--border);margin:2em 0}::selection{background-color:var(--selection)}.container{max-width:var(--max-width);margin:0 auto;padding:0}header.site-header{padding:2em 0 1.5em;border-bottom:1px solid var(--border);margin-bottom:3em}header.site-header .container{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:.5em}.site-title{font-size:1.4em;font-weight:700;letter-spacing:-.03em}.site-title a{text-decoration:none;color:var(--fg)}.site-title a:hover{opacity:.6}.site-nav{display:flex;gap:1.5em}.site-nav a{text-decoration:none;font-size:.9em;color:var(--fg-secondary)}.site-nav a:hover{color:var(--fg);opacity:1}.post-list{list-style:none;padding:0}.post-list li{margin-bottom:2.5em}.post-list .post-title{font-size:1.15em;font-weight:600;margin:0 0 .25em;letter-spacing:-.01em}.post-list .post-title a{text-decoration:none;color:var(--fg)}.post-list .post-title a:hover{opacity:.6}.post-list .post-meta{font-size:.85em;color:var(--fg-tertiary);margin-bottom:.4em}.post-list .post-excerpt{font-size:.9em;color:var(--fg-secondary);line-height:1.5}.post-header{margin-bottom:2.5em}.post-header h1{font-size:1.8em;margin-top:0;margin-bottom:.3em}.post-header .post-meta{font-size:.85em;color:var(--fg-tertiary)}.post-content{line-height:var(--line-height)}.post-content h2{margin-top:2.5em;padding-bottom:.3em;border-bottom:1px solid var(--border)}.post-content h3{margin-top:2em}.post-content ul,.post-content ol{margin:1em 0}.post-content li{margin-bottom:.3em}.site-footer{margin-top:4em;padding:2em 0;border-top:1px solid var(--border);text-align:center;font-size:.85em;color:var(--fg-tertiary)}.page-header{margin-bottom:2em}.page-header h1{font-size:1.8em;margin-top:0;margin-bottom:.3em}.error-page{text-align:center;padding:4em 0}.error-page h1{font-size:3em;margin-bottom:.5em}.resume-section{margin-bottom:2em}.resume-section h2{font-size:1.3em;margin-top:0;margin-bottom:1em;padding-bottom:.3em;border-bottom:2px solid var(--fg)}.resume-job{margin-bottom:1.5em}.resume-job h3{font-size:1.1em;margin:0 0 .15em}.resume-job .meta{font-size:.85em;color:var(--fg-secondary);margin-bottom:.5em}.resume-job ul{margin:.5em 0;padding-left:1.2em}.resume-job li{font-size:.9em;margin-bottom:.2em;color:var(--fg-secondary)}.resume-contact{font-size:.9em;color:var(--fg-secondary);margin-bottom:.5em}.tags{display:flex;flex-wrap:wrap;gap:.5em;margin:1em 0}.tag{font-size:.8em;padding:.2em .6em;border:1px solid var(--border);border-radius:3px;color:var(--fg-secondary);text-decoration:none}.tag:hover{border-color:var(--fg);color:var(--fg);opacity:1}.text-center{text-align:center}@media(max-width:480px){:root{--font-size: 15px}body{padding:0 16px}header.site-header .container{flex-direction:column;align-items:flex-start}.post-header h1{font-size:1.5em}h1{font-size:1.7em}}
