:root{--bg: #F2EADC;--fg: #1B1915;--muted: #625B52;--accent: #A83F12;--brand-orange: #EE611A;--border: #D6CBBB;--surface: #FBF6ED;--code-bg: #E9DFCF;--code-border: #4A443D;--container: 680px;--radius: 10px}*{box-sizing:border-box}html{font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased}body{margin:0;display:flex;flex-direction:column;min-height:100vh;line-height:1.65}.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 1.25rem}main.container{flex:1;padding-top:3rem;padding-bottom:4rem}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.site-header{border-bottom:1px solid var(--border)}.header-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;padding-top:1.1rem;padding-bottom:1.1rem}.logo{display:inline-flex;align-items:center;gap:.65rem;white-space:nowrap;font-weight:700;font-size:1.05rem;color:var(--fg);letter-spacing:-.01em}.brand-mark{display:block;width:40px;height:40px;flex-shrink:0;border-radius:50%}.logo:hover{text-decoration:none;color:var(--accent)}.nav a{color:var(--muted);margin-left:1.25rem;font-size:.95rem}.nav a:hover,.nav a.active{color:var(--fg);text-decoration:none}.hero{margin-bottom:3.5rem}.hero h1{font-size:1.7rem;margin:0 0 .5rem;letter-spacing:-.02em}.hero p{color:var(--muted);margin:0}.section-title{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:2.5rem 0 1rem}.post-card{padding:1.4rem 0;border-bottom:1px solid var(--border)}.post-card:last-of-type{border-bottom:none}.post-card-title{margin:0 0 .3rem;font-size:1.2rem;letter-spacing:-.01em}.post-card-title a{color:var(--fg)}.post-card-title a:hover{color:var(--accent);text-decoration:none}.post-meta{display:flex;gap:.75rem;align-items:center;font-size:.85rem;color:var(--muted);margin-bottom:.45rem}.post-tags{color:var(--accent)}.post-excerpt{margin:0;color:var(--muted);font-size:.95rem}.subscribe-box{margin-top:3.5rem;padding:1.5rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.subscribe-box h2{margin:0 0 .35rem;font-size:1.1rem}.subscribe-box p{margin:0 0 1rem;color:var(--muted);font-size:.92rem}.subscribe-form{display:flex;gap:.5rem}.subscribe-form input{flex:1;padding:.55rem .8rem;border:1px solid var(--border);border-radius:6px;font-size:.95rem;background:var(--surface)}.subscribe-form button{padding:.55rem 1.1rem;background:var(--brand-orange);color:var(--fg);border:none;border-radius:6px;font-size:.95rem;cursor:pointer}.subscribe-form button:hover{background:var(--fg);color:var(--bg)}.article-header{margin-bottom:2rem}.article-header h1{font-size:2rem;margin:0 0 .6rem;letter-spacing:-.02em;line-height:1.25}.article-header .post-meta{margin-bottom:0}.prose h2{margin-top:2.6rem;padding-top:1.2rem;border-top:1px solid var(--border);font-size:1.35rem;letter-spacing:-.01em}.prose h3{margin-top:1.8rem;font-size:1.1rem}.prose p,.prose ul,.prose ol{color:var(--fg)}.prose img{max-width:100%;border-radius:var(--radius);display:block;margin:1.6rem auto;border:1px solid var(--border);box-shadow:0 2px 8px #0000000f}.prose blockquote{border-left:3px solid var(--accent);margin:1.5rem 0;padding:.1rem 1.2rem;color:var(--muted)}.prose code{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;background:var(--code-bg);padding:.15em .4em;border-radius:4px;font-size:.88em}.prose pre{background:var(--fg)!important;color:var(--bg)!important;padding:1.1rem 1.3rem;border-radius:var(--radius);overflow-x:auto;font-size:.85rem;line-height:1.65;margin:1.6rem 0;border:1px solid var(--code-border)}.prose pre code{background:none;padding:0;color:inherit;font-size:inherit}.prose hr{border:none;border-top:1px solid var(--border);margin:2.5rem 0}.site-footer{border-top:1px solid var(--border);padding:1.5rem 0}.social-links{display:flex;flex-wrap:wrap;gap:.6rem 1.1rem;margin-bottom:1rem}.social-links a{font-size:.9rem}.footer-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem}.footer-inner p{margin:0;color:var(--muted);font-size:.85rem}.footer-nav{display:flex;flex-wrap:wrap;gap:.5rem 1rem}.footer-nav a{color:var(--muted);font-size:.85rem}.footer-nav a:hover{color:var(--fg)}@media (max-width: 560px){.subscribe-form{flex-direction:column}}.notebook-main{flex:1;padding-top:3rem;padding-bottom:4rem}.notebook-page.layout-full .notebook-main{width:100%;max-width:none;padding-left:2rem;padding-right:2rem}.notebook-page.layout-centered .notebook-main{width:100%;max-width:920px;margin:0 auto;padding-left:1.25rem;padding-right:1.25rem}.notebook-body{color:var(--fg);line-height:1.65}.notebook-body h1{display:none}.notebook-body h2{margin-top:2.6rem;padding-top:1.2rem;border-top:1px solid var(--border);font-size:1.35rem;letter-spacing:-.01em}.notebook-body h3{margin-top:1.8rem;font-size:1.1rem}.notebook-body img{max-width:100%;border-radius:var(--radius);display:block;margin:1.6rem auto;border:1px solid var(--border);box-shadow:0 2px 8px #0000000f}.notebook-body a{color:var(--accent)}.notebook-body code{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;background:var(--code-bg);padding:.15em .4em;border-radius:4px;font-size:.88em}.notebook-body .input_area,.notebook-body .inner_cell,.notebook-body .highlight{background:transparent!important}.notebook-body pre{background:var(--fg)!important;color:var(--bg)!important;padding:1.1rem 1.3rem;border-radius:var(--radius);overflow-x:auto;font-size:.85rem;line-height:1.65;margin:1.6rem 0;border:1px solid var(--code-border)}.notebook-body pre code{background:none;padding:0;color:inherit;font-size:inherit;display:block}.notebook-body .input_area pre{margin:.6rem 0}.notebook-body .output_area{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:.6rem 1rem;margin:.4rem 0 1.2rem;overflow-x:auto}.notebook-body .output_area pre{background:none!important;color:var(--fg)!important;border:none;padding:0;margin:0}.notebook-body .output_area img{margin:.4rem auto}.notebook-body blockquote{border-left:3px solid var(--accent);margin:1.5rem 0;padding:.1rem 1.2rem;color:var(--muted)}.notebook-body table{border-collapse:collapse;margin:1.6rem 0;width:100%;font-size:.92rem}.notebook-body th,.notebook-body td{border:1px solid var(--border);padding:.45rem .7rem;text-align:left}
