:root{--bg: #121514;--panel: #1b1f1e;--line: #333937;--text: #c3cac4;--muted: #848d88;--heading: #e0e6df;--led: #4dff91;--led-ink: #5fd892;--led-glow: rgba(77, 255, 145, 0.55);--led-glow-wide: rgba(77, 255, 145, 0.18);--amber: #ffb000;--amber-glow: rgba(255, 176, 0, 0.5);--amber-glow-wide: rgba(255, 176, 0, 0.16);--red: #ff4b3e;--red-glow: rgba(255, 75, 62, 0.35)}@font-face{font-family:"Jersey 15";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/jersey-15-400.woff2") format("woff2")}@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/jetbrains-mono-400.woff2") format("woff2")}@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:700;font-display:swap;src:url("/fonts/jetbrains-mono-700.woff2") format("woff2")}*,*::before,*::after{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:var(--bg);color:var(--text);font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Consolas,monospace;font-size:16px;line-height:1.6}h1,h2,h3,h4{font-family:"Jersey 15","JetBrains Mono",ui-monospace,monospace;font-weight:400;color:var(--heading);line-height:1.2;letter-spacing:-.01em}a{color:var(--led);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto;display:block}pre{overflow-x:auto;border-radius:0}table{overflow-x:auto;display:block;max-width:100%;border-collapse:collapse}.site-main{max-width:960px;margin:0 auto;padding:0 20px 48px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--led);outline-offset:2px}@media (prefers-reduced-motion: reduce){*{animation:none !important;transition:none !important}}.site-header{max-width:960px;margin:0 auto;padding:20px 20px 0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.brand{font-family:"Jersey 15","JetBrains Mono",ui-monospace,monospace;color:var(--heading);font-size:1.35rem;text-decoration:none}.brand-suffix{color:var(--led)}.primary-nav{display:flex;gap:18px;font-family:"Jersey 15","JetBrains Mono",ui-monospace,monospace;font-size:1.08rem}.primary-nav a{color:var(--muted);text-decoration:none}.primary-nav a[aria-current=page]{color:var(--heading);box-shadow:inset 0 -3px 0 var(--led);padding-bottom:2px}.site-footer{max-width:960px;margin:0 auto;padding:32px 20px 40px;display:flex;gap:16px;flex-wrap:wrap;font-size:.85rem;color:var(--muted);border-top:2px solid var(--line)}.site-footer a{color:var(--muted)}.site-footer a:hover{color:var(--led)}.btn{display:inline-block;font-family:"Jersey 15","JetBrains Mono",ui-monospace,monospace;font-size:1.08rem;padding:9px 16px;border:2px solid var(--line);border-radius:0;text-decoration:none;transition:transform .12s steps(2, end),box-shadow .12s steps(2, end)}.btn--primary{background:var(--led);color:var(--bg);border-color:var(--line);box-shadow:5px 5px 0 var(--line)}.btn--primary:hover{transform:translate(-2px, -2px);box-shadow:7px 7px 0 var(--line)}.btn--primary:active{transform:translate(3px, 3px);box-shadow:0 0 0 var(--line)}.btn--quiet{background:rgba(0,0,0,0);color:var(--text)}.btn--quiet:hover{color:var(--led);border-color:var(--led)}.eyebrow{font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--led);text-shadow:0 0 6px var(--led-glow)}.led-wrap{display:inline-flex;align-items:center;gap:8px}.led{display:inline-block;width:8px;height:8px;border-radius:0}.led--active{background:var(--led);box-shadow:0 0 6px 2px var(--led-glow),0 0 16px 5px var(--led-glow-wide)}.led--maintenance,.led--experimental{background:var(--amber);box-shadow:0 0 6px 2px var(--amber-glow),0 0 16px 5px var(--amber-glow-wide)}.led--archived{background:var(--red);box-shadow:0 0 5px 1px var(--red-glow);opacity:.6}.led--breathe{animation:led-breathe 2.8s ease-in-out infinite}@keyframes led-breathe{0%, 100%{opacity:.55}50%{opacity:1}}.led-label{font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.chip{display:inline-block;font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.75rem;padding:3px 8px;background:var(--bg);border:1px solid var(--line);border-radius:0;color:var(--muted)}.tech-list .chip{display:inline-flex;align-items:center;gap:6px}.tech-list .chip::before{content:"";width:8px;height:8px;flex:none;background:var(--lang, var(--muted));box-shadow:0 0 5px 1px var(--lang, rgba(0,0,0,0))}.hero{padding:24px 0 8px}.hero h1{font-size:clamp(2.5rem,5.5vw,3.7rem);margin:10px 0 4px}.hero-intro{max-width:56ch;color:var(--text);margin:10px 0 20px}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin:0}.hero-art{image-rendering:pixelated;width:100%;height:auto;margin-top:28px}.home-section{margin:48px 0}.home-section h2{font-size:1.5rem;margin:0 0 20px}.project-cards{display:grid;grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:20px}.project-card{background:var(--panel);border:2px solid var(--line);border-radius:0;box-shadow:5px 5px 0 #000;overflow:hidden;display:flex;flex-direction:column}.project-card-art{background:var(--bg);border-bottom:2px solid var(--line)}.project-card-art img{image-rendering:pixelated;width:100%;height:auto;display:block}.project-card-body{padding:16px 18px 18px}.project-card h2{margin:0 0 10px;font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Consolas,monospace;font-weight:700;font-size:1.2rem;letter-spacing:0;color:var(--heading)}.project-pitch{margin:0 0 10px}.project-description{color:var(--muted);font-size:.92rem;margin:0 0 12px}.project-card .led-wrap{margin-bottom:12px}.tech-list{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px;padding:0}.project-links{display:flex;flex-wrap:wrap;align-items:center;gap:14px;font-family:"Jersey 15","JetBrains Mono",ui-monospace,monospace;font-size:1.02rem;margin:0}.stars-badge{margin-left:auto;display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border:1px solid var(--line);background:var(--bg);color:var(--amber);text-decoration:none}.stars-badge:hover{border-color:var(--amber);text-decoration:none}.post-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.post-list li{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 18px;padding:16px 2px;border-bottom:1px solid var(--line);font-size:1.02rem;transition:background-color .12s steps(2, end)}.post-list li:hover{background:var(--panel)}.post-list time{font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.78rem;letter-spacing:.06em;color:var(--muted);white-space:nowrap}.post-body{max-width:72ch;margin:0 auto;font-size:1.05rem;line-height:1.7;overflow-wrap:anywhere}.post-body h1,.post-body h2,.post-body h3{margin-top:1.6em}.post-body p,.post-body ul,.post-body ol,.post-body blockquote{margin:0 0 1.2em}.post-body blockquote{border-left:2px solid var(--line);padding-left:1em;color:var(--muted)}.post-body a{color:var(--led-ink);text-decoration:underline;text-underline-offset:2px}.post-meta{max-width:72ch;margin:0 auto 1.6em;font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.82rem;color:var(--muted);display:flex;flex-wrap:wrap;align-items:center;gap:10px}.post-meta h1{width:100%;margin:0 0 4px}.post-meta a{color:var(--muted)}.post-meta a:hover{color:var(--led)}.post-nav{max-width:72ch;margin:2em auto 0;padding-top:1.2em;border-top:2px solid var(--line);display:flex;justify-content:space-between;gap:16px;font-family:"Jersey 15","JetBrains Mono",ui-monospace,monospace;font-size:1.02rem}.site-main>h2{margin-top:2em;font-size:1.3rem;color:var(--muted)}.archive-tags{margin-left:10px}.tag-index{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0}.tag-count{color:var(--muted);margin-left:4px}pre.giallo{background:var(--panel);border:2px solid var(--line);border-radius:0;padding:16px;font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.88rem;line-height:1.5}code{font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Consolas,monospace}.z-3{color:var(--muted)}:not(pre)>code{background:var(--panel);border:1px solid var(--line);border-radius:0;padding:1px 5px;font-size:.9em;overflow-wrap:anywhere}