:root{color-scheme:dark;--bg: #101412;--surface: #151a17;--surface-raised: #1b221e;--ink: #e7ece7;--muted: #a0ada3;--faint: #7f9185;--accent: #9cdbab;--accent-soft: #9cdbab0c;--amber: #dfc18c;--border: #2c3730;--button-ink: #14241a;--shadow: 0 24px 65px #00000030;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-synthesis:none}:root[data-theme=light]{color-scheme:light;--bg: #ffffff;--surface: #ffffff;--surface-raised: #f6f8fa;--ink: #1f2328;--muted: #59636e;--faint: #636c76;--accent: #1a7f37;--accent-soft: #1a7f370a;--amber: #7d4e00;--border: #d1d9e0;--button-ink: #ffffff;--shadow: 0 1px 3px #1f23280a, 0 8px 24px #1f23280a}:root[data-theme=light] body:before{display:none}:root[data-theme=light] .window-bar{background:var(--surface-raised);border-radius:7px 7px 0 0}:root[data-theme=light] .terminal-intro{background:var(--surface-raised);border-radius:4px 4px 0 0}:root[data-theme=light] .profile-fields dt{color:var(--ink)}:root[data-theme=light] .profile-fields dd:not(.amber){color:#0550ae}:root[data-theme=light] .stack-tags span{background:var(--surface-raised)}:root[data-theme=light] .button:not(.button-primary){background:var(--surface-raised)}:root[data-theme=light] .button-primary:hover{background:#166c2e;border-color:#166c2e}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-size:14px;line-height:1.7;-webkit-font-smoothing:antialiased}body:before{content:"";position:absolute;z-index:-1;inset:0 0 auto;height:680px;background:radial-gradient(ellipse at 75% 25%,var(--accent-soft),transparent 65%);pointer-events:none}::selection{background:var(--accent);color:var(--bg)}a{color:inherit;text-underline-offset:5px}a,button{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:default}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:5px}[hidden]{display:none!important}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:500;line-height:1.3}h1{font-size:clamp(2.1rem,4.4vw,3.5rem);letter-spacing:-.07em}h2{font-size:1.5rem;letter-spacing:-.045em}.accent{color:var(--accent)}.muted{color:var(--muted)}.amber{color:var(--amber)}.site-shell{width:min(1120px,calc(100% - 96px));margin-inline:auto;min-height:100svh;display:flex;flex-direction:column}.site-header{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--border)}.wordmark{font-size:18px;font-weight:600;text-decoration:none;white-space:nowrap;letter-spacing:-.06em}.wordmark>span:first-child{color:var(--accent);margin-right:8px}.header-controls,.nav{display:flex;align-items:center}.header-controls{gap:24px}.nav{gap:8px;font-size:13px}.nav a{text-decoration:none;color:var(--muted);padding:9px 12px;border-radius:4px}.nav a:hover,.nav a[aria-current]{color:var(--accent);background:var(--surface-raised)}.theme-toggle{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--border);border-radius:5px;color:var(--muted);background:transparent}.theme-toggle:hover{color:var(--accent);border-color:var(--accent)}.theme-toggle svg{width:18px;height:18px}.moon-icon,[data-theme=light] .sun-icon{display:none}[data-theme=light] .moon-icon{display:block}main{flex:1}.hero{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:56px;padding-block:64px}.command-label{display:flex;gap:12px;align-items:baseline;font-size:13px;color:var(--muted);margin-bottom:24px;overflow-wrap:anywhere}.prompt-symbol{color:var(--accent);font-weight:600}.hero h1{margin-bottom:20px;white-space:nowrap}.cursor{color:var(--accent);animation:blink 1.3s step-end infinite;font-weight:400}.hero-role{font-size:14px;line-height:1.9;margin-bottom:17px}.hero-role a{color:var(--accent);text-decoration-color:var(--border);white-space:nowrap}.hero-role a:hover{text-decoration-color:var(--accent)}.hero-description{color:var(--muted);line-height:1.95;max-width:450px;font-size:14px;margin-bottom:29px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button{padding:11px 16px;border:1px solid var(--border);border-radius:4px;display:inline-flex;align-items:center;justify-content:center;gap:20px;font-size:12px;font-weight:500;text-decoration:none;transition:transform .15s,border-color .15s}.button-primary{background:var(--accent);border-color:var(--accent);color:var(--button-ink)}.button:hover{transform:translateY(-2px);border-color:var(--accent)}.social-links{display:flex;flex-wrap:wrap;gap:16px;font-size:11px;margin-top:28px}.social-links a{color:var(--muted);text-decoration:none}.social-links a:hover{color:var(--accent)}.profile-terminal{min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow)}.window-bar{display:flex;align-items:center;justify-content:space-between;padding:13px 17px;border-bottom:1px solid var(--border);font-size:10px;color:var(--muted)}.window-dots{display:flex;gap:6px}.window-dots i{display:block;width:8px;height:8px;border-radius:50%;background:#d88075}.window-dots i:nth-child(2){background:#d5b576}.window-dots i:nth-child(3){background:#87b991}.profile-content{padding:24px;font-size:11px}.profile-content .command-label{font-size:12px;margin-bottom:20px;color:var(--ink)}.code-comment{font-size:11px;color:var(--faint);margin-bottom:14px}.profile-fields{margin:0;display:grid;gap:9px}.profile-fields div{display:flex;gap:9px;flex-wrap:wrap}.profile-fields dt{color:var(--muted)}.profile-fields dt:after{content:":"}.profile-fields dd{margin:0;color:var(--accent)}.profile-fields dd.amber{color:var(--amber)}.stack-comment{margin-top:24px}.stack-tags{display:flex;flex-wrap:wrap;gap:7px}.stack-tags span{font-size:10px;padding:3px 8px;border:1px solid var(--border);border-radius:3px;color:var(--muted)}.profile-bottom{display:flex;align-items:center;gap:12px;margin-top:23px}.block-cursor{width:7px;height:13px;background:var(--accent);opacity:.7}.window-status{display:flex;justify-content:space-between;border-top:1px solid var(--border);padding:6px 15px;font-size:9px;color:var(--muted);background:var(--surface-raised);border-radius:0 0 7px 7px}.writing-section{border-top:1px solid var(--border);padding-top:36px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px}.section-heading .command-label{margin-bottom:14px;font-size:11px}.section-heading h2{margin-bottom:0}.text-link{font-size:12px;color:var(--accent);text-decoration:none;white-space:nowrap}.text-link:hover{text-decoration:underline}.section-description{color:var(--muted);font-size:12px;margin:12px 0 25px}.post-list{padding:0;margin:0;list-style:none}.post-list li{border-bottom:1px solid var(--border)}.post-row{display:flex;align-items:center;gap:24px;padding:26px 12px;text-decoration:none;border-radius:4px;transition:background .15s}.post-row:hover{background:var(--accent-soft)}.post-number{color:var(--faint);font-size:11px;align-self:flex-start;padding-top:2px}.post-row-content{flex:1;min-width:0}.post-row-meta{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:10px;color:var(--muted)}.post-row-meta>span:first-child{color:var(--amber)}.post-row h3{font-size:16px;margin:10px 0 8px;letter-spacing:-.025em}.post-row p{font-size:12px;color:var(--muted);margin:0}.post-arrow{font-size:20px;color:var(--faint);transition:transform .15s}.post-row:hover h3,.post-row:hover .post-arrow{color:var(--accent)}.post-row:hover .post-arrow{transform:translate(2px,-2px)}.interactive-terminal{margin-top:40px;border:1px solid var(--border);background:var(--surface);border-radius:5px;font-size:11px}.terminal-intro{padding:15px 20px;border-bottom:1px solid var(--border);color:var(--muted)}.terminal-intro>span:first-child{margin-right:8px}.terminal-intro code{color:var(--ink);font:inherit}.terminal-form{display:flex;align-items:center;padding:12px 20px;gap:12px}.terminal-form label{white-space:nowrap}.terminal-user{color:var(--accent)}.terminal-form input{min-width:0;width:100%;border:0;color:var(--ink);background:transparent;padding:8px 0;border-radius:0;caret-color:var(--accent)}.terminal-form input::placeholder{color:var(--faint)}.terminal-form input:focus-visible{outline-offset:3px}.terminal-form button{border:1px solid var(--border);background:var(--surface-raised);color:var(--accent);border-radius:3px;min-width:36px;min-height:36px}.terminal-output{max-height:240px;overflow:auto;overflow-wrap:anywhere}.terminal-output>div{padding:12px 20px 0}.terminal-output p{white-space:pre-wrap;color:var(--muted);margin:6px 0}.terminal-echo{color:var(--accent)}.site-footer{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;color:var(--faint);font-size:10px;border-top:1px solid var(--border);margin-top:64px;padding:26px 0 32px}.site-footer>div{display:flex;gap:20px;margin-left:auto}.site-footer a{text-decoration:none}.site-footer a:hover{color:var(--accent)}.footer-signoff{width:100%}.content-page{max-width:840px;margin-inline:auto;padding-top:48px}.page-header{margin-bottom:40px}.page-header h1{margin-bottom:18px}.page-lede{color:var(--muted);font-size:14px}.prose,.body-text{color:var(--muted);font-size:14px;line-height:1.95;overflow-wrap:anywhere}.prose p,.body-text{margin-bottom:22px}.prose strong{color:var(--ink);font-weight:500}.prose a{color:var(--accent);text-decoration-color:var(--border)}.prose a:hover{text-decoration-color:var(--accent)}.about-section{margin-top:44px}.about-section h2{color:var(--ink);font-size:19px;margin-bottom:20px}.heading-hash{color:var(--accent);font-weight:400;margin-right:5px}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border);border-radius:5px;background:var(--surface);margin-top:28px}.skills-grid>div{padding:20px}.skills-grid>div+div{border-left:1px solid var(--border)}.skills-grid dt{color:var(--accent);font-size:11px;margin-bottom:12px}.skills-grid dd{font-size:12px;color:var(--muted);margin:0;line-height:1.9}.cert-list{list-style:none;padding:0;font-size:12px}.cert-list li{padding:14px 0 14px 23px;border-bottom:1px solid var(--border);position:relative}.cert-list li:before{content:"✓";color:var(--accent);position:absolute;left:0}.cert-list span{color:var(--muted);font-size:10px;display:inline-block;margin-left:8px}.contact-callout{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:28px;border:1px solid var(--border);background:var(--surface);border-radius:5px;margin-top:48px}.contact-callout h2{font-size:17px;margin:8px 0 0}.file-list-header{display:flex;justify-content:space-between;gap:16px;color:var(--faint);font-size:10px;border-bottom:1px solid var(--border);padding:12px}.end-of-list{color:var(--faint);font-size:11px;margin:28px 12px}.post{max-width:760px}.back-link{display:inline-block;color:var(--muted);text-decoration:none;font-size:12px;margin-bottom:35px}.back-link:hover{color:var(--accent)}.post-header{border-bottom:1px solid var(--border);padding-bottom:32px}.post-header h1{font-size:clamp(1.9rem,4vw,2.9rem);line-height:1.3;letter-spacing:-.05em}.post-header .post-row-meta{margin-top:22px}.post-body h2,.post-body h3{color:var(--ink);margin-top:38px;margin-bottom:18px;letter-spacing:-.035em}.post-body h2{font-size:21px}.post-body h3{font-size:18px}.post-body h2:before{content:"# ";color:var(--accent)}.post-body img{max-width:100%;height:auto;display:block;border:1px solid var(--border);border-radius:5px;margin:28px auto}.post-body ul,.post-body ol{padding-left:24px}.post-body li{padding-left:4px;margin-bottom:8px}.post-body li::marker{color:var(--accent)}.post-body code{font-family:inherit;font-size:.88em;background:var(--surface-raised);padding:3px 6px;border-radius:3px;color:var(--accent)}.post-body pre{padding:24px;border:1px solid var(--border);border-radius:5px;overflow-x:auto;font-size:12px;line-height:1.8}.post-body pre code{background:transparent;color:inherit;padding:0;font-size:inherit}:root[data-theme=dark] .astro-code,:root[data-theme=dark] .astro-code span{color:var(--shiki-dark)!important;background-color:var(--shiki-dark-bg)!important}.post-body blockquote{border-left:2px solid var(--accent);margin-left:0;padding-left:24px}.post-end{border-top:1px solid var(--border);padding-top:24px;margin-top:44px;display:flex;justify-content:space-between;gap:16px}.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link:focus{position:fixed;top:12px;left:12px;background:var(--accent);color:var(--bg);padding:12px;z-index:10}@keyframes blink{50%{opacity:0}}@media (min-width: 1300px){.hero{gap:80px}}@media (max-width: 1000px){.site-shell{width:calc(100% - 64px)}.hero{gap:32px}.hero h1{font-size:2.65rem}.profile-content{padding:20px}}@media (max-width: 800px){.hero{grid-template-columns:1fr;padding-block:48px;gap:42px}.hero h1{font-size:clamp(2.4rem,7vw,3.5rem)}.hero-description{max-width:550px}.profile-terminal{max-width:520px;width:100%}.header-controls{gap:12px}.nav{gap:0}.nav a{padding-inline:9px}.skills-grid{grid-template-columns:1fr}.skills-grid>div+div{border-left:0;border-top:1px solid var(--border)}}@media (max-width: 540px){body{font-size:13px}.site-shell{width:calc(100% - 40px)}.site-header{flex-wrap:wrap;padding-block:22px 17px;gap:18px}.wordmark{font-size:17px}.header-controls{width:100%;justify-content:space-between}.nav{margin-left:-9px;font-size:12px}.nav a{padding:11px 9px}.theme-toggle{width:40px;height:40px}.hero{padding-block:32px 40px}.hero h1{font-size:clamp(1.9rem,8.2vw,2.7rem)}.hero-role{font-size:12px}.hero-description{font-size:13px}.hero-actions{gap:10px}.button{gap:12px;padding:11px 13px;font-size:11px}.social-links{gap:14px;font-size:10px}.social-links>span{width:100%}.section-heading{align-items:start}.section-heading h2{font-size:19px}.section-heading>a{padding-top:3px;font-size:10px}.section-description{line-height:1.9}.post-row{gap:12px;padding:24px 0}.post-number{display:none}.post-row h3{font-size:15px;line-height:1.6}.post-row p{font-size:11px;line-height:1.9}.post-row-meta{gap:8px;font-size:9px}.terminal-intro{line-height:1.9;padding-inline:14px}.terminal-intro>.muted{display:block}.terminal-form{padding-inline:14px;gap:8px}.terminal-form label>.muted{display:none}.site-footer{margin-top:44px;font-size:9px}.site-footer>div{margin-left:0}.content-page{padding-top:32px}.page-header .command-label{font-size:11px}.page-lede{font-size:12px;line-height:1.9}.prose,.body-text{font-size:13px}.contact-callout{align-items:start;flex-direction:column;padding:22px}.cert-list span{display:block;margin-left:0}.file-list-header{font-size:9px;padding-inline:0}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
