:root{--bg: #100c08;--fg: #f0b040;--dim: #a07028;--line: #c48420;--glow: rgba(240, 176, 64, .18);--font: "IBM Plex Mono", ui-monospace, "Cascadia Code", Menlo, monospace}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--fg);font:15px/1.55 var(--font)}body{text-shadow:0 0 12px var(--glow)}#app{min-height:100dvh}a{color:var(--fg);text-decoration:underline;text-underline-offset:3px}a:visited{color:var(--dim)}a:hover{color:#ffd27a}:focus-visible{outline:2px solid var(--fg);outline-offset:3px}.skip{position:absolute;left:1rem;top:-4rem;background:var(--fg);color:var(--bg);padding:.35rem .7rem;z-index:20;text-decoration:none;text-shadow:none}.skip:focus{top:.6rem}.crt{position:relative;min-height:100dvh;padding:1.25rem}.scan{pointer-events:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:5;background:repeating-linear-gradient(to bottom,transparent 0,transparent 3px,rgba(0,0,0,.07) 3px,rgba(0,0,0,.07) 4px)}.bezel{position:relative;z-index:1;max-width:52rem;margin:0 auto;min-height:calc(100dvh - 2.5rem);display:flex;flex-direction:column;border:2px solid var(--line);box-shadow:0 0 0 1px var(--bg),0 0 0 4px var(--line),0 0 40px var(--glow)}.top{display:flex;flex-wrap:wrap;align-items:baseline;gap:.75rem 1.25rem;padding:.85rem 1.1rem;border-bottom:2px solid var(--line)}.wordmark{font-weight:500;letter-spacing:.08em;text-decoration:none;color:var(--fg)}.wordmark[aria-current=page]{text-decoration:none}.cursor{display:inline-block;margin-left:.15em;animation:blink 1.1s steps(1) infinite}@keyframes blink{50%{opacity:0}}.stamp{color:var(--dim);font-size:.8rem;margin-left:auto}.top nav{display:flex;gap:1rem;width:100%}.top nav a[aria-current=page]{background:var(--fg);color:var(--bg);text-decoration:none;text-shadow:none;padding:0 .35rem}.main{flex:1;padding:1.25rem 1.1rem 2rem}.foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.5rem;padding:.75rem 1.1rem;border-top:2px solid var(--line);color:var(--dim);font-size:.8rem}.foot a{color:var(--dim)}.foot-svenjs{display:inline-flex;align-items:center;gap:.35em}.foot-mark{display:block;width:1em;height:1em}.banner{border:1px solid var(--line);padding:.7rem .85rem;letter-spacing:.06em;font-size:.85rem;color:var(--dim)}.lede{max-width:68ch}.filters{display:flex;flex-wrap:wrap;gap:.4rem;margin:1.25rem 0 1.5rem}.filter{font:inherit;color:var(--fg);background:transparent;border:1px solid var(--line);padding:.2rem .55rem;cursor:pointer;text-shadow:inherit}.filter.on,.filter[aria-selected=true]{background:var(--fg);color:var(--bg);text-shadow:none}.year{margin:0 0 1.75rem}.year-label{margin:0 0 .5rem;font-size:.85rem;letter-spacing:.14em;color:var(--dim);font-weight:500}.listing{list-style:none;margin:0;padding:0}.listing li{margin:0 0 .9rem}.listing a{display:flex;flex-wrap:wrap;gap:.35rem 1rem;text-decoration:none}.listing time{color:var(--dim);min-width:7.6rem}.listing-title{text-decoration:underline;text-underline-offset:3px}.listing a:hover .listing-title{color:#ffd27a}.listing-meta{display:block;margin-left:7.6rem;color:var(--dim);font-size:.8rem}.empty,.not-found,.about,.post{display:flex;flex-direction:column;max-width:68ch}.kicker{letter-spacing:.16em;font-size:.75rem;color:var(--dim);margin:0 0 .4rem}.post h1,.about h1,.not-found h1{display:block;width:100%;font-size:1.35rem;font-weight:500;line-height:1.3;margin:0 0 1rem}.meta{display:block;margin:0 0 1.5rem;padding:.7rem .85rem;border:1px solid var(--line)}.meta>div{display:flex;gap:1rem;margin:.2rem 0}.meta dt{color:var(--dim);margin:0}.meta dd{margin:0}.body h1,.body h2,.body h3,.body h4{font-weight:500;margin:1.4rem 0 .5rem}.body h2{font-size:1.1rem}.body h3{font-size:1rem}.body p,.body li,.body blockquote{margin:0 0 .85rem}.body ul,.body ol{padding-left:1.3rem}.body blockquote{margin-left:0;padding-left:.9rem;border-left:2px solid var(--line);color:var(--dim)}.body pre{overflow:auto;padding:.75rem;border:1px solid var(--line);background:#0a0806;font-size:.82rem;line-height:1.45;text-shadow:none}.body code{font-family:inherit;font-size:.9em}.body a{word-break:break-word}.omitted{color:var(--dim);font-style:italic}.back{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--line)}@media(max-width:640px){.crt{padding:.6rem}.stamp{margin-left:0}.listing a{flex-direction:column;gap:.15rem}.listing-meta{margin-left:0}.meta>div{grid-template-columns:1fr;gap:.1rem}}@media(prefers-reduced-motion:reduce){.cursor{animation:none}.scan{display:none}}
