.log__filters{gap:var(--space-1);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.log__filters button{padding:var(--space-1) var(--space-2);font-family:var(--font-pixel);text-transform:uppercase;color:var(--color-white);border:var(--border-thin);border-color:var(--color-gray-600);cursor:pointer;background:0 0;align-items:center;gap:6px;font-size:10px;display:inline-flex}.log__filters button span{color:var(--color-gray-400)}.log__filters button:hover{border-color:var(--color-white)}.log__filters button[aria-pressed=true]{color:var(--color-black);background:var(--color-white);border-color:var(--color-white)}.log__filters button[aria-pressed=true] span{color:var(--color-gray-600)}.log{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.log__link{gap:var(--space-1);padding:var(--space-3);color:var(--color-black);background:var(--color-white);border:var(--border);box-shadow:var(--shadow);text-decoration:none;transition:translate .15s steps(2,end);display:grid}.log__link:hover,.log__link:focus-visible{translate:-2px -2px}.log__meta,.post__meta{font-family:var(--font-pixel);text-transform:uppercase;color:var(--color-gray-600);flex-wrap:wrap;align-items:center;gap:6px;margin:0;font-size:10px;display:flex}.log__gem{flex:none}.log__title{font-size:var(--text-lg);margin:0;line-height:1.35}.log__summary{color:var(--color-gray-700);margin:0}.log__tags{gap:var(--space-1);font-size:var(--text-sm);color:var(--color-gray-600);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.log__read{font-family:var(--font-pixel);text-transform:uppercase;justify-self:end;font-size:10px}.log__empty,.log__rss{color:var(--color-gray-300)}.log__rss{margin:var(--space-4) 0 0;font-family:var(--font-pixel);text-transform:uppercase;font-size:10px}.log__rss a{color:inherit}.post__back,.post__nav a,.post__cta{font-family:var(--font-pixel);font-size:var(--text-sm);text-transform:uppercase;color:var(--color-gray-300);text-decoration:none}.post__back{margin-bottom:var(--space-2);display:inline-block}.post__back:hover,.post__nav a:hover{color:var(--color-white)}.post__meta{margin-bottom:var(--space-4);color:var(--color-gray-300)}.post{gap:var(--space-4);grid-template-columns:minmax(0,1fr) 220px;align-items:start;display:grid}.post--solo{grid-template-columns:minmax(0,1fr)}.post__article{min-width:0;padding:var(--space-4) var(--space-6)}.post__map{top:var(--space-3);padding:var(--space-2);border:var(--border-thin);border-color:var(--color-gray-600);position:sticky}.post__map-head{margin:0 0 var(--space-1);font-family:var(--font-pixel);text-transform:uppercase;color:var(--color-gray-400);font-size:10px}.post__map ol{padding-left:var(--space-2);font-size:var(--text-sm);margin:0}.post__map li+li{margin-top:6px}.post__map a{color:var(--color-gray-300);text-decoration:none}.post__map a:hover{color:var(--color-white);text-decoration:underline}.post__tags{margin-top:var(--space-4);padding-top:var(--space-2);border-top:var(--border-thin);border-color:var(--color-gray-300)}.post__nav{justify-content:space-between;gap:var(--space-2);margin-top:var(--space-6);display:flex}.post__nav a{max-width:45%;line-height:1.6}.post__nav a:last-child:not(:first-child){text-align:right}.post__cta{margin:var(--space-4) 0 0;color:var(--color-gray-400)}.post__cta a{color:var(--color-white)}.post__body{max-width:70ch;color:var(--color-gray-800);font-size:1.0625rem;line-height:1.75}.post__body--loading{min-height:60vh}.post__body>:first-child{margin-top:0}.post__body h2{margin:var(--space-6) 0 var(--space-2);font-family:var(--font-pixel);font-size:var(--text-base);color:var(--color-black);scroll-margin-top:var(--space-4);line-height:1.5}.post__body h3{margin:var(--space-4) 0 var(--space-1);font-size:var(--text-base);color:var(--color-black)}.post__body p,.post__body ul,.post__body ol{margin:0 0 var(--space-2)}.post__body li+li{margin-top:4px}.post__body ul li::marker{content:"▸ "}.post__body a{color:var(--color-black);text-underline-offset:3px}.post__body strong{color:var(--color-black)}.post__body :not(pre)>code{background:var(--color-gray-100);border:1px solid var(--color-gray-300);padding:1px 5px;font-size:.9em}.post__body blockquote{margin:var(--space-3) 0;padding:var(--space-1) var(--space-3);color:var(--color-gray-700);border-left:var(--border-width) solid var(--color-black)}.post__body img{border:var(--border-thin);image-rendering:auto;max-width:100%;height:auto}.post__body hr{margin:var(--space-4) 0;border:0;border-top:var(--border-thin);border-color:var(--color-gray-300)}.post__body table{max-width:100%;margin:0 0 var(--space-3);border-collapse:collapse;font-size:var(--text-sm);display:block;overflow-x:auto}.post__body th,.post__body td{padding:6px var(--space-1);text-align:left;border:1px solid var(--color-gray-300)}.post__body th{color:var(--color-white);background:var(--color-black)}.post-code{margin:var(--space-3) 0;color:var(--color-gray-100);background:var(--color-black);border:var(--border-thin);box-shadow:var(--shadow-pressed);position:relative}.post-code__lang{padding:4px var(--space-2);font-family:var(--font-pixel);text-transform:uppercase;color:var(--color-gray-400);border-bottom:1px solid var(--color-gray-700);font-size:9px;display:block}.post-code pre{padding:var(--space-2);font-size:var(--text-sm);margin:0;line-height:1.6;overflow-x:auto}.post-stats{gap:var(--space-1);margin:var(--space-3) 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.post__body .post-stats li{padding:var(--space-1) var(--space-2);font-family:var(--font-pixel);text-transform:uppercase;color:var(--color-white);background:var(--color-black);margin:0;font-size:10px;line-height:1.6}.post__body .post-stats li::marker{content:none}.post-callout{margin:var(--space-3) 0;padding:var(--space-2) var(--space-3);background:var(--color-gray-100);border:var(--border-thin);border-style:dashed}.post-callout--warn{box-shadow:var(--shadow-pressed);border-style:solid}.post-callout__label{font-family:var(--font-pixel);text-transform:uppercase;color:var(--color-gray-600);margin:0 0 4px;font-size:10px}.post-callout>:last-child{margin-bottom:0}@media (width<=900px){.post{grid-template-columns:minmax(0,1fr)}.post__map{order:-1;position:static}}@media (width<=600px){.post__article{padding:var(--space-3) var(--space-2)}.post__body{font-size:var(--text-base)}}
