:root{--bg: #0e0e10;--bg-surface: #16161a;--bg-inline-code: #1c1c22;--border: #2a2a30;--text: #c8c8cc;--text-heading: #e0e0e4;--text-muted: #6a6a72;--accent: #7a9cc6;--accent-hover: #9bb8da;--font-mono: "JetBrains Mono", ui-monospace, "Cascadia Code", "Fira Code", Menlo, Consolas, monospace;--max-width: 65ch;--spacing-unit: .5rem}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{background-color:var(--bg);color:var(--text);font-family:var(--font-mono);font-size:.9375rem;line-height:1.7;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color-scheme:dark}body{margin:0 auto;width:100%;max-width:var(--max-width);padding:calc(var(--spacing-unit) * 3) calc(var(--spacing-unit) * 4);min-height:100vh;display:flex;flex-direction:column}main{flex:1;padding:calc(var(--spacing-unit) * 4) 0}::selection{background-color:var(--accent);color:var(--bg)}h1,h2,h3,h4,h5,h6{color:var(--text-heading);font-family:var(--font-mono);font-weight:700;line-height:1.3;margin-top:calc(var(--spacing-unit) * 4);margin-bottom:calc(var(--spacing-unit) * 2)}h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1.125rem}h4,h5,h6{font-size:1rem}p{margin-bottom:calc(var(--spacing-unit) * 2)}a{color:var(--accent);text-decoration:none;transition:color .15s ease}a:hover{color:var(--accent-hover)}ul,ol{padding-left:calc(var(--spacing-unit) * 3);margin-bottom:calc(var(--spacing-unit) * 2)}li{margin-bottom:var(--spacing-unit)}strong{color:var(--text-heading);font-weight:700}em{font-style:italic}small{font-size:.8125rem;color:var(--text-muted)}.site-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:calc(var(--spacing-unit) * 2);border-bottom:1px solid var(--border)}.site-title{color:var(--text-heading);font-weight:700;font-size:1rem;text-decoration:none}.site-title:hover{color:var(--accent-hover)}.site-nav{display:flex;align-items:center;gap:calc(var(--spacing-unit) * 1.5)}.site-nav a{font-size:.875rem;color:var(--text-muted)}.site-nav a:hover,.site-nav a.active,.site-nav a[aria-current=page]{color:var(--accent)}.nav-separator{color:var(--text-muted);font-size:.875rem;user-select:none}.site-footer{padding-top:calc(var(--spacing-unit) * 2);border-top:1px solid var(--border);font-size:.8125rem;color:var(--text-muted);display:flex;align-items:center;justify-content:space-between}.site-footer a{color:var(--text-muted)}.site-footer a:hover{color:var(--accent)}.footer-sep{margin:0 var(--spacing-unit)}nav[aria-label=Breadcrumb]{font-size:.8125rem;color:var(--text-muted);margin-bottom:calc(var(--spacing-unit) * 3)}nav[aria-label=Breadcrumb] a{color:var(--text-muted)}nav[aria-label=Breadcrumb] a:hover{color:var(--accent)}.site-intro{color:var(--text-muted);font-size:.9375rem;margin-bottom:calc(var(--spacing-unit) * 4)}.post-list{margin-top:calc(var(--spacing-unit) * 2)}.post-list h2{font-size:1.125rem;margin-top:0;margin-bottom:calc(var(--spacing-unit) * 3)}.post-entry{margin-bottom:calc(var(--spacing-unit) * 3)}.post-entry-row{display:flex;align-items:baseline;gap:calc(var(--spacing-unit) * 2)}.post-entry time{color:var(--text-muted);font-size:.8125rem;white-space:nowrap;flex-shrink:0}.post-entry a{font-weight:400}.post-entry-difficulty{color:var(--text-muted);font-size:.8125rem}.post-entry-desc{color:var(--text-muted);font-size:.8125rem;margin-top:calc(var(--spacing-unit) * .5);margin-bottom:0}.view-all{display:inline-block;font-size:.875rem;margin-top:calc(var(--spacing-unit) * 2)}.article-header{margin-bottom:calc(var(--spacing-unit) * 4)}.article-header h1{margin-top:0;margin-bottom:calc(var(--spacing-unit) * 1)}.article-meta{color:var(--text-muted);font-size:.8125rem;margin-bottom:var(--spacing-unit)}.tag-list{display:flex;flex-wrap:wrap;gap:var(--spacing-unit);list-style:none;padding:0;margin-top:calc(var(--spacing-unit) * 2);margin-bottom:0}.tag-list li a{display:inline-block;font-size:.75rem;padding:calc(var(--spacing-unit) * .25) calc(var(--spacing-unit) * 1);border:1px solid var(--border);border-radius:2px;color:var(--text-muted)}.tag-list li a:hover{color:var(--accent);border-color:var(--accent)}article code{font-family:var(--font-mono);font-size:.875em;background-color:var(--bg-inline-code);padding:.125em .375em;border-radius:2px}article pre{background-color:var(--bg-surface);border:1px solid var(--border);border-radius:4px;padding:calc(var(--spacing-unit) * 2);overflow-x:auto;margin-bottom:calc(var(--spacing-unit) * 3);font-size:.8125rem;line-height:1.6}article pre code{background:none;padding:0;border-radius:0;font-size:inherit}article blockquote{border-left:2px solid var(--border);padding-left:calc(var(--spacing-unit) * 2);color:var(--text-muted);margin:0 0 calc(var(--spacing-unit) * 3) 0;font-style:italic}article img{max-width:100%;height:auto;border-radius:4px;margin:calc(var(--spacing-unit) * 2) 0}article hr{border:none;border-top:1px solid var(--border);margin:calc(var(--spacing-unit) * 4) 0}article table{width:100%;border-collapse:collapse;margin-bottom:calc(var(--spacing-unit) * 3);font-size:.875rem}article th,article td{padding:var(--spacing-unit) calc(var(--spacing-unit) * 1.5);text-align:left;border-bottom:1px solid var(--border)}article th{color:var(--text-heading);font-weight:700}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@media(max-width:640px){body{padding:calc(var(--spacing-unit) * 2)}.site-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-unit)}.site-nav{flex-wrap:wrap;gap:var(--spacing-unit)}.site-footer{flex-direction:column;align-items:flex-start;gap:var(--spacing-unit)}.post-entry-row{flex-direction:column;gap:0}h1{font-size:1.25rem}h2{font-size:1.125rem}}
