:root{--bg-primary: #f4f1ea;--bg-secondary: #ebe7df;--text-primary: #2a2825;--text-secondary: #5a564f;--text-muted: #78746a;--link: #0969da;--link-hover: #0860d0;--border: #d0ccc4;--code-bg: #e8e4dc;--selection: #d4d0c8;--prompt: #6a5f4b}[data-theme=dark]{--bg-primary: #1a1a1a;--bg-secondary: #242424;--text-primary: #e8e6e3;--text-secondary: #a8a29e;--text-muted: #78716c;--link: #60a5fa;--link-hover: #93bbfc;--border: #3a3a3a;--code-bg: #2a2a2a;--selection: #3a3a3a;--prompt: #7db863}*{margin:0;padding:0;box-sizing:border-box}::selection{background-color:var(--selection);color:var(--text-primary)}html{font-size:16px;scroll-behavior:smooth}body{font-family:JetBrains Mono,Fira Code,Cascadia Code,monospace;font-weight:400;line-height:1.7;color:var(--text-primary);background-color:var(--bg-primary);transition:background-color .3s ease,color .3s ease;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{max-width:720px;margin:0 auto;padding:2rem 1.5rem}header{margin-bottom:4rem;padding-bottom:2rem;border-bottom:1px solid var(--border)}.header-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.site-title{font-size:1.125rem;font-weight:500;color:var(--text-primary);text-decoration:none;transition:opacity .2s ease;display:flex;align-items:center;gap:.5rem}.prompt-user{color:var(--prompt);font-weight:600}.prompt-at{color:var(--text-muted)}.prompt-host{color:var(--text-secondary)}.prompt-path{color:var(--text-primary)}.prompt-symbol{color:var(--text-muted);margin-left:.25rem}.site-title:hover{opacity:.8}nav{display:flex;align-items:center;gap:1.5rem}nav a{color:var(--text-secondary);text-decoration:none;font-size:.9375rem;transition:color .2s ease;position:relative}nav a:hover{color:var(--text-primary)}nav a:before{content:"./";color:var(--text-muted);font-size:.875rem}nav a:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:1px;background-color:var(--text-primary);transition:width .2s ease}nav a:hover:after{width:100%}.theme-toggle{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:.875rem;padding:.25rem .5rem;transition:color .2s ease;display:flex;align-items:center;justify-content:center;font-family:inherit}.theme-toggle:hover{color:var(--text-primary)}main{margin-bottom:4rem}section{padding:2rem 0;border-bottom:1px solid var(--border)}section:last-child{border-bottom:none}h1,h2,h3,h4,h5,h6{line-height:1.3;color:var(--text-primary);margin-top:0}h1{font-weight:700}h2{font-weight:650}h3{font-weight:600}h4{font-weight:550}h5{font-weight:500}h6{font-weight:450}h1{font-size:2.5rem;margin-bottom:.5rem}h2{font-size:1.5rem;margin-top:3rem;margin-bottom:1.25rem}.intro h1{font-size:2.5rem;margin-top:0;margin-bottom:.5rem}h3{font-size:1.25rem;margin-top:2.5rem;margin-bottom:1rem}h4{font-size:1.125rem;margin-top:2rem;margin-bottom:.875rem}h5{font-size:1rem;margin-top:1.5rem;margin-bottom:.75rem}h6{font-size:.9375rem;margin-top:1.25rem;margin-bottom:.625rem}h1:before{content:"# "}h2:before{content:"## "}h3:before{content:"### "}h4:before{content:"#### "}h5:before{content:"##### "}h6:before{content:"###### "}h1:before,h2:before,h3:before,h4:before,h5:before,h6:before{color:var(--text-muted);font-weight:400}p{margin-bottom:1.5rem;color:var(--text-muted);font-size:1.0625rem;line-height:1.8}.intro{padding-top:0}body img{position:fixed;top:90px;right:50px;width:220px;height:220px;opacity:.15;z-index:-1;pointer-events:none;border-radius:50%}.intro p{color:var(--text-primary)}a{color:var(--link);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s ease,color .2s ease}a:hover{color:var(--link-hover);border-bottom-color:var(--link-hover)}code{background-color:var(--code-bg);padding:.125rem .375rem;border-radius:3px;font-size:.875rem;font-family:inherit}code:before{content:"`";color:var(--text-muted)}code:after{content:"`";color:var(--text-muted)}ul{margin-bottom:1.5rem;font-size:1.0625rem;line-height:1.8;color:var(--text-muted);list-style:none;padding:0}ul ul{margin-left:2rem;margin-top:.5rem;margin-bottom:.5rem}li{margin-bottom:.5rem;padding-left:1.5rem;position:relative}li:before{content:">";position:absolute;left:0;color:var(--prompt);font-weight:600}.contact-links{margin-top:.5rem;margin-bottom:1rem}.contact-links a{color:var(--text-secondary);font-size:.9375rem;display:inline;border:none;position:relative}.contact-links a:after{content:" ·";color:var(--text-muted);font-weight:400}.contact-links a:last-child:after{content:""}.contact-links a:hover{color:var(--link);border:none}footer{padding-top:2rem;border-top:1px solid var(--border);color:var(--text-muted);font-size:.875rem}.footer-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.copyright:before{content:"# ";color:var(--text-muted)}.build-info{font-size:.8125rem}.terminal-welcome{font-size:.875rem;line-height:1.4;color:var(--text-secondary);margin-bottom:3rem;padding:1.5rem;background-color:var(--bg-secondary);border-radius:4px;overflow-x:auto}.terminal-line{margin-bottom:.25rem}.terminal-prompt{color:var(--prompt);font-weight:600}.terminal-output{color:var(--text-secondary);padding-left:0}.terminal-line{font-size:.8125rem;color:var(--text-muted);margin-bottom:.75rem;margin-top:-.5rem}.terminal-line .terminal-prompt{color:var(--prompt);font-weight:600}.comment{color:var(--text-muted);font-style:italic}.text-comment{font-style:italic;color:var(--text-muted)}.text-comment:before{content:"// ";color:var(--text-muted)}.text-primary{color:var(--text-primary)}.text-small{font-size:.9375rem}.video-container{position:relative;width:100%;height:0;padding-bottom:56.25%;margin-top:1.5rem}.video-container iframe{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:4px}@media (max-width: 640px){html{font-size:15px}.container{padding:1.5rem 1rem}h1{font-size:1.75rem}nav{gap:1.25rem}nav a{font-size:.875rem}nav a:before{content:""}.header-content{flex-direction:column;align-items:flex-start}.footer-content{flex-direction:column;text-align:center}}.tech-stack{display:flex;flex-wrap:wrap;gap:1rem}.tech-stack code{font-size:.875rem}.tagline{font-size:1.125rem;margin-top:1rem;margin-bottom:1rem!important;font-style:italic;color:var(--text-secondary)}
