@font-face{font-family:Preview Sans;src:url(/fonts/Satoshi-Variable.ttf) format("truetype");font-style:normal;font-weight:300 900;font-display:swap}@font-face{font-family:Preview Display;src:url(/fonts/CabinetGrotesk-Variable.ttf) format("truetype");font-style:normal;font-weight:300 900;font-display:swap}:root{--font-body: "Preview Sans", sans-serif;--site-width: 1180px;--reading-width: 48rem;--shell-gutter: 24px;--shell-margin: 24px;--content-padding: clamp(18px, 4vw, 40px);--text-page: clamp(26px, 3vw, 32px);--text-section: 22px;--text-card: 18px;--text-body: 16px;--text-meta: 12px;--leading-body: 1.8;--radius-window: 8px;--radius-control: 4px;--paper: #e9eee6;--ink: #243c32;--muted: #53695c;--rule: #b5c7b7;--accent: #386d48;--surface: #dce6da;--terminal-panel: #f4f6ee;--terminal-chrome: #e3eadd;--terminal-warm: #8b5c28;--terminal-header-shadow: none;--terminal-content-shadow: 0 8px 28px color-mix(in srgb, var(--ink) 9%, transparent);--mono: ui-monospace, SFMono-Regular, Consolas, monospace;color-scheme:light;font-family:var(--font-body);background:var(--paper);color:var(--ink)}:root[data-theme=dark]{--paper: #0c1312;--ink: #e2e9dd;--muted: #a0b2a4;--rule: #30443a;--accent: #99d5ab;--surface: #192820;--terminal-panel: #111c18;--terminal-chrome: #18241f;--terminal-warm: #d7b982;color-scheme:dark}*{box-sizing:border-box}body,h1,h2,h3,p{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:5px}a:hover{color:var(--accent)}::-moz-selection{background:var(--accent);color:var(--paper)}::selection{background:var(--accent);color:var(--paper)}.section-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.section-title h2{font-size:var(--text-section);letter-spacing:-.3px;font-weight:600}.section-title>a{font:12px var(--mono);white-space:nowrap;color:var(--accent)}.section-title>a:hover{text-decoration:underline}.body-copy{font-size:16px;line-height:1.8;color:var(--muted)}.writing-list{list-style:none;margin:0;padding:0}.writing-list li{border-top:1px solid var(--rule)}.writing-list li:last-child{border-bottom:1px solid var(--rule)}.writing-link{display:grid;grid-template-columns:100px 1fr 20px;gap:20px;align-items:baseline;padding:24px 0}.writing-link time{font:11px/1.6 var(--mono);color:var(--muted)}.writing-link h3{font-size:18px;font-weight:550;line-height:1.45}.writing-link p{font-size:13px;line-height:1.7;color:var(--muted);margin-top:7px}.link-arrow{color:var(--accent);transition:transform .2s}.writing-link:hover .link-arrow{transform:translate(4px)}.selected-work{display:grid;grid-template-columns:1fr 1fr;gap:26px}.work-item{min-width:0}.work-visual{height:154px;background:var(--surface);border:1px solid var(--rule);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;margin-bottom:20px}.work-visual svg{width:220px;height:120px;color:var(--accent)}.work-visual>span{position:absolute;left:14px;bottom:10px;font:9px var(--mono);letter-spacing:.12em;color:var(--muted)}.work-item h3{font-size:19px;line-height:1.4;margin:9px 0}.work-item p{font-size:14px;line-height:1.7;color:var(--muted)}.work-tags{font:10px/1.6 var(--mono);color:var(--accent);margin-top:16px}.work-item a:hover h3{text-decoration:underline;text-underline-offset:5px}.work-item a:hover .work-visual{border-color:var(--accent)}.design-footer{margin-top:70px;padding:28px 0 35px;border-top:1px solid var(--rule);display:flex;justify-content:space-between;gap:24px;font:11px/1.8 var(--mono);color:var(--muted)}.design-footer nav{display:flex;gap:22px}.design-footer strong{color:var(--ink);font-weight:500}.dot{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;margin-right:8px}.chapter{scroll-margin-top:85px}body{min-width:280px}.interior-shell .terminal-wrapper .hacker-section{margin-left:0;padding-left:0;border-left:0}.interior-shell .terminal-content{overflow-wrap:anywhere}.post-body{color:var(--ink)}.post-body :is(p,li,blockquote,td,th,strong,h1,h2,h3,h4,h5,h6){color:var(--ink)}.post-body :is(hr,blockquote,th,td){border-color:var(--rule)}.site-skip{position:fixed;top:-100px;left:16px;z-index:1000;padding:12px;background:var(--terminal-panel)}.site-skip:focus{top:12px}.theme-button{display:grid;place-items:center;background:transparent;border:1px solid var(--rule);border-radius:4px;width:40px;height:40px;font-size:22px;flex-shrink:0}.theme-button:hover{background:var(--surface)}.chapter{scroll-margin-top:25px}.interior-shell{width:min(var(--site-width),100%);margin:var(--shell-margin) auto;padding:0 var(--shell-gutter);min-width:0}.interior-shell .terminal-wrapper{min-width:0}.interior-shell main.terminal-content{min-width:0;padding:var(--content-padding);border-top:0;border-radius:0 0 var(--radius-window) var(--radius-window)}.interior-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;color:var(--muted);font:11px/1.8 var(--mono);margin:24px 0}@media (max-width: 700px){:root{--shell-gutter: 12px;--shell-margin: 14px}.interior-shell{padding:0 12px;margin:14px auto}.writing-link{grid-template-columns:1fr 20px;gap:8px}.writing-link time{grid-column:1/-1}.selected-work{gap:20px}.section-title h2{font-size:22px}}@media (max-width: 440px){.selected-work{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.site-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;max-width:100%;padding:8px 14px;border:1px solid var(--rule);border-radius:var(--radius-control);background:transparent;color:var(--accent);font:var(--text-meta) / 1.6 var(--mono);text-align:center;text-decoration:none;white-space:normal;overflow-wrap:anywhere;cursor:pointer;transition:background .15s,border-color .15s}.site-button:hover{background:var(--surface);border-color:var(--accent);text-decoration:none}.site-button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.site-button:disabled{opacity:.5;cursor:not-allowed}.site-button--small{min-height:32px;padding:4px 8px}.site-button[hidden]{display:none}.reading-column{width:100%;max-width:var(--reading-width);margin-inline:auto}.site-page-content{display:flex;flex-direction:column;gap:24px;min-width:0;width:100%}@media (min-width: 1000px){.pixel-desktop,.interior-shell{background-image:radial-gradient(var(--rule) .5px,transparent .5px);background-size:9px 9px}}
