@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700&display=swap";
*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.flex{display:flex}.grid{display:grid}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}:root{--bg:#121414;--panel:#191b1b;--ink:#e7e7df;--muted:#929895;--rule:#353a39;--accent:#95a8ad}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);margin:0;font-family:Manrope,Arial,sans-serif;font-size:14px;line-height:1.55}a{color:inherit;text-decoration:none}a:focus-visible{outline:1px solid var(--ink);outline-offset:5px}.shell{width:min(100% - 72px,1160px);margin:auto}.site-header{border-bottom:1px solid var(--rule);background:var(--bg);z-index:10;height:66px;position:sticky;top:0}.header-inner{align-items:center;height:100%;display:flex}.wordmark{letter-spacing:.08em;align-items:center;gap:9px;font:500 11px DM Mono,monospace;display:flex}.mark{border-left:1px solid var(--accent);border-bottom:1px solid var(--accent);align-items:end;gap:2px;width:15px;height:15px;padding:0 0 2px 3px;display:flex}.mark i{background:var(--accent);width:1px;display:block}.mark i:first-child{height:4px}.mark i:nth-child(2){height:8px}.mark i:nth-child(3){height:6px}nav{gap:30px;margin:auto;display:flex}nav a,.header-resume{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font:500 10px DM Mono,monospace;transition:color .18s;position:relative}nav a:after{content:"";background:var(--ink);width:0;height:1px;transition:width .18s;position:absolute;bottom:-6px;left:0}nav a:hover,.header-resume:hover{color:var(--ink)}nav a:hover:after{width:100%}.header-resume{border-left:1px solid var(--rule);padding-left:22px}.footer{border-top:1px solid var(--rule);margin-top:120px}.footer-inner{letter-spacing:.05em;min-height:77px;color:var(--muted);align-items:center;gap:28px;font:10px DM Mono,monospace;display:flex}.footer-inner div{gap:20px;margin-left:auto;display:flex}.footer a:hover{color:var(--ink)}.eyebrow{letter-spacing:.11em;color:var(--muted);text-transform:uppercase;font:500 10px DM Mono,monospace}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.065em;font-size:clamp(40px,5.5vw,76px);font-weight:500;line-height:.95}h2{letter-spacing:-.035em;font-size:18px}.text-link{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font:10px DM Mono,monospace}.arrow{margin-left:6px;transition:transform .18s;display:inline-block}a:hover .arrow{transform:translate(3px)}.diagonal{transform:rotate(-45deg)}a:hover .diagonal{transform:rotate(-45deg)translate(3px)}.home-intro{border-bottom:1px solid var(--rule);padding:112px 0 94px}.home-intro .eyebrow{margin-bottom:35px}.home-intro h1{text-transform:uppercase;margin:0 0 59px}.intro-grid{border-top:1px solid var(--rule);grid-template-columns:1fr 1.45fr 1fr;align-items:end;gap:28px;padding-top:17px;display:grid}.intro-grid p{margin:0;font-size:15px;line-height:1.65}.intro-grid p:first-child{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font:10px DM Mono,monospace}.micro-chart{border-bottom:1px solid var(--accent);align-items:end;gap:5px;width:120px;height:38px;margin-left:auto;padding:0 0 4px 5px;display:flex}.micro-chart i{background:var(--accent);width:1px;display:block}.micro-chart i:first-child{height:11px}.micro-chart i:nth-child(2){height:19px}.micro-chart i:nth-child(3){height:9px}.micro-chart i:nth-child(4){height:28px}.micro-chart i:nth-child(5){height:16px}.micro-chart i:nth-child(6){height:24px}.section-head{justify-content:space-between;align-items:center;margin-bottom:2px;display:flex}.project-index{border-top:1px solid var(--rule)}.project-row{border-bottom:1px solid var(--rule);grid-template-columns:70px 1.35fr .8fr 24px;align-items:start;gap:22px;padding:24px 0;transition:padding .18s,background .18s;display:grid}.project-row:hover{background:var(--panel);padding-left:12px;padding-right:12px}.project-number,.project-name,.project-domain{letter-spacing:.07em;color:var(--muted);font:10px DM Mono,monospace}.project-main h3{letter-spacing:-.04em;margin:3px 0 6px;font-size:21px;font-weight:500}.project-main p{color:var(--muted);max-width:530px;margin:0}.project-name{color:var(--accent)}.project-domain{line-height:1.7}.project-arrow{color:var(--accent);padding-top:10px}.home-log{border-bottom:1px solid var(--rule);grid-template-columns:1fr 2fr 1fr;gap:28px;padding:27px 0;display:grid}.home-log p{margin:0;line-height:1.7}.home-log span{color:var(--muted);text-align:right;font:10px DM Mono,monospace}.listing-page,.personal-page{padding-top:92px}.listing-head{grid-template-columns:1.35fr 1fr;gap:30px;margin:43px 0 72px;display:grid}.listing-head h1{text-transform:uppercase;margin:0}.listing-head p{color:var(--muted);max-width:400px;margin:0;font-size:15px;line-height:1.7}.record{padding-top:43px}.back-link{color:var(--muted);letter-spacing:.08em;font:10px DM Mono,monospace}.record-head{border-bottom:1px solid var(--rule);padding:68px 0 45px}.record-head h1{text-transform:uppercase;margin:25px 0 10px;font-size:clamp(48px,7vw,92px)}.record-head>p:last-child{color:var(--accent);margin:0;font-size:18px}.record-meta{border-bottom:1px solid var(--rule);grid-template-columns:1fr 1fr 2fr;display:grid}.record-meta div{min-height:79px;padding:17px 18px 21px 0}.record-meta div+div{border-left:1px solid var(--rule);padding-left:18px}.record-meta span,.record-figure>span{letter-spacing:.08em;color:var(--muted);margin-bottom:10px;font:10px DM Mono,monospace;display:block}.record-meta b{font-size:12px;font-weight:500;display:block}.record-figure{border-bottom:1px solid var(--rule);background:#1a1f20;height:300px;padding:20px;position:relative;overflow:hidden}.record-figure p{color:var(--muted);margin:0;font-size:11px;position:absolute;bottom:16px;left:20px}.plot{background:repeating-linear-gradient(0deg,#0000,#0000 59px,#273031 60px),repeating-linear-gradient(90deg,#0000,#0000 59px,#273031 60px);border-left:1px solid #3a4445;align-items:end;gap:18px;width:65%;height:100%;padding:0 35px 35px;display:flex;position:absolute;bottom:0;right:0}.plot i{background:var(--accent);opacity:.75;width:2px;display:block}.plot i:first-child{height:22%}.plot i:nth-child(2){height:49%}.plot i:nth-child(3){height:36%}.plot i:nth-child(4){height:70%}.plot i:nth-child(5){height:55%}.plot i:nth-child(6){height:82%}.plot i:nth-child(7){height:66%}.record-grid{grid-template-columns:1fr 1fr;gap:0 70px;padding:64px 10% 20px;display:grid}.record-grid section{border-top:1px solid var(--rule);padding:16px 0 38px}.record-grid h2{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);font:500 10px DM Mono,monospace}.record-grid p{color:var(--muted);max-width:400px}.record-github{border-top:1px solid var(--ink);letter-spacing:.08em;color:var(--accent);padding:17px 0 65px;font:10px DM Mono,monospace;display:block}.writing-index{border-top:1px solid var(--rule)}.writing-index article{border-bottom:1px solid var(--rule);grid-template-columns:180px 1fr 20px;gap:25px;padding:25px 0;display:grid}.writing-index span,.writing-index b{color:var(--muted);font:400 10px DM Mono,monospace}.placeholder-note{color:var(--muted);margin-top:20px;font:10px DM Mono,monospace}.placeholder-note code{color:var(--accent)}.personal-intro{grid-template-columns:1.4fr 1fr;gap:50px;margin:44px 0 100px;display:grid}.personal-intro h1{text-transform:uppercase;margin:0}.personal-intro p{color:var(--muted);margin:0;font-size:16px;line-height:1.75}.personal-grid{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);grid-template-columns:1fr 1fr 1fr;display:grid}.personal-grid section{padding:20px 25px 34px 0}.personal-grid section+section{border-left:1px solid var(--rule);padding-left:25px}.personal-grid section>p:last-child{color:var(--muted);margin:24px 0 0;font-size:13px;line-height:1.7}.photo-placeholder{border:1px solid var(--rule);text-align:center;letter-spacing:.08em;height:125px;color:var(--muted);justify-content:center;align-items:center;margin-top:20px;font:10px DM Mono,monospace;display:flex}.toolset{margin-top:100px}.toolset>p{margin-bottom:17px}.toolset>div{border-top:1px solid var(--rule);grid-template-columns:180px 1fr;padding:12px 0;display:grid}.toolset span{color:var(--accent);font:10px DM Mono,monospace}.toolset p{color:var(--muted);margin:0}.personal-social{border-top:1px solid var(--ink);margin-top:100px;padding:20px 0 65px}.personal-social>a{letter-spacing:-.04em;margin:18px 0 25px;font-size:clamp(24px,3.2vw,44px);display:block}.personal-social div{color:var(--muted);gap:22px;font:10px DM Mono,monospace;display:flex}.personal-social a:hover{color:var(--accent)}@media (max-width:700px){.shell{width:min(100% - 36px,1160px)}.site-header{height:58px}.wordmark{font-size:10px}nav{gap:18px;margin-left:auto;margin-right:0}.header-resume{display:none}.footer{margin-top:75px}.footer-inner{grid-template-columns:1fr 1fr;gap:10px;min-height:0;padding:20px 0;font-size:9px;display:grid}.footer-inner div{grid-column:1/-1;gap:15px;margin:10px 0 0}.home-intro{padding:75px 0 65px}.home-intro h1{margin-bottom:45px;font-size:47px}.intro-grid{grid-template-columns:1fr;gap:18px}.micro-chart{margin:0}.project-row{grid-template-columns:34px 1fr 14px;gap:10px;padding:20px 0}.project-domain{display:none}.project-main h3{font-size:18px}.project-main p{font-size:12px}.project-arrow{padding-top:7px}.home-log{grid-template-columns:1fr;gap:10px;padding:22px 0}.home-log span{text-align:left}.listing-page,.personal-page{padding-top:66px}.listing-head{grid-template-columns:1fr;gap:23px;margin:31px 0 52px}.listing-head h1{font-size:47px}.record{padding-top:31px}.record-head{padding:50px 0 35px}.record-head h1{font-size:52px}.record-head>p:last-child{font-size:15px}.record-meta{grid-template-columns:1fr}.record-meta div,.record-meta div+div{border-left:0;border-bottom:1px solid var(--rule);padding:14px 0}.record-meta div:last-child{border-bottom:0}.record-figure{height:230px}.plot{gap:9px;width:66%;padding:0 16px 22px}.record-grid{grid-template-columns:1fr;gap:0;padding:45px 0 0}.writing-index article{grid-template-columns:1fr 15px;gap:8px;padding:20px 0}.writing-index article span{grid-column:1/-1}.writing-index h2{font-size:17px}.personal-intro{grid-template-columns:1fr;gap:25px;margin:32px 0 65px}.personal-intro h1{font-size:45px}.personal-grid{grid-template-columns:1fr}.personal-grid section,.personal-grid section+section{border-left:0;border-bottom:1px solid var(--rule);padding:19px 0 25px}.personal-grid section:last-child{border-bottom:0}.toolset{margin-top:65px}.toolset>div{grid-template-columns:1fr;gap:4px}.personal-social{margin-top:65px}.personal-social div{flex-wrap:wrap}}:root,[data-theme=dark]{--bg:#101212;--panel:#171a1a;--ink:#e9e8e1;--muted:#8e9693;--rule:#343937;--accent:#9aabad;--chart:#b8c7c6}[data-theme=light]{--bg:#efeee8;--panel:#e4e4dc;--ink:#222625;--muted:#6c7470;--rule:#c8cac1;--accent:#536a70;--chart:#506b6d}body,main,.site-header,.footer,.project-row,.theme-toggle{transition:background-color .28s,color .28s,border-color .28s}.site-header{border-right:1px solid var(--rule);z-index:10;border-bottom:0;flex-direction:column;align-items:flex-start;width:184px;height:100vh;padding:28px 22px;display:flex;position:fixed;top:0;left:0}.site-header .wordmark{color:var(--ink)}.knight-mark{width:34px;height:34px;display:block}.knight-mark svg{width:100%;height:100%}.site-header nav{flex-direction:column;align-items:flex-start;gap:15px;margin:94px 0 0;display:flex}.site-header nav a{letter-spacing:.08em;padding-left:12px;font-size:10px}.site-header nav a:after{background:var(--accent);opacity:0;width:3px;height:3px;top:50%;bottom:auto;left:0;transform:translateY(-50%)}.site-header nav a.active,.site-header nav a:hover{color:var(--ink)}.site-header nav a.active:after{opacity:1;width:3px}.rail-bottom{border-top:1px solid var(--rule);justify-content:space-between;align-items:center;width:100%;margin-top:auto;padding-top:18px;display:flex}.social-icons{align-items:center;gap:10px;display:flex}.social-icons a{color:var(--muted);align-items:center;gap:6px;transition:color .18s,transform .18s;display:flex}.social-icons a:hover{color:var(--ink);transform:translateY(-1px)}.social-icons svg{width:15px;height:15px}.social-icons.labels a{letter-spacing:.06em;text-transform:uppercase;font:10px DM Mono,monospace}.social-icons.labels svg{display:none}.theme-toggle{border:0;border-left:1px solid var(--rule);color:var(--muted);cursor:pointer;background:0 0;padding:0 0 0 12px;font-size:15px;line-height:1}.theme-toggle:hover{color:var(--ink)}main,.footer{margin-left:184px}.shell{width:min(100% - 92px,1120px)}.footer{justify-content:space-between;align-items:center;min-height:100px;padding:0 46px;display:flex}.footer>div:first-child{letter-spacing:.08em;color:var(--muted);text-transform:uppercase;flex-direction:column;font:10px DM Mono,monospace;display:flex}.footer .social-icons{gap:17px}.footer .social-icons svg{width:16px;height:16px}.home-intro h1{text-transform:lowercase;letter-spacing:-.075em;margin-bottom:15px;font-size:clamp(52px,6.4vw,82px)}.home-intro .eyebrow{align-items:center;gap:10px;display:flex}.local-time{font-variant-numeric:tabular-nums;margin-left:auto}.intro-grid{grid-template-columns:.7fr 1.7fr .5fr;padding-top:24px}.intro-grid p:first-child{text-transform:none;letter-spacing:0;font-size:12px;line-height:1.6}.intro-grid p:nth-child(2){max-width:650px;font-size:17px}.micro-chart{width:102px}.work-section{padding-top:66px}.section-head{margin-bottom:11px}.project-row{grid-template-columns:54px 1.15fr 176px .7fr 20px;align-items:center;gap:20px;min-height:152px;padding:18px 0}.project-row:hover{padding-left:8px;padding-right:8px}.project-main h3{font-size:21px}.project-main small{color:var(--accent);margin-top:14px;font:10px/1.65 DM Mono,monospace;display:block}.project-preview{background:var(--panel);border:1px solid var(--rule);height:88px;color:var(--chart);position:relative;overflow:hidden}.project-preview>span{z-index:1;color:var(--muted);letter-spacing:.06em;font:7px DM Mono,monospace;position:absolute;bottom:7px;left:8px}.project-preview svg{stroke:currentColor;fill:none;stroke-width:1.4px;width:100%;height:100%}.project-preview .forecast{stroke-dasharray:4 3}.project-preview.crash path{opacity:.55}.project-preview.crash circle{fill:currentColor;stroke:none}.project-preview.orbit circle:first-child{fill:currentColor;opacity:.18}.project-preview.orbit .node{fill:currentColor;opacity:1}.project-preview.market .area{fill:currentColor;opacity:.12}.project-domain{font-size:9px}.home-log{margin-top:52px}.experience{border-top:1px solid var(--rule);grid-template-columns:1fr 2fr;gap:30px;margin-top:100px;padding-top:20px;display:grid}.experience div{border-left:1px solid var(--rule);padding-left:25px}.experience span{color:var(--accent);font:10px DM Mono,monospace}.experience h2{margin:5px 0;font-size:21px}.experience p{max-width:620px;color:var(--muted);margin:0}.record .project-preview{border:0;border-bottom:1px solid var(--rule);height:310px;margin:0}.record .project-preview>span{font-size:9px;bottom:16px;left:20px}.record .project-preview svg{stroke-width:1.5px;padding:35px 13% 27px}.record-meta div{min-height:88px}.record-grid h2{font-size:10px}.writing-group{margin-top:75px}.writing-group>.eyebrow{margin-bottom:14px}.writing-index>a{border-bottom:1px solid var(--rule);grid-template-columns:55px 1fr 170px 20px;align-items:center;gap:20px;padding:25px 0;transition:background .18s,padding .18s;display:grid}.writing-index>a:first-child{border-top:1px solid var(--rule)}.writing-index>a:hover{background:var(--panel);padding-left:8px;padding-right:8px}.writing-index span,.writing-index time,.writing-index b{color:var(--muted);font:400 10px DM Mono,monospace}.writing-index h2{margin:0 0 5px;font-size:20px;font-weight:500}.writing-index p{color:var(--muted);margin:0}.writing-group.empty{border-top:1px solid var(--rule);padding-top:18px}.writing-group.empty>p:last-child{color:var(--muted);margin:18px 0 0}.article{padding-top:47px}.article header{border-bottom:1px solid var(--rule);max-width:800px;padding:70px 0 65px}.article header h1{letter-spacing:-.06em;margin:26px 0 19px;font-size:clamp(44px,5.8vw,76px);line-height:1}.article header>p{color:var(--muted);max-width:660px;font-size:18px;line-height:1.6}.article time{color:var(--accent);font:10px DM Mono,monospace}.article-body{max-width:780px;padding:67px 0}.article-body section{grid-template-columns:55px 1fr;gap:24px;margin-bottom:57px;display:grid}.article-body section>span{color:var(--accent);padding-top:7px;font:10px DM Mono,monospace}.article-body h2{letter-spacing:-.04em;margin:0 0 23px;font-size:27px;font-weight:500;line-height:1.2}.article-body p{max-width:650px;color:var(--ink);margin-bottom:18px;font-size:16px;line-height:1.82}.article-return{border-top:1px solid var(--rule);letter-spacing:.08em;color:var(--accent);padding:19px 0 65px;font:10px DM Mono,monospace;display:block}.personal-intro h1{text-transform:lowercase}.personal-intro h1 span{text-transform:uppercase;letter-spacing:.12em;color:var(--accent);margin-top:12px;font:10px DM Mono,monospace;display:block}.chess-scene{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);perspective:850px;margin:0 0 96px;padding:34px 0 18px}.chessboard{aspect-ratio:1;grid-template-columns:repeat(8,1fr);width:min(78%,570px);margin:0 auto 22px;animation:9s ease-in-out infinite boardFloat;display:grid;position:relative;transform:rotateX(48deg)rotate(-12deg);box-shadow:0 44px 36px #00000059}.chessboard i:nth-child(odd){background:#202626}.chessboard i:nth-child(2n),.chessboard i:nth-child(16n+1),.chessboard i:nth-child(16n+3),.chessboard i:nth-child(16n+5),.chessboard i:nth-child(16n+7),.chessboard i:nth-child(16n+10),.chessboard i:nth-child(16n+12),.chessboard i:nth-child(16n+14),.chessboard i:nth-child(16n+16){background:#a9b3ae}.moving-knight{color:#e9e8e1;filter:drop-shadow(0 6px 4px #0006);width:20%;height:20%;animation:9s cubic-bezier(.5,0,.2,1) infinite knightMove;position:absolute;top:28%;left:46%}.moving-knight .knight-mark{width:100%;height:100%}.chess-scene>p{text-align:right;color:var(--muted);margin:0;font:10px DM Mono,monospace}.interests{border-top:1px solid var(--rule);grid-template-columns:1fr 2fr;gap:30px;padding-top:20px;display:grid}.interests>p:last-child{color:var(--muted);max-width:650px;font-size:18px;line-height:1.7}.interests b{color:var(--ink);font-weight:500}.personal-social{display:none}@keyframes boardFloat{0%,to{transform:rotateX(48deg)rotate(-12deg)translateY(0)}50%{transform:rotateX(50deg)rotate(-10deg)translateY(-6px)}}@keyframes knightMove{0%,35%{transform:translate(0)}50%,70%{transform:translate(130%,100%)}85%,to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:800px){.site-header{border-right:0;border-bottom:1px solid var(--rule);flex-direction:row;align-items:center;width:100%;height:59px;padding:0 19px;position:sticky}.site-header .knight-mark{width:27px;height:27px}.site-header nav{flex-direction:row;gap:17px;margin:0 0 0 auto}.site-header nav a{padding-left:0;font-size:9px}.site-header nav a:after{width:0;height:1px;top:auto;bottom:-6px;left:0;transform:none}.site-header nav a.active:after{opacity:1;width:100%}.rail-bottom{border-top:0;border-left:1px solid var(--rule);width:auto;margin:0 0 0 16px;padding:0 0 0 14px}.rail-bottom .social-icons{display:none}.theme-toggle{border-left:0;padding:0}.shell{width:min(100% - 40px,1120px)}main,.footer{margin-left:0}.footer{min-height:82px;padding:20px}.home-intro{padding-top:71px}.home-intro h1{font-size:50px}.home-intro .eyebrow{line-height:1.7;display:block}.local-time{margin:7px 0 0;display:block}.social-icons.labels{gap:14px;margin:-5px 0 32px}.intro-grid{grid-template-columns:1fr;gap:22px}.intro-grid p:nth-child(2){font-size:16px}.micro-chart{margin:0}.project-row{grid-template-columns:34px 1fr 14px;gap:10px;min-height:0}.project-preview,.project-domain{display:none}.project-main small{margin-top:9px;font-size:8px}.experience{grid-template-columns:1fr;gap:16px;margin-top:65px}.experience div{border-left:0;border-top:1px solid var(--rule);padding:16px 0 0}.record .project-preview{height:210px;display:block}.record .project-preview svg{padding:25px 8%}.article{padding-top:30px}.article header{padding:49px 0 43px}.article-body{padding:45px 0}.article-body section{grid-template-columns:1fr;gap:7px;margin-bottom:42px}.article-body h2{margin-bottom:18px;font-size:23px}.article-body p{font-size:15px;line-height:1.78}.writing-group{margin-top:55px}.writing-index>a{grid-template-columns:30px 1fr 14px;gap:10px}.writing-index time{grid-column:2;font-size:9px}.writing-index b{grid-area:1/3;padding-top:6px}.writing-index h2{font-size:17px}.chess-scene{margin-bottom:65px}.chessboard{width:100%;transform:rotateX(48deg)rotate(-7deg)}.interests{grid-template-columns:1fr;gap:9px}.interests>p:last-child{font-size:16px}.footer .social-icons{gap:12px}}.global-actions{z-index:12;position:fixed;top:26px;right:30px}.global-actions .theme-toggle{border:1px solid var(--rule);background:var(--bg);border-radius:50%;place-items:center;width:29px;height:29px;padding:0;display:grid}.rail-bottom{justify-content:flex-start}.page-meta{letter-spacing:.09em;width:min(100% - 92px,1120px);color:var(--muted);gap:12px;margin:0 auto;padding-top:29px;font:10px DM Mono,monospace;display:flex}.page-meta .local-time{margin-left:auto}.home-intro{padding-top:48px}.home-intro h1{margin:0 0 18px;line-height:1.08}.social-icons.labels{margin:0 0 28px}.intro-grid{border-top:1px solid var(--rule);padding-top:28px}.black-hole{background:radial-gradient(circle,#050606 0 27%,#0000 28%),conic-gradient(from 55deg,#0000,#7b6141,#e3d7ba,#7b6141,#0000 35%);border-radius:50%;width:114px;height:78px;margin:0 0 0 auto;animation:12s linear infinite blackHoleSpin;position:relative;overflow:hidden}.black-hole:before{content:"";border:1px solid #e6d6b2b3;border-radius:50%;position:absolute;inset:20px -18px;transform:rotate(-15deg);box-shadow:0 0 13px #c4975459}.black-hole:after{content:"";background:#050606;border-radius:50%;position:absolute;inset:26px 21px;box-shadow:0 0 15px #050606}.black-hole i{display:none}.experience>div{align-items:flex-start;gap:19px;display:flex}.experience>div section{flex:1}.cdtech-mark{width:50px;height:40px;color:var(--accent);padding-top:3px;display:block}.cdtech-mark svg{width:100%;height:100%}.game-study{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin:0 0 90px;padding:20px 0 17px}.game-caption{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;justify-content:space-between;gap:15px;margin-bottom:18px;font:10px DM Mono,monospace;display:flex}.game-caption p{color:var(--accent);margin:0}.game-caption span{white-space:nowrap}.proper-board{aspect-ratio:1;border:1px solid var(--rule);grid-template-columns:repeat(8,1fr);width:min(100%,570px);margin:auto;display:grid;position:relative;box-shadow:0 18px 38px #00000040}.proper-board>span{aspect-ratio:1;place-items:center;display:grid}.proper-board .light{background:#b7bdb7}.proper-board .dark{background:#26302f}.proper-board b{text-shadow:0 2px 2px #00000047;font:clamp(22px,4vw,48px)/1 Georgia,serif;transition:transform .32s,opacity .32s}.proper-board b.w{color:#f0ede3}.proper-board b.b{color:#111716}.files{display:none}.game-controls{max-width:570px;color:var(--muted);align-items:center;gap:8px;margin:18px auto 0;font:10px DM Mono,monospace;display:flex}.game-controls button{border:1px solid var(--rule);color:var(--ink);font:inherit;cursor:pointer;text-transform:uppercase;background:0 0;padding:7px 9px}.game-controls button:hover:not(:disabled){background:var(--panel)}.game-controls button:disabled{opacity:.35;cursor:not-allowed}.game-controls span{font-variant-numeric:tabular-nums;margin-left:auto}.game-controls em{color:var(--accent);min-width:48px;font-style:normal}@keyframes blackHoleSpin{to{transform:rotate(1turn)}}@media (max-width:800px){.global-actions{top:15px;right:17px}.global-actions .theme-toggle{width:27px;height:27px}.site-header{padding-right:58px}.site-header nav{gap:13px}.site-header nav a{font-size:8px}.page-meta{width:min(100% - 40px,1120px);padding-top:19px;line-height:1.7;display:block}.page-meta .local-time{margin:2px 0 0;display:block}.home-intro{padding-top:36px}.home-intro h1{margin-bottom:15px;font-size:clamp(46px,13vw,62px)}.social-icons.labels{margin-bottom:22px}.intro-grid{padding-top:24px}.black-hole{width:104px;height:70px;margin:4px 0 0}.experience>div{gap:13px}.cdtech-mark{flex:0 0 42px;width:42px}.game-study{margin-bottom:65px}.game-caption{line-height:1.7;display:block}.game-caption span{display:block}.proper-board b{font-size:clamp(19px,9vw,35px)}.game-controls{flex-wrap:wrap}.game-controls span{margin-left:0}.game-controls em{margin-left:auto}}.black-hole{background:0 0;border-radius:0;animation:none;overflow:visible}.black-hole:before,.black-hole:after{display:none}.black-hole svg{width:100%;height:100%;overflow:visible}.black-hole .horizon{fill:#030404}.black-hole .halo{opacity:.75}.black-hole .disk{fill:none;stroke:#eee5d1;stroke-width:2.1px;filter:drop-shadow(0 0 4px #e5be83b3);animation:5s ease-in-out infinite diskPulse}.black-hole .lens{fill:none;stroke:#bd8c52;stroke-width:1.2px;opacity:.65;transform-origin:90px 55px;animation:6s ease-in-out infinite lensBreathe}.black-hole .bottom{opacity:.38;transform:scaleY(.58)}.black-hole .top{transform:scaleY(1.8)}.home-log>div{align-items:center;gap:14px;display:flex}.home-log>div p{margin:0}.trophy-icon{width:22px;height:22px;color:var(--accent);flex:0 0 22px}.trophy-icon svg{width:100%;height:100%}.game-study{padding-top:26px}.personal-intro{margin-bottom:38px}.personal-intro h1{margin-bottom:0}@keyframes diskPulse{50%{stroke:#c6955a;stroke-width:2.6px;opacity:.72}}@keyframes lensBreathe{50%{opacity:.9;transform:scaleX(1.04)}}@media (max-width:800px){.home-log>div{align-items:flex-start}.black-hole{width:118px;height:74px}.personal-intro{margin-bottom:38px}.game-caption{display:none}}.knight-mark{background:currentColor;-webkit-mask:url(/knight-reference.png) 50%/contain no-repeat;mask:url(/knight-reference.png) 50%/contain no-repeat}.knight-mark svg{display:none}.cdtech-mark{width:60px;height:46px;color:var(--ink);flex:0 0 60px;padding-top:0}.cdtech-mark svg{width:100%;height:100%;display:block}@media (max-width:800px){.cdtech-mark{flex-basis:46px;width:46px;height:38px}}.site-header .wordmark{justify-content:center;width:34px}.intro-grid{grid-template-columns:.72fr 1.72fr .72fr;align-items:stretch;gap:0;padding-top:0}.intro-grid>.intro-context,.intro-grid>.intro-copy,.intro-grid>.saturn-shell{min-height:154px;margin:0;padding:27px 28px}.intro-grid>.intro-context{align-self:stretch;padding-left:0}.intro-grid>.intro-copy,.intro-grid>.saturn-shell{border-left:1px solid var(--rule)}.intro-grid>.intro-copy{max-width:none;font-size:16px;line-height:1.62}.intro-grid>.intro-copy p{margin:0}.intro-grid>.intro-copy p+p{color:var(--muted);margin-top:14px}.saturn-shell{--saturn-rotation:-18deg;--saturn-tilt:0deg;touch-action:none;cursor:grab;isolation:isolate;place-items:center;display:grid;position:relative;overflow:hidden}.saturn-shell:active{cursor:grabbing}.saturn-planet{z-index:2;aspect-ratio:1;width:78px;transform:rotate(calc(var(--saturn-rotation) * .08));background:radial-gradient(circle at 32% 29%,#f4e7c5 0 4%,#d6bb80 12%,#9a7547 36%,#5c432b 65%,#201812 100%);border-radius:50%;transition:transform .12s ease-out;position:relative;box-shadow:inset -17px -10px 20px #0d0a07b3,inset 8px 4px 13px #fff2cc6b,0 5px 14px #00000059}.saturn-planet:before{content:"";mix-blend-mode:multiply;opacity:.65;background:repeating-linear-gradient(174deg,#0000 0 7px,#533b2333 8px 10px,#0000 11px 16px);border-radius:50%;position:absolute;inset:7% 3%}.saturn-planet i{filter:blur(3px);background:#fff2ca33;border-radius:50%;height:15%;position:absolute;inset:17% 20% auto 12%}.saturn-rings{width:166px;height:48px;transform:rotate(calc(var(--saturn-rotation) + var(--saturn-tilt))) skewX(-7deg);filter:drop-shadow(0 2px 3px #00000059);background:repeating-radial-gradient(#0000 0 18%,#f4e1b5c2 19% 20%,#83603575 21% 23%,#0000 24% 28%);border-radius:50%;transition:transform .12s ease-out;position:absolute}.saturn-rings-back{z-index:1;clip-path:inset(0 0 49%)}.saturn-rings-front{z-index:3;clip-path:inset(51% 0 0)}.saturn-shell:after{content:"";z-index:0;filter:blur(8px);background:radial-gradient(circle,#d2a45c24,#0000 68%);border-radius:50%;width:128px;height:128px;position:absolute}@media (prefers-reduced-motion:reduce){.saturn-planet,.saturn-rings{transition:none}}@media (max-width:800px){.site-header .wordmark{width:27px}.intro-grid{grid-template-columns:1fr}.intro-grid>.intro-context,.intro-grid>.intro-copy,.intro-grid>.saturn-shell{min-height:0;padding:22px 0}.intro-grid>.intro-copy,.intro-grid>.saturn-shell{border-left:0;border-top:1px solid var(--rule)}.saturn-shell{justify-items:end;height:150px}.saturn-planet{width:82px}.saturn-rings{width:172px;height:50px}}
