@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../media/2e482247ef29dcb9-s.0z23a3hpu8ttr.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../media/068feab4deafcd0f-s.02aqyp7acl16b.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../media/db545dba463279ae-s.p.14a9xpaqsbppk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo Fallback;src:local(Arial);ascent-override:88.96%;descent-override:21.28%;line-gap-override:0.0%;size-adjust:98.7%}.b8sx-q_className{font-family:Archivo,Archivo Fallback;font-style:normal}.b8sx-q_variable{--font-archivo:"Archivo", "Archivo Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/faab88e4be272d29-s.3zhtymus0wdqb.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a45aa1001bf9176f-s.3nkuoiize4urq.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/41ba59f553543ecf-s.1da667lu-u79a.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/67bba87670b402d1-s.1i05ju5aeyhye.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d6c1ff7e86974212-s.p.1dgcou5jor5q_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e60f3e45d49b65c3-s.2ontrj8z1-o25.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1f5edaafc8393c36-s.33iiebxkijmxa.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/f1c080d8717d5d0c-s.2nzetymcmw3t7.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/afc8e0e4a8c58d89-s.0_f09-l1omku8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2880e9b87afbd5d9-s.p.0fcfx2a-jndc5.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.zMfHIW_className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.zMfHIW_variable{--font-plex-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
:root{--font-display:var(--font-archivo), system-ui, sans-serif;--font-body:var(--font-archivo), system-ui, sans-serif;--font-mono:var(--font-plex-mono), ui-monospace, monospace;--text-h1:clamp(42px, 4.4vw, 66px);--text-h2-blog:clamp(36px, 4.4vw, 64px);--text-article-title:clamp(40px, 5vw, 72px);--text-feature-title:clamp(30px, 3.4vw, 48px);--text-row-title:23px;--text-body:17px;--text-standfirst:21px;--text-mono:13px;--border-width:2px;--radius-window:14px;--radius-button:10px;--radius-pill:999px;--yellow:#f6c445;--green:#2bb58c;--terminal-green:#9be7c9;--ink:#151515}:root,:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#15131c;--bg-dot:#2e2a3d;--surface:#23202e;--surface-2:#2e2a3d;--surface-deep:#0d0c12;--line:#ede8dc;--divider:#3a3548;--dashed:#6a6380;--shadow:#4e4768;--text:#ede8dc;--text-strong:#fffdf7;--text-2:#d8d2c4;--text-muted:#b5ae9e;--on-color:#15131c;--link-hover:#ff9b78;--accent:#ff7a50;--periwinkle:#9ea8ff;--terminal-divider:#3a3548;--terminal-link:#ede8dc;--terminal-text:#ede8dc;--toc-label:var(--yellow);--dot-light:#ede8dc;--tabbar:#1a1822;--tab-idle:#2a2736;--chip-acuitymd:#9fe3ee;--chip-expa:#ede8dc;--chip-medallion:#a8ebd2;--chip-dandy:#c3c9ff;--chip-foko:#ffd98a;--chip-hirefast:#ffb9a3;--chip-productshot:#e1d2ff}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#eeebe3;--bg-dot:#cfc9bb;--surface:#fffdf7;--surface-2:#fff6d6;--surface-deep:#151515;--line:#151515;--divider:#151515;--dashed:#151515;--shadow:#151515;--text:#151515;--text-strong:#151515;--text-2:#151515;--text-muted:#4a463e;--on-color:#151515;--link-hover:#b23a17;--accent:#eb5a32;--periwinkle:#6c7bff;--terminal-divider:#3a3a3a;--terminal-link:#fffdf7;--terminal-text:#eeebe3;--toc-label:#b23a17;--dot-light:#fffdf7;--tabbar:#e4e0d5;--tab-idle:#efebe2;--chip-acuitymd:#cdeff5;--chip-expa:#fffdf7;--chip-medallion:#c9f0e1;--chip-dandy:#dce0ff;--chip-foko:#ffe3a3;--chip-hirefast:#ffd1c2;--chip-productshot:#f0e6ff}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#eeebe3;--bg-dot:#cfc9bb;--surface:#fffdf7;--surface-2:#fff6d6;--surface-deep:#151515;--line:#151515;--divider:#151515;--dashed:#151515;--shadow:#151515;--text:#151515;--text-strong:#151515;--text-2:#151515;--text-muted:#4a463e;--on-color:#151515;--link-hover:#b23a17;--accent:#eb5a32;--periwinkle:#6c7bff;--terminal-divider:#3a3a3a;--terminal-link:#fffdf7;--terminal-text:#eeebe3;--toc-label:#b23a17;--dot-light:#fffdf7;--tabbar:#e4e0d5;--tab-idle:#efebe2;--chip-acuitymd:#cdeff5;--chip-expa:#fffdf7;--chip-medallion:#c9f0e1;--chip-dandy:#dce0ff;--chip-foko:#ffe3a3;--chip-hirefast:#ffd1c2;--chip-productshot:#f0e6ff}.only-light{display:none}:root[data-theme=light] .only-light{display:revert}:root[data-theme=light] .only-dark{display:none}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .only-light{display:revert}:root:not([data-theme=dark]) .only-dark{display:none}}*,:before,:after{box-sizing:border-box}body{background-color:var(--bg);background-image:radial-gradient(var(--bg-dot) 1.2px, transparent 1.2px);min-height:100vh;color:var(--text);font-family:var(--font-body);font-size:var(--text-body);-webkit-font-smoothing:antialiased;background-size:22px 22px;margin:0;line-height:1.5;overflow-x:hidden}a{color:var(--text)}a:hover{color:var(--link-hover)}button{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.mono{font-family:var(--font-mono)}.display{font-family:var(--font-display);letter-spacing:-.02em;font-weight:900;font-stretch:112%}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:20;border:2px solid var(--line);border-radius:var(--radius-button);background:var(--yellow);color:var(--ink);padding:10px 14px;font-weight:800;position:absolute;top:-60px;left:12px}.skip-link:focus{top:12px}.stars{pointer-events:none;position:absolute;inset:0;overflow:hidden}.star{border-radius:50%;position:absolute}.desktop{flex-wrap:wrap;align-items:stretch;gap:28px;max-width:1680px;margin:0 auto;padding:clamp(16px,2.6vw,36px) clamp(16px,3vw,40px) 64px;display:flex;position:relative}.left-col{flex-direction:column;flex:340px;gap:26px;min-width:0;display:flex}.win{background:var(--surface);border:2px solid var(--line);border-radius:var(--radius-window);box-shadow:8px 8px 0 var(--shadow);overflow:hidden}.titlebar{border-bottom:2px solid var(--line);min-height:44px;color:var(--ink);font-family:var(--font-mono);flex-wrap:wrap;align-items:center;gap:8px;padding:6px 14px;font-size:13px;font-weight:600;display:flex}.titlebar--accent{background:var(--accent)}.titlebar--periwinkle{background:var(--periwinkle)}.titlebar__dots{gap:8px;margin-right:6px;display:inline-flex}.titlebar__dot{border:2px solid var(--ink);border-radius:50%;width:12px;height:12px}.titlebar__meta{margin-left:auto}.hello__body{flex-direction:column;gap:14px;padding:clamp(18px,2.4vw,30px);display:flex}.hello__intro{flex-direction:column;gap:14px;display:flex}.hello__photo-wrap{align-self:flex-start;margin-top:8px;position:relative}.hello__photo{aspect-ratio:1;object-fit:cover;border:2px solid var(--line);background:var(--periwinkle);width:clamp(110px,10vw,150px);height:auto;box-shadow:5px 5px 0 var(--shadow);border-radius:24px;display:block;rotate:-3deg}.hello__bubble{border:2px solid var(--line);background:var(--yellow);color:var(--ink);border-radius:14px 14px 14px 2px;padding:5px 11px;font-size:15px;font-weight:800;line-height:1.3;position:absolute;top:-16px;right:-30px}.hello__name{font-size:var(--text-h1);color:var(--text-strong);margin:0;line-height:.92}.hello__tagline{font-family:var(--font-mono);margin:0;font-size:15px;font-weight:600}.caret{vertical-align:-2px;background:var(--accent);width:.55em;height:1.05em;margin-left:4px;animation:1s step-end infinite blink;display:inline-block}.caret--text{vertical-align:baseline;background:0 0;width:auto;height:auto;margin:0}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}.hello__bio{color:var(--text-2);margin:0;font-size:17px;line-height:1.5}.hello__bio--short{display:none}.chips{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.chip{border:2px solid var(--line);border-radius:var(--radius-pill);color:var(--ink);padding:5px 11px;font-size:13px;font-weight:700;line-height:1.4;text-decoration:none;display:inline-block}a.chip:hover{color:var(--ink)}.chip small{font-size:.85em;font-weight:500}.chip__short{display:none}.chip__unicorn{margin-left:4px;font-size:1.05em;line-height:1}.hello__actions{gap:10px;display:flex}.hello__actions .btn{font-size:13px}.btn{border:2px solid var(--line);border-radius:var(--radius-button);background:var(--surface);min-height:44px;color:var(--text);box-shadow:4px 4px 0 var(--shadow);cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:800;text-decoration:none;transition:box-shadow .15s;display:inline-flex}.btn:hover{color:var(--text);box-shadow:6px 6px 0 var(--shadow)}.btn:active{box-shadow:1px 1px 0 var(--shadow)}.btn--accent,.btn--accent:hover{background:var(--accent);color:var(--ink)}.btn--yellow,.btn--yellow:hover{background:var(--yellow);color:var(--ink)}.btn--small{border-color:var(--ink);background:var(--dot-light);min-height:36px;color:var(--ink);box-shadow:3px 3px 0 var(--ink);font-family:var(--font-mono);border-radius:8px;padding:0 14px;font-size:13px;font-weight:600}.btn--small:hover{color:var(--ink);box-shadow:5px 5px 0 var(--ink)}.btn--small:active{box-shadow:1px 1px 0 var(--ink)}.talks{background:var(--surface-deep);color:var(--terminal-text);box-shadow:8px 8px 0 var(--accent);font-family:var(--font-mono)}.talks__bar{border-bottom:2px solid var(--terminal-divider);padding:10px 14px;font-size:13px;font-weight:600}.talks__body{flex-direction:column;gap:12px;padding:18px 20px 22px;font-size:13px;line-height:1.5;display:flex}.talks__entries{flex-direction:column;gap:12px;display:flex}.talks__heading{color:#fffdf7;margin:0;font-size:24px;line-height:1.1}.talks__entry{flex-direction:column;gap:2px;margin:0;display:flex}.talks__date{color:var(--yellow)}.talks__entry a{color:var(--terminal-link);font-weight:600}.talks__entry a:hover{color:var(--yellow)}.talks__venue{color:#a8a294}.talks__soon{border:2px solid var(--ink);border-radius:var(--radius-pill);background:var(--yellow);color:var(--ink);vertical-align:2px;margin-left:10px;padding:0 8px;font-size:11px;font-weight:600}.talks__tail{color:var(--terminal-green);margin:0}.note{border:2px solid var(--line);border-radius:var(--radius-window);background:var(--yellow);color:var(--ink);padding:18px 20px;font-size:15px;line-height:1.5;rotate:-.6deg}.note a{color:var(--ink);font-weight:800}.note p{margin:0}.note__fine{font-family:var(--font-mono);font-size:12px;margin-top:8px!important}.blog{flex-direction:column;flex:2 640px;min-width:0;display:flex}.blog__pane{flex-direction:column;flex:auto;display:flex}.blog__list{flex-direction:column;gap:26px;padding:clamp(22px,3vw,40px);display:flex}.blog__head{flex-wrap:wrap;align-items:flex-end;gap:6px 18px;display:flex}.blog__heading{font-size:var(--text-h2-blog);color:var(--text-strong);margin:0;line-height:.95}.blog__subtitle{font-family:var(--font-mono);color:var(--text-muted);margin:0 0 8px;font-size:14px}.feat{background:var(--accent);color:var(--ink);border:2px solid var(--line);border-radius:var(--radius-window);box-shadow:6px 6px 0 var(--shadow);flex-direction:column;gap:14px;padding:clamp(22px,2.6vw,34px);text-decoration:none;transition:box-shadow .25s;display:flex;position:relative}.feat:hover{color:var(--ink);box-shadow:9px 9px 0 var(--shadow)}.feat__sticker{border:2px solid var(--ink);border-radius:var(--radius-pill);background:var(--yellow);font-family:var(--font-mono);padding:4px 12px;font-size:12px;font-weight:600;position:absolute;top:-14px;right:22px}.feat__date{font-family:var(--font-mono);font-size:13px;font-weight:600}.feat__title{font-size:var(--text-feature-title);line-height:1}.feat__summary{max-width:60ch;font-size:17px;line-height:1.5}.feat__cta{align-items:center;gap:8px;font-weight:800;display:inline-flex}.rows{border-top:2px solid var(--divider);margin:0;padding:0;list-style:none}.row{border-bottom:2px solid var(--divider);color:var(--text);flex-wrap:wrap;align-items:center;gap:6px 18px;padding:20px 6px;text-decoration:none;transition:background .15s;display:flex}.row:hover{background:var(--surface-2);color:var(--text)}.row__date{width:96px;font-family:var(--font-mono);color:var(--text-muted);font-size:13px}.row__main{flex-direction:column;flex:320px;gap:4px;min-width:0;display:flex}.row__title{font-size:var(--text-row-title);color:var(--text-strong);font-weight:800;line-height:1.15}.row__summary{color:var(--text-muted);font-size:15px;line-height:1.45}.blog__empty{border:2px dashed var(--dashed);font-family:var(--font-mono);color:var(--text-muted);text-align:center;border-radius:12px;padding:24px}.tabbar{background:var(--tabbar);border-bottom:2px solid var(--line);scrollbar-width:none;align-items:flex-end;gap:6px;padding:12px 14px 0;display:flex;overflow-x:auto}.tabbar__dots{align-self:center;gap:7px;margin:0 10px 10px 2px;display:flex}.tabbar__dots span{border:2px solid var(--ink);border-radius:50%;width:12px;height:12px}.tabbar__tabs{align-items:flex-end;gap:6px;display:flex}.tab-wrap{transform-origin:50% 100%;display:block}.tab{border:2px solid var(--line);background:var(--tab-idle);min-height:44px;color:var(--text-muted);font-family:var(--font-mono);white-space:nowrap;border-radius:12px 12px 0 0;align-items:center;gap:8px;margin-bottom:-2px;padding:0 18px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.tab:hover{color:var(--text)}.tab--active,.tab--active:hover{background:var(--surface);border-bottom-color:var(--surface);color:var(--text-strong)}.tabbar__plus{font-family:var(--font-mono);color:var(--dashed);align-self:center;margin:0 0 10px 6px;font-size:20px}.addressbar{border-bottom:2px solid var(--divider);align-items:center;gap:10px;padding:10px 14px;display:flex}.addressbar__nav{gap:2px;display:flex}.addressbar__nav button{width:32px;height:32px;color:var(--text-muted);font-family:var(--font-mono);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0;font-size:16px}.addressbar__nav button:hover{background:var(--surface-2);color:var(--text)}.addressbar__url{border:2px solid var(--divider);border-radius:var(--radius-pill);background:var(--bg);min-width:0;font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;flex:auto;padding:8px 14px;font-size:14px;overflow:hidden}.addressbar__host{color:var(--text-muted)}.addressbar__star{color:var(--yellow);font-size:18px}.tabwin__body{flex-direction:column;flex:auto;min-width:0;display:flex}.tabwin__body .titlebar__dots{display:none}.shelves,.games{flex-direction:column;gap:26px;padding:clamp(22px,3vw,34px);display:flex}.shelves__head{flex-wrap:wrap;align-items:baseline;gap:4px 16px;display:flex}.shelves__heading{color:var(--text-strong);margin:0;font-size:clamp(34px,3.6vw,48px);line-height:1}.shelves__sub{font-family:var(--font-mono);color:var(--text-muted);margin:0;font-size:13px}.shelves__credit{font-family:var(--font-mono);color:var(--text-muted);margin:0;font-size:12px}.shelf{flex-direction:column;display:flex}.shelf__head{flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-bottom:2px;display:flex}.shelf__name{color:var(--text-strong);margin:0;font-size:22px}.shelf__meta,.shelf__link{font-family:var(--font-mono);color:var(--text-muted);font-size:12px}.shelf__link{color:var(--text);margin-left:auto;font-weight:600}.shelf__row{scroll-snap-type:x proximity;scrollbar-width:thin;align-items:flex-end;gap:14px;padding:26px 12px 0;display:flex;overflow-x:auto}.shelf__empty{font-family:var(--font-mono);color:var(--text-muted);margin:0;padding:26px 12px 14px;font-size:13px}.shelf__plank{border:2px solid var(--line);background:#6b4e37;border-radius:3px;height:14px;box-shadow:0 6px #3a2a1e}.dvd{border:2px solid var(--line);cursor:pointer;scroll-snap-align:start;transform-origin:50% 100%;background:#3a3548;border-radius:3px 6px 6px 3px;flex:0 0 96px;height:144px;padding:0;position:relative;overflow:hidden}.dvd--selected{border-color:var(--yellow);box-shadow:0 0 0 3px var(--yellow)}.dvd__hinge{z-index:2;background:#00000059;width:8px;position:absolute;inset:0 auto 0 0}.dvd__band{z-index:2;color:#fffdf7;height:15px;font-family:var(--font-mono);text-align:center;background:#0000008c;font-size:9px;font-weight:600;line-height:15px;position:absolute;top:0;left:8px;right:0}.dvd__poster{object-fit:cover;width:calc(100% - 8px);height:100%;position:absolute;inset:0 0 0 8px}.dvd__poster--empty{color:#ede8dc;text-align:center;background:repeating-linear-gradient(135deg,#fffdf71f 0 8px,#0000 8px 16px);justify-content:center;align-items:center;padding:18px 6px;font-size:12px;font-weight:800;display:flex}.dvd__label{z-index:2;color:#fffdf7;font-family:var(--font-mono);text-align:left;white-space:nowrap;text-overflow:ellipsis;background:#15131cd1;padding:3px 5px;font-size:9px;font-weight:600;line-height:1.25;position:absolute;bottom:0;left:8px;right:0;overflow:hidden}.review-card{background:var(--surface-2);border:2px solid var(--line);box-shadow:6px 6px 0 var(--shadow);border-radius:12px;gap:22px;padding:18px;display:flex}.review-card__poster{object-fit:cover;border:2px solid var(--line);border-radius:3px 6px 6px 3px;flex:0 0 120px;width:120px;height:180px;rotate:-2deg}.review-card__body{flex-direction:column;flex:auto;gap:8px;min-width:0;display:flex}.review-card__top{align-items:flex-start;gap:10px;display:flex}.review-card__title{color:var(--text-strong);flex:auto;margin:0;font-size:30px;line-height:1}.review-card__close{border:2px solid var(--line);background:var(--surface);width:36px;height:36px;color:var(--text);cursor:pointer;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;display:flex}.review-card__meta{font-family:var(--font-mono);color:var(--text-muted);margin:0;font-size:13px}.review-card__rating{align-items:center;gap:10px;margin:0;font-size:22px;display:flex}.stars-rating{color:var(--yellow);letter-spacing:2px}:root[data-theme=light] .stars-rating{color:#b27a00}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .stars-rating{color:#b27a00}}.review-card__unrated{font-family:var(--font-mono);color:var(--text-muted);font-size:12px}.review-card__liked{color:#ff6b9a}.review-card__review{color:var(--text-2);margin:0;font-size:16px;line-height:1.5}.review-card__link{font-family:var(--font-mono);align-self:flex-start;font-size:13px;font-weight:600}.pegboard{border:2px solid var(--line);background-color:#3b3150;background-image:radial-gradient(#221c30 3px,#0000 3.5px);background-size:26px 26px;border-radius:10px;grid-template-columns:repeat(auto-fill,minmax(124px,1fr));align-content:start;gap:34px 22px;min-height:260px;margin:0;padding:34px 28px 28px;list-style:none;display:grid}.pegboard__empty{color:#ede8dc;font-family:var(--font-mono);background:#15131cb3;border-radius:8px;grid-column:1/-1;place-self:center;padding:10px 16px;font-size:13px}.cart{outline-offset:6px;flex-direction:column;align-items:center;display:flex;position:relative}.cart__peg{z-index:1;background:#b5ae9e;border:2px solid #15131c;border-radius:50%;width:12px;height:12px;margin-bottom:-4px;position:relative}.cart__body{clip-path:polygon(12% 0,88% 0,100% 8%,100% 100%,0 100%,0 8%);border:2px solid #15131c;flex-direction:column;gap:7px;width:100%;padding:12px 10px 14px;display:flex}.cart__grip{background:repeating-linear-gradient(90deg,#15131c66 0 3px,#0000 3px 7px);height:9px;margin:0 4px}.cart__label{color:#15131c;background:#fffdf5;border:2px solid #15131c;border-radius:4px;flex-direction:column;gap:5px;padding:7px;display:flex}.cart__art{aspect-ratio:460/215;object-fit:cover;border-radius:2px;width:100%;height:auto;display:block}.cart__title{font-family:var(--font-mono);font-size:11px;font-weight:600;line-height:1.25}.cart__platform{font-family:var(--font-mono);color:#4a463e;font-size:9px}.cart__playing{border-radius:var(--radius-pill);background:var(--yellow);color:#15131c;font-family:var(--font-mono);border:2px solid #15131c;padding:2px 7px;font-size:10px;font-weight:600;position:absolute;top:4px;right:-14px;rotate:8deg}.cart__take{z-index:3;background:var(--yellow);color:#15131c;opacity:0;pointer-events:none;border:2px solid #15131c;border-radius:8px;width:max-content;max-width:200px;padding:6px 10px;font-size:13px;line-height:1.35;transition:opacity .15s;position:absolute;top:calc(100% + 8px);left:50%;translate:-50%}.cart:hover .cart__take,.cart:focus-visible .cart__take{opacity:1}.reader-bar{gap:10px;padding:6px 10px 6px 14px}.close-btn{border:2px solid var(--ink);background:var(--accent);width:30px;height:30px;color:var(--ink);border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;display:flex;position:relative}.close-btn:after{content:"";position:absolute;inset:-8px}.reader-bar__path{overflow-wrap:anywhere;min-width:0}.reader-bar .btn--small{margin-left:auto}.article{flex-direction:column;gap:22px;max-width:860px;padding:clamp(24px,4vw,64px) clamp(22px,5vw,80px);display:flex}.article__meta{font-family:var(--font-mono);color:var(--text-muted);margin:0;font-size:14px;font-weight:600}.article__title{font-size:var(--text-article-title);color:var(--text-strong);overflow-wrap:break-word;margin:0;line-height:.95}.article__standfirst{font-size:var(--text-standfirst);border-left:6px solid var(--accent);color:var(--text-2);margin:0;padding-left:16px;line-height:1.5}.toc{border:2px solid var(--line);background:var(--surface-2);border-radius:12px;padding:18px 22px}.toc__label{font-family:var(--font-mono);color:var(--toc-label);margin:0 0 10px;font-size:13px;font-weight:600}.toc ol{flex-direction:column;gap:6px;margin:0;padding-left:22px;font-size:17px;font-weight:700;display:flex}.toc a{text-decoration:none}.toc a:hover{text-decoration:underline}.pager{flex-wrap:wrap;justify-content:space-between;gap:12px;padding-top:6px;display:flex}.pager .btn:only-child.btn--older{margin-left:auto}.prose{color:var(--text);overflow-wrap:break-word;font-size:18px;line-height:1.65}.prose>:first-child{margin-top:0}.prose p{margin:0 0 1em}.prose h3,.prose h4,.prose h5{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text-strong);margin:1.8em 0 .5em;font-weight:900;font-stretch:112%;line-height:1.1}.prose h3{font-size:clamp(26px,2.6vw,34px)}.prose h4{font-size:24px}.prose h5{font-size:20px}.prose a{color:var(--text-strong);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:3px;text-decoration-thickness:2px}.prose a:hover{color:var(--link-hover)}.prose ul,.prose ol{margin:0 0 1em;padding-left:1.5em}.prose li{margin:.25em 0}.prose li>ul,.prose li>ol{margin:.25em 0 0}.prose ul.todo{padding-left:.2em;list-style:none}.prose ul.todo input{accent-color:var(--accent);margin-right:.5em}.prose blockquote{border-left:6px solid var(--yellow);color:var(--text-2);margin:1.4em 0;padding:4px 0 4px 18px;font-size:1.1em;font-style:italic}.prose code{border:1.5px solid var(--divider);background:var(--surface-2);font-family:var(--font-mono);border-radius:6px;padding:.1em .35em;font-size:.85em}.prose pre{border:2px solid var(--line);background:var(--surface-deep);color:#ede8dc;box-shadow:5px 5px 0 var(--shadow);border-radius:12px;margin:1.4em 0;padding:0;overflow:hidden}.prose pre .code__bar{border-bottom:2px solid var(--terminal-divider);font-family:var(--font-mono);color:var(--terminal-green);padding:6px 14px;font-size:12px;font-weight:600;display:block}.prose pre code{color:inherit;background:0 0;border:0;padding:16px 18px;font-size:14px;line-height:1.6;display:block;overflow-x:auto}.prose hr{border:0;border-top:2px dashed var(--dashed);margin:2em 0}.prose figure{margin:1.6em 0}.prose img{border:2px solid var(--line);max-width:100%;height:auto;box-shadow:5px 5px 0 var(--shadow);border-radius:12px;display:block}.prose figcaption{font-family:var(--font-mono);color:var(--text-muted);margin-top:10px;font-size:13px}.prose .callout{border:2px solid var(--line);background:var(--surface-2);border-radius:12px;gap:12px;margin:1.4em 0;padding:14px 18px;display:flex}.prose .callout>div>:last-child{margin-bottom:0}.prose details{border:2px solid var(--divider);border-radius:10px;margin:1em 0;padding:10px 14px}.prose summary{cursor:pointer;font-weight:700}.prose .bookmark{border:2px solid var(--line);font-family:var(--font-mono);overflow-wrap:anywhere;border-radius:10px;margin:1.2em 0;padding:12px 16px;font-size:14px;text-decoration:none;display:block}.prose .table-wrap{border:2px solid var(--line);border-radius:12px;margin:1.4em 0;overflow-x:auto}.prose table{border-collapse:collapse;width:100%;font-size:16px}.prose th,.prose td{border-bottom:2px solid var(--divider);text-align:left;vertical-align:top;padding:8px 12px}.prose tr:last-child td{border-bottom:0}.prose th{background:var(--surface-2);font-weight:800}.prose .columns{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;display:grid}.prose .video{aspect-ratio:16/9;border:2px solid var(--line);border-radius:12px;width:100%}.prose .c-gray{color:var(--text-muted)}.prose .c-yellow_background,.prose .c-orange_background,.prose .c-green_background,.prose .c-blue_background,.prose .c-purple_background,.prose .c-pink_background,.prose .c-red_background,.prose .c-brown_background,.prose .c-gray_background{color:var(--ink);border-radius:4px;padding:0 .2em}.prose .c-yellow_background{background:var(--chip-foko)}.prose .c-orange_background{background:var(--chip-hirefast)}.prose .c-green_background{background:var(--chip-medallion)}.prose .c-blue_background{background:var(--chip-dandy)}.prose .c-purple_background,.prose .c-pink_background{background:var(--chip-productshot)}.prose .c-red_background{background:var(--chip-hirefast)}.prose .c-brown_background,.prose .c-gray_background{background:var(--chip-expa)}.lost{flex-direction:column;align-items:flex-start;gap:18px;padding:clamp(24px,4vw,64px);display:flex}@media (max-width:720px){.desktop{gap:22px;padding:18px 16px 48px}.left-col{display:contents}.left-col>*{flex:100%;order:3}.left-col>.hello{order:1}.blog{flex-basis:100%;order:2}.win{box-shadow:6px 6px 0 var(--shadow)}.talks{box-shadow:6px 6px 0 var(--accent)}.titlebar{min-height:0;padding:8px 12px;font-size:12px}.titlebar__dot{width:10px;height:10px}.titlebar__dots{gap:6px}.hello .titlebar__meta,.blog .titlebar__meta{display:none}.reader-bar{flex-wrap:nowrap;padding:6px 8px 6px 12px}.reader-bar .close-btn{display:none}.reader-bar .btn--small{white-space:nowrap;flex:none}.desktop:has(.article) .hello{display:none}.reader-bar__path{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.back-long{display:none}.hello__body{gap:12px;padding:20px 18px 18px}.hello__intro{flex-direction:row;align-items:center;gap:16px}.hello__photo-wrap{flex:none;margin-top:0}.hello__photo{width:104px;box-shadow:4px 4px 0 var(--shadow);border-radius:22px}.hello__bubble{border-radius:12px 12px 12px 2px;padding:3px 9px;font-size:14px;top:-14px;right:-18px}.hello__name{font-size:clamp(36px,11vw,44px)}.hello__tagline{font-size:14px}.hello__bio{display:none}.hello__bio--short{font-size:16px;line-height:1.45;display:block}.chips{gap:6px;padding-top:4px}.chip{padding:4px 10px}.chip__full{display:none}.chip__short{display:inline}.hello__actions{padding-top:6px}.hello__actions .btn{box-shadow:3px 3px 0 var(--shadow)}.blog__list{gap:22px;padding:22px 16px}.tabbar{padding:10px 10px 0}.tabbar__dots,.tabbar__plus,.addressbar__nav,.addressbar__star{display:none}.tab{padding:0 12px}.addressbar{padding:8px 10px}.addressbar__url{padding:6px 12px;font-size:12px}.shelves,.games{padding:20px 14px 24px}.review-card{flex-direction:column;gap:14px}.review-card__poster{flex-basis:auto;width:96px;height:144px}.pegboard{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 18px;padding:28px 16px 22px}.row{gap:4px;padding:14px 4px}.row__date{width:auto;font-size:12px}.row__title{font-size:20px}.row__arrow{display:none}.article{padding:22px 18px 28px}.prose{font-size:17px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
