html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;min-height:100vh;font-family:var(--font-body, "Hiragino Sans", "Yu Gothic", system-ui, sans-serif);line-height:var(--line-height-body, 1.7);color:var(--color-fg, #1a1a1a);background:var(--color-bg, #fafafa)}img,picture,svg{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3,h4,h5,h6{margin:0;font-family:var(--font-heading, inherit);line-height:var(--line-height-heading, 1.3)}p,ul,ol,pre,blockquote{margin:0}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer;padding:0}.site{display:grid;grid-template-rows:auto 1fr auto;min-height:100vh}.container{width:min(72ch,100% - 2 * var(--spacing-unit, 1rem));margin-inline:auto}.site-header,.site-footer{padding-block:var(--spacing-unit, 1rem)}.site-header .container{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-unit, 1rem);flex-wrap:wrap}.site-header .brand{font-family:var(--font-heading, inherit);font-size:1.25rem;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;color:var(--color-fg, #1a1a1a)}.site-header .brand-mark{display:inline-block;width:1.1em;height:1.5em;background-color:currentColor;mask:url(/henoheno.png) center / contain no-repeat;-webkit-mask:url(/henoheno.png) center / contain no-repeat;flex-shrink:0}.site-header nav{display:flex;gap:.75rem;align-items:center}.site-header .icon-link{display:inline-flex;color:var(--color-fg, #1a1a1a)}.site-header .icon-link svg{width:1.25rem;height:1.25rem;fill:currentColor}.site-main{padding-block:calc(var(--spacing-unit, 1rem) * 2)}.site-footer{font-size:.85rem;text-align:center}.site-footer .theme-credit{margin-bottom:.25rem;opacity:.7}.post-list{list-style:none;padding:0;display:grid;gap:calc(var(--spacing-unit, 1rem) * 1.5)}.post-list a{text-decoration:none}.post-list time{display:block;font-size:.85rem;opacity:.7}.post-list h2{font-size:1.25rem;margin-top:.25rem}article.post header{margin-bottom:calc(var(--spacing-unit, 1rem) * 1.5)}article.post header time{display:block;font-size:.85rem;opacity:.7}article.post header h1{font-size:1.75rem;margin-top:.25rem}article.post .content>*+*{margin-top:1em}.not-found{text-align:center;display:grid;gap:1.25rem;margin-block:calc(var(--spacing-unit, 1rem) * 4)}.not-found-mark{font-family:var(--font-heading, inherit);font-size:4rem;line-height:1;opacity:.5}.not-found-msg{display:block}:root{--color-bg: #07071a;--color-fg: #dde4ff;--color-accent: #00f0ff;--color-accent-alt: #ff5599;--color-chrome: #7a96cc;--spacing-unit: 1rem;--font-heading: "Courier New", "Osaka-Mono", "Courier", monospace;--font-body: "Hiragino Sans", "Yu Gothic", "Yu Gothic UI", "Meiryo", "MS PGothic", system-ui, -apple-system, sans-serif;--line-height-body: 1.8;--line-height-heading: 1.15;--ease-default: cubic-bezier(.22, .61, .36, 1)}@keyframes glitch-rgb{0%,90%,to{text-shadow:-1px 0 0 var(--color-accent-alt),1px 0 0 var(--color-accent);transform:none}91%{text-shadow:3px 0 0 var(--color-accent-alt),-3px 0 0 var(--color-accent);transform:skew(-4deg)}93%{text-shadow:-3px 0 0 var(--color-accent-alt),3px 0 0 var(--color-accent);transform:skew(3deg)}95%{text-shadow:2px 0 0 var(--color-accent-alt),-2px 0 0 var(--color-accent);transform:skew(-1deg)}}@keyframes neon-pulse{0%,to{box-shadow:0 0 4px var(--color-accent),0 0 14px #00f0ff47}50%{box-shadow:0 0 8px var(--color-accent),0 0 32px #00f0ff80,0 0 56px #00f0ff1f}}@keyframes scanline-drift{0%{background-position:0 0}to{background-position:0 120px}}@keyframes blink-step{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes pixel-in{0%{opacity:0;transform:translateY(10px);filter:blur(6px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes border-chase{0%{background-position:0% 50%}to{background-position:200% 50%}}*,*:before,*:after{box-sizing:border-box}body{background-color:var(--color-bg);color:var(--color-fg);font-family:var(--font-body);line-height:var(--line-height-body);margin:0;padding:0;background-image:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(0,240,255,.018) 3px,rgba(0,240,255,.018) 4px);animation:scanline-drift 10s linear infinite}::selection{background:#ff559961;color:#fff}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:#00f0ff52;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-accent)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);line-height:var(--line-height-heading);letter-spacing:.05em;margin-block:calc(var(--spacing-unit) * 1.4) calc(var(--spacing-unit) * .6)}h1{font-size:clamp(1.7rem,4.5vw,2.6rem);color:var(--color-accent);animation:glitch-rgb 9s infinite}h2{font-size:clamp(1.3rem,3vw,1.9rem);color:var(--color-fg);animation:glitch-rgb 13s 2s infinite}h3{font-size:1.25rem;color:var(--color-chrome)}h4,h5,h6{color:var(--color-chrome);font-size:1rem}a{color:var(--color-accent);text-decoration:underline;text-decoration-color:#00f0ff59;text-underline-offset:4px;transition:color .18s var(--ease-default),text-shadow .18s var(--ease-default),text-decoration-color .18s var(--ease-default)}a:hover,a:focus-visible{color:#fff;text-shadow:0 0 6px var(--color-accent),0 0 18px rgba(0,240,255,.5);text-decoration-color:var(--color-accent);outline:none}a:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:2px}.site-header{position:relative;background:#020212f2;border-bottom:1px solid rgba(0,240,255,.45);padding:calc(var(--spacing-unit) * 1.4) calc(var(--spacing-unit) * 2);overflow:hidden;animation:neon-pulse 5s ease-in-out infinite}.site-header:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(0,240,255,.05) 3px,rgba(0,240,255,.05) 4px);pointer-events:none;animation:scanline-drift 5s linear infinite}.site-header:after{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--color-accent),var(--color-accent-alt),var(--color-accent),var(--color-accent-alt),var(--color-accent));background-size:200% 100%;animation:border-chase 3s linear infinite}.site-header a{text-decoration:none;color:var(--color-accent);font-family:var(--font-heading);letter-spacing:.1em;font-size:1.1rem}.site-header a:hover{color:#fff;text-shadow:0 0 8px var(--color-accent),0 0 24px rgba(0,240,255,.6)}.site-header nav{margin-block-start:calc(var(--spacing-unit) * .6);display:flex;flex-wrap:wrap;gap:calc(var(--spacing-unit) * .3) calc(var(--spacing-unit) * 1.4)}.site-header nav a{color:var(--color-chrome);font-size:.8rem;text-transform:uppercase;letter-spacing:.14em;position:relative;padding-block-end:2px}.site-header nav a:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--color-accent);transform:scaleX(0);transform-origin:left center;transition:transform .22s var(--ease-default)}.site-header nav a:hover{color:var(--color-fg);text-shadow:none}.site-header nav a:hover:after{transform:scaleX(1)}.site-footer{position:relative;border-top:1px solid rgba(0,240,255,.2);padding:calc(var(--spacing-unit) * 2) calc(var(--spacing-unit) * 2) calc(var(--spacing-unit) * 1.5);text-align:center;font-size:.78rem;color:var(--color-chrome);overflow:hidden}.site-footer:before{content:"PLASTIC HEART DOWNLOAD ░░░ SAVE MY SOUL ░░░ BOOT UP ░░░";display:block;font-family:var(--font-heading);font-size:.58rem;letter-spacing:.22em;color:#00f0ff47;margin-block-end:var(--spacing-unit);animation:blink-step 3.2s step-end infinite}.post-list{list-style:none;padding:0;margin:0}.post-list li{border-bottom:1px solid rgba(0,240,255,.1);padding:calc(var(--spacing-unit) * 1.1) calc(var(--spacing-unit) * .2);transition:border-color .2s var(--ease-default),background .2s var(--ease-default),padding-left .2s var(--ease-default);animation:pixel-in .45s var(--ease-default) both}.post-list li:hover{border-bottom-color:#00f0ff80;background:linear-gradient(90deg,rgba(0,240,255,.05) 0%,transparent 80%);padding-left:calc(var(--spacing-unit) * .6)}.post-list a{font-family:var(--font-heading);font-size:.95rem;letter-spacing:.04em;display:block}.post-list time{display:block;font-size:.72rem;color:#00f0ff73;letter-spacing:.08em;margin-block-start:2px;font-family:var(--font-heading)}article.post{animation:pixel-in .5s var(--ease-default) both}article.post header{position:relative;padding-block-end:calc(var(--spacing-unit) * 1.1);margin-block-end:calc(var(--spacing-unit) * 1.6);border-bottom:1px solid rgba(255,85,153,.4)}article.post header:after{content:"";position:absolute;left:0;bottom:-1px;width:38%;height:1px;background:var(--color-accent);animation:neon-pulse 3.5s ease-in-out infinite}article.post p{margin-block:calc(var(--spacing-unit) * .85)}article.post code{font-family:var(--font-heading);font-size:.87em;background:#00f0ff12;color:var(--color-accent);border:1px solid rgba(0,240,255,.22);border-radius:3px;padding:.1em .38em}article.post pre{background:#000014e0;border:1px solid rgba(0,240,255,.18);border-left:3px solid var(--color-accent);border-radius:4px;padding:calc(var(--spacing-unit) * 1.2);overflow-x:auto;font-family:var(--font-heading);font-size:.84rem;line-height:1.65;color:#b4d0ff}article.post pre code{background:none;border:none;padding:0;font-size:inherit;color:inherit}article.post blockquote{border-left:3px solid var(--color-accent-alt);margin-inline:0;padding-inline-start:calc(var(--spacing-unit) * 1.2);color:var(--color-chrome);font-style:italic;background:#ff55990a;border-radius:0 3px 3px 0}article.post img{max-width:100%;height:auto;border:1px solid rgba(0,240,255,.2);border-radius:2px;filter:saturate(1.1) contrast(1.05);transition:filter .25s var(--ease-default)}article.post img:hover{filter:saturate(1.3) contrast(1.1) brightness(1.05)}article.post hr{border:none;height:1px;background:linear-gradient(90deg,transparent,var(--color-accent),var(--color-accent-alt),var(--color-accent),transparent);margin-block:calc(var(--spacing-unit) * 2);opacity:.5}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
