@import url(bootstrap.min.css);@font-face{font-family:'Roboto';font-weight:400;font-style:normal;src:url("../fonts/roboto/RobotoMono-regular.ttf")}@font-face{font-family:'Roboto';font-weight:700;font-style:normal;src:url("../fonts/roboto/RobotoMono-Bold.ttf")}.highlight table td{padding:3px}.highlight table pre{margin:0}.highlight .cm{color:#999988;font-style:italic}.highlight .cp{color:#999999;font-weight:bold}.highlight .c1{color:#999988;font-style:italic}.highlight .cs{color:#999999;font-weight:bold;font-style:italic}.highlight .c,.highlight .cd{color:#999988;font-style:italic}.highlight .err{color:#a61717;background-color:#e3d2d2}.highlight .gd{color:#000000;background-color:#ffdddd}.highlight .ge{color:#000000;font-style:italic}.highlight .gr{color:#aa0000}.highlight .gh{color:#999999}.highlight .gi{color:#000000;background-color:#ddffdd}.highlight .go{color:#888888}.highlight .gp{color:#555555}.highlight .gs{font-weight:bold}.highlight .gu{color:#aaaaaa}.highlight .gt{color:#aa0000}.highlight .kc{color:#000000;font-weight:bold}.highlight .kd{color:#000000;font-weight:bold}.highlight .kn{color:#000000;font-weight:bold}.highlight .kp{color:#000000;font-weight:bold}.highlight .kr{color:#000000;font-weight:bold}.highlight .kt{color:#445588;font-weight:bold}.highlight .k,.highlight .kv{color:#000000;font-weight:bold}.highlight .mf{color:#009999}.highlight .mh{color:#009999}.highlight .il{color:#009999}.highlight .mi{color:#009999}.highlight .mo{color:#009999}.highlight .m,.highlight .mb,.highlight .mx{color:#009999}.highlight .sb{color:#d14}.highlight .sc{color:#d14}.highlight .sd{color:#d14}.highlight .s2{color:#d14}.highlight .se{color:#d14}.highlight .sh{color:#d14}.highlight .si{color:#d14}.highlight .sx{color:#d14}.highlight .sr{color:#009926}.highlight .s1{color:#d14}.highlight .ss{color:#990073}.highlight .s{color:#d14}.highlight .na{color:#008080}.highlight .bp{color:#999999}.highlight .nb{color:#0086B3}.highlight .nc{color:#445588;font-weight:bold}.highlight .no{color:#008080}.highlight .nd{color:#3c5d5d;font-weight:bold}.highlight .ni{color:#800080}.highlight .ne{color:#990000;font-weight:bold}.highlight .nf{color:#990000;font-weight:bold}.highlight .nl{color:#990000;font-weight:bold}.highlight .nn{color:#555555}.highlight .nt{color:#000080}.highlight .vc{color:#008080}.highlight .vg{color:#008080}.highlight .vi{color:#008080}.highlight .nv{color:#008080}.highlight .ow{color:#000000;font-weight:bold}.highlight .o{color:#000000;font-weight:bold}.highlight .w{color:#bbbbbb}body,h1,h2,h3,h4,h5,h6,p,blockquote,pre,dl,dd,ol,ul,figure{margin:0;padding:0}hr{display:block;height:1px;border:0;border-top:1px solid #cfcfcf;margin:2em 0;padding:0}body{font:400 16px/1.65 Helvetica,Arial,sans-serif;color:#111;background-color:#fdfdfd;-webkit-text-size-adjust:100%;-webkit-font-feature-settings:"kern" 1;-moz-font-feature-settings:"kern" 1;-o-font-feature-settings:"kern" 1;font-feature-settings:"kern" 1;font-kerning:normal}.table-of-content li{font-size:96%;color:#000;list-style-type:disc}.page-navigation{font-size:90%;display:block;width:100%;overflow:hidden}.page-navigation a{display:block;overflow:hidden;width:50%;float:left;margin:1em 0}.page-navigation .next{text-align:right}h1,h2,h3,h4,h5,h6,p,blockquote,pre,ul,ol,dl,figure{margin-bottom:15px}img{max-width:100%;vertical-align:middle;text-align:center;display:block;margin:0 auto}img+em{display:block;text-align:center;font-style:italic;font-size:smaller;color:#424242;padding-top:8px;padding-bottom:8px}.center{max-width:100%;display:block;margin:0 auto}.gallery{padding-bottom:30px}video{max-width:100%;vertical-align:middle;text-align:center;display:block;margin:0 auto}video+em{display:block;text-align:center;font-style:italic;font-size:smaller;color:#424242;padding-top:8px;padding-bottom:8px}figure>img{display:block}figcaption{font-size:14px;color:#424242;padding-bottom:10px;text-align:center}ul,ol{margin-left:30px}li>ul,li>ol{margin-bottom:0}table.info{max-width:100%;border-top:2px solid #828282;border-bottom:2px solid #828282;margin:20px auto;font-size:90%}table.info th,table.info td{padding:2px 6px;text-align:left;vertical-align:top}table.info th{text-align:center;border-bottom:1px solid #e8e8e8}h1,h2,h3,h4,h5,h6{font-weight:400}a{color:#000;text-decoration:underline}a:hover{text-decoration:underline}blockquote{font:400 16px/1.65 Helvetica,Arial,sans-serif;color:#777777;padding:10px;margin:10px;padding-left:25px;letter-spacing:-1px;background:#f0f0f0}blockquote>:last-child{margin-bottom:0}.smaller{font-size:smaller;font-style:italic}.smaller-center{font-size:smaller;font-style:italic;text-align:center;padding-top:8px;padding-bottom:8px}pre,code{font-size:15px;border:1px solid #e8e8e8;border-radius:3px;background-color:#f2f2f2}code{padding:1px 5px}pre{padding:4px 6px;overflow-x:auto}pre>code{border:0;padding-right:0;padding-left:0}pre .lineno{font-size:14.4px}.wrapper{max-width:calc(900px - (30px * 2));margin-right:auto;margin-left:auto;padding-right:30px;padding-left:30px}@media screen and (max-width: 800px){.wrapper{max-width:calc(900px - (30px));padding-right:15px;padding-left:15px}}.wrapper:after{content:"";display:table;clear:both}.icon>svg{display:inline-block;vertical-align:middle}.icon>svg path{fill:#828282}.social-media-list .icon{padding-right:5px}.social-media-list li+li{padding-top:5px}.reveal-hover{cursor:pointer}#hover-reveal{position:fixed;pointer-events:none;z-index:1000;opacity:0;transition:opacity 0.25s ease;max-width:300px;box-shadow:0 4px 20px rgba(0,0,0,0.15)}#hover-reveal img{width:100%;display:block;margin:0}#hover-reveal.visible{opacity:1}.site-header{font-family:"Roboto",sans-serif;background:#fff;min-height:55.95px;position:relative}.site-title{font-size:25.6px;color:#grey-color;letter-spacing:0px;line-height:59.4px;margin-bottom:0;float:left}.site-title,.site-title:visited{color:#grey-color-light}.site-title:hover{color:#e8e8e8;text-decoration:none;cursor:pointer}.site-nav{float:right;text-align:right;line-height:59.4px;padding-right:10px}.site-nav .nav-trigger{display:none}.site-nav .menu-icon{display:none}.site-nav .page-link{color:#grey-color-light;line-height:1.65}.site-nav .page-link:not(:last-child){margin-right:20px}.site-nav .page-link:hover{color:#cfcfcf;text-decoration:none;cursor:pointer}@media screen and (max-width: 600px){.site-nav{position:absolute;top:9px;right:15px;background-color:#fdfdfd;border:1px solid #e8e8e8;border-radius:5px;text-align:right}.site-nav label[for="nav-trigger"]{display:block;float:right;width:36px;height:36px;z-index:2;cursor:pointer}.site-nav .menu-icon{display:block;float:right;width:36px;height:26px;line-height:0;padding-top:10px;text-align:center}.site-nav .menu-icon>svg path{fill:#e8e8e8}.site-nav input ~ .trigger{clear:both;display:none}.site-nav input:checked ~ .trigger{display:block;padding-bottom:5px}.site-nav .page-link{display:block;padding:5px 10px;margin-left:20px}.site-nav .page-link:not(:last-child){margin-right:0}}.site-footer{font-family:"Roboto",sans-serif;right:0;bottom:0;left:0;padding:1rem;text-align:center;font-size:14px;color:#828282;clear:both;margin-bottom:30px}.site-footer a{color:#828282}.site-footer p{margin:5px auto;width:200px}.site-footer img{width:26px;height:26px;margin:0 4px;display:block;float:left}.homepage{margin-top:90px;margin-bottom:60px;font-family:"Roboto",sans-serif}.homepage p{font-size:14px;margin-top:0}.homepage li{font-size:14px;color:#828282;line-height:1.5}.homepage li b{color:#111}.homepage h2{margin-top:60px;font-size:16px;font-weight:bold}.homepage h4{font-size:14px;margin-bottom:3px;font-weight:bold;color:#111}.homepage ul{margin-bottom:18px}@media screen and (max-width: 600px){.homepage img{max-width:60%;margin:0 auto}}.homepage .paper{display:flex;align-items:flex-start;gap:24px;margin-bottom:45px}@media screen and (max-width: 600px){.homepage .paper{flex-direction:column;gap:10px}}.homepage .paper-thumb{flex:0 0 300px}.homepage .paper-thumb a{display:block}.homepage .paper-thumb img{display:block;max-width:100%;max-height:190px;width:auto;height:auto;margin:0 auto;transition:opacity 0.2s}.homepage .paper-thumb a:hover img{opacity:0.8}@media screen and (max-width: 600px){.homepage .paper-thumb{flex:none;width:100%}.homepage .paper-thumb:empty{display:none}.homepage .paper-thumb img{max-height:240px}}.homepage .paper-info{flex:1;min-width:0;font-size:14px;color:#828282;line-height:1.5}.homepage .paper-info h4{margin-top:0}.homepage .paper-info b{color:#111}.page-content{padding:30px 0}.page-heading{font-size:25.6px;font-family:"Roboto",sans-serif;font-weight:480;margin-top:30px}.post-list{margin-left:0;list-style:none;font-family:Helvetica,Arial,sans-serif}.post-list>li{padding-top:45px;padding-bottom:45px;border-bottom:1px solid #828282}.post-list>li:first-child{border-top:1px solid #828282}.post-list>li>:last-child{margin-bottom:0}.post-meta{font-size:14px;font-family:"Roboto",sans-serif;color:#828282}.post-meta a.post-tag{border-radius:5px;border:1px solid #828282;color:#828282;padding:1px 5px;margin-left:5px}.post-meta a.post-tag:hover{border:1px solid #828282;text-decoration:none;color:#ffffff;background:#828282}.post-link{font-weight:400;font-family:"Roboto",sans-serif;display:block;font-size:16px;color:#111}.post-link:hover{color:#828282;text-decoration:none;cursor:pointer}.post-excerpt{display:block;margin-top:5px;font-size:14px;line-height:1.5;color:#424242}.post-excerpt blockquote{font-family:"Roboto",sans-serif;font-size:14px;line-height:1.5;font-weight:400;letter-spacing:0px;background:#fff}.other-pages{margin-top:15px}div.qa{margin:10px;padding:10px}div.qa .question{border-radius:5px;background:#eeeeee;padding:5px;padding-left:20px}.project-item{display:flex;align-items:center;justify-content:space-between;padding:36px 0;border-bottom:1px solid #828282;text-decoration:none;gap:30px}.project-item:first-child{border-top:1px solid #828282}.project-item .project-title{font-family:"Roboto",sans-serif;font-size:16px;width:40%;flex-shrink:0}.project-item .project-img{width:50%;height:220px;object-fit:cover;object-position:center;margin:0;flex-shrink:0}@media screen and (max-width: 600px){.project-item{flex-direction:column;align-items:flex-start}.project-item .project-title{width:100%;margin-bottom:15px}.project-item .project-img{width:100%;height:auto;max-height:none}}.post-header{margin-top:30px;margin-bottom:30px}.post-title{font-family:"Roboto",sans-serif;font-size:24px;font-weight:400;letter-spacing:0px;line-height:1.3;max-width:100%}.post-content{font-family:"Roboto",sans-serif;font-size:14px;line-height:1.7}.post-content h2{font-size:16px;font-weight:bold;margin-top:45px;margin-bottom:15px}.post-content h3{font-size:14px;font-weight:bold;margin-top:30px}.post-content h4{font-size:14px;font-weight:bold}.post-content li{margin-bottom:12px}.post-content .paper-meta{color:#828282;font-size:13px}.post-content blockquote{letter-spacing:0.1px;font-weight:320}.homepage .col-md-4 img{border:3px solid #111;box-shadow:6px 6px 0 #111}.reading{font-family:"Roboto",sans-serif}.reading .reading-intro{font-size:14px;color:#424242;margin-bottom:30px}.reading .book-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(120px, 1fr));gap:30px 22.5px}@media screen and (max-width: 600px){.reading .book-grid{grid-template-columns:repeat(3, minmax(0, 1fr));gap:20px 12px}}.reading .book{display:flex;flex-direction:column;color:#111;text-decoration:none}.reading .book img,.reading .book .book-nocover{width:100%;aspect-ratio:2 / 3;object-fit:cover;border:1px solid #e8e8e8;box-shadow:3px 3px 0 #e8e8e8;transition:transform 0.15s}.reading .book .book-nocover{display:flex;align-items:center;justify-content:center;padding:8px;box-sizing:border-box;background:#fff;font-size:11px;text-align:center}.reading .book:hover img,.reading .book:hover .book-nocover{transform:translateY(-3px)}.reading .book-title{margin-top:8px;font-size:12px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.reading .book-author{margin-top:2px;font-size:11px;color:#828282}.reading .shelf-heading{margin:45px 0 22.5px;font-size:20px}.reading .shelf-heading .shelf-count{font-size:14px;color:#828282}.reading .book-rating{margin-top:3px;font-size:13px;letter-spacing:1px;color:#e0a100}.reading .book-rating .empty{color:#e8e8e8}#profile-photo{cursor:pointer}.homepage .col-md-4 canvas.retro-photo{display:block;width:100%;height:auto;image-rendering:pixelated;cursor:pointer;border:3px solid #111;box-shadow:6px 6px 0 #111}.retro-battle{position:fixed;right:24px;bottom:24px;z-index:100;width:340px;max-width:calc(100vw - 32px);box-sizing:border-box;padding:10px;background:#9bbc0f;border:3px solid #111;box-shadow:6px 6px 0 #111;font-family:'Press Start 2P', monospace;color:#0f380f;animation:retro-pop 0.25s steps(3);overflow:hidden}@media screen and (max-width: 600px){.retro-battle{right:16px;left:16px;bottom:16px;width:auto}}.retro-battle .retro-close{position:absolute;top:2px;right:4px;z-index:1;border:0;background:none;font:inherit;font-size:10px;color:#0f380f;cursor:pointer;padding:4px}.retro-battle .battle-field{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;align-items:center;gap:6px 8px;margin:8px 0 10px}.retro-battle .info-box{padding:5px 7px;background:#fff;border:2px solid #0f380f;border-radius:3px 3px 10px 3px}.retro-battle .mon-name{font-size:7px;margin-bottom:5px;white-space:nowrap}.retro-battle .hp{display:flex;align-items:center;gap:4px}.retro-battle .hp-label{font-size:6px;color:#e0a100}.retro-battle .hp-bar{flex:1;height:5px;background:#e8e8e8;border:1px solid #0f380f}.retro-battle .hp-fill{display:block;height:100%;width:100%;background:#3fbf5f;transition:width 0.6s steps(6)}.retro-battle .hp-fill.mid{background:#e0b000}.retro-battle .hp-fill.low{background:#e04040}.retro-battle .foe-sprite{display:block;width:100%;height:auto}.retro-battle .foe-sprite .edge{stroke:#0f380f;stroke-width:2.5}.retro-battle .foe-sprite .cut{stroke:#0f380f;stroke-width:3;opacity:0}.retro-battle .foe-sprite .node{fill:#8bac0f;stroke:#0f380f;stroke-width:2}.retro-battle .foe-sprite .node-z{fill:#306230}.retro-battle .foe-sprite text{font-family:'Press Start 2P', monospace;font-size:10px;text-anchor:middle;fill:#0f380f}.retro-battle .foe-sprite .label-z{fill:#9bbc0f}.retro-battle .me-sprite{justify-self:center;align-self:end;width:108px;height:96px;image-rendering:pixelated}.retro-battle .hit{animation:retro-hit 0.4s steps(2) 2}.retro-battle .retro-text{position:relative;min-height:44px;padding:9px 22px 9px 9px;border:2px solid #0f380f;border-radius:3px;background:#fff;font-size:8px;line-height:1.8}.retro-battle .no-break{white-space:nowrap}.retro-battle .px-arrow{display:inline-block;width:14px;height:10px;margin:0 2px;vertical-align:0;fill:currentColor;shape-rendering:crispEdges}.retro-battle .px-arrow.flip{transform:scaleX(-1)}.retro-battle .retro-next{position:absolute;right:7px;bottom:5px;font-size:7px;animation:retro-blink 1s steps(1) infinite}.retro-battle .retro-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);margin:0}.retro-battle .moves{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}.retro-battle .move{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:7px 8px;background:#fff;border:2px solid #0f380f;border-radius:3px;font:inherit;font-size:8px;color:#0f380f;text-align:left;cursor:pointer}.retro-battle .move:hover:not(:disabled),.retro-battle .move:focus-visible{background:#8bac0f;outline:none}.retro-battle .move:hover:not(:disabled) .move-name::before,.retro-battle .move:focus-visible .move-name::before{content:"▶ "}.retro-battle .move:disabled{cursor:default;opacity:0.6}.retro-battle .move.no-pp{opacity:0.4;text-decoration:line-through}.retro-battle .move .pp{font-size:6px;color:#306230}.retro-battle .play-again{grid-column:1 / -1;align-items:center}.retro-battle .battle-wipe{position:absolute;inset:0;z-index:2;display:none;flex-direction:column}.retro-battle .battle-wipe i{flex:1;margin-bottom:-1px;background:#0f380f;transform:scaleX(0);transform-origin:left}.retro-battle .battle-wipe i:nth-child(even){transform-origin:right}.retro-battle.is-wipe .battle-wipe{display:flex}.retro-battle.is-wipe .battle-wipe i{animation:retro-wipe 0.4s steps(8) forwards}.retro-battle.is-wipe .battle-wipe i:nth-child(1){animation-delay:0s}.retro-battle.is-wipe .battle-wipe i:nth-child(2){animation-delay:.04s}.retro-battle.is-wipe .battle-wipe i:nth-child(3){animation-delay:.08s}.retro-battle.is-wipe .battle-wipe i:nth-child(4){animation-delay:.12s}.retro-battle.is-wipe .battle-wipe i:nth-child(5){animation-delay:.16s}.retro-battle.is-wipe .battle-wipe i:nth-child(6){animation-delay:.2s}.retro-battle.is-wipe .battle-wipe i:nth-child(7){animation-delay:.24s}.retro-battle.is-wipe .battle-wipe i:nth-child(8){animation-delay:.28s}.retro-battle::after{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;opacity:0;background:#0f380f}.retro-battle.is-flash::after{animation:retro-encounter 0.6s steps(1) forwards}.retro-battle.is-flash .battle-field,.retro-battle.is-flash .retro-text,.retro-battle.is-flash .moves,.retro-battle.is-wipe .battle-field,.retro-battle.is-wipe .retro-text,.retro-battle.is-wipe .moves{visibility:hidden}.retro-battle.is-enter .foe-sprite{animation:retro-slide-left 0.7s steps(7)}.retro-battle.is-enter .me-sprite{animation:retro-slide-right 0.7s steps(7)}.retro-battle.is-enter .info-box{visibility:hidden}.retro-battle[data-state="intervene"] .node-x{fill:#306230}.retro-battle[data-state="intervene"] .edge-zx{animation:retro-flicker 0.4s steps(1) infinite}.retro-battle[data-state="cut"] .edge-zx,.retro-battle[data-state="won"] .edge-zx{opacity:0.2}.retro-battle[data-state="cut"] .cut,.retro-battle[data-state="won"] .cut{opacity:1}.retro-battle[data-state="won"] .edge-xy{stroke-width:3.5}.retro-battle[data-state="won"] .node-z{opacity:0.4}@keyframes retro-blink{50%{opacity:0}}@keyframes retro-flicker{50%{opacity:0}}@keyframes retro-pop{from{transform:scale(0.6)}to{transform:scale(1)}}@keyframes retro-hit{50%{transform:translateX(3px);opacity:0.4}}@keyframes retro-wipe{to{transform:scaleX(1)}}@keyframes retro-encounter{0%, 34%, 68%{opacity:1}17%, 51%{opacity:0}85%, 100%{opacity:1}}@keyframes retro-slide-left{from{transform:translateX(-140%)}to{transform:translateX(0)}}@keyframes retro-slide-right{from{transform:translateX(160%)}to{transform:translateX(0)}}@media (prefers-reduced-motion: reduce){.retro-battle,.retro-battle .retro-next,.retro-battle .edge-zx,.retro-battle .hit{animation:none !important}}.homepage .photo-hint{margin:14px 0 0;text-align:center;font-size:12px;color:#828282}.homepage .photo-hint .hint-arrow{display:inline-block;animation:hint-bounce 1.6s ease-in-out infinite}@keyframes hint-bounce{0%, 100%{transform:translateY(0)}50%{transform:translateY(-3px)}}@media (prefers-reduced-motion: reduce){.homepage .photo-hint .hint-arrow{animation:none}}.homepage .kw-retro{display:inline-block;padding:4px 8px 3px;border-radius:10px;font-family:'Press Start 2P', monospace;font-size:8px;line-height:1.2;letter-spacing:0.5px;color:#fff;text-shadow:1px 1px 0 rgba(0,0,0,0.35);vertical-align:middle}.homepage .kw-causality{background:linear-gradient(#5a9be0, #2f73b8)}.homepage .kw-llm{background:linear-gradient(#f28a3e, #d2560f)}.site-title .title-dot{letter-spacing:-0.3em}
