﻿.inline{display:inline}.block{display:block}.inline-block{display:inline-block}.table{display:table}.table-cell{display:table-cell}.overflow-hidden{overflow:hidden}.overflow-scroll{overflow:scroll}.overflow-auto{overflow:auto}.clearfix:before,.clearfix:after{display:table;content:" "}.clearfix:after{clear:both}.left{float:left}.right{float:right}.fit{max-width:100%}.truncate{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.max-width-1{max-width:24rem}.max-width-2{max-width:32rem}.max-width-3{max-width:48rem}.max-width-4{max-width:64rem}.border-box{box-sizing:border-box}.m0{margin:0}.mt0{margin-top:0}.mr0{margin-right:0}.mb0{margin-bottom:0}.ml0{margin-left:0}.mx0{margin-right:0;margin-left:0}.my0{margin-top:0;margin-bottom:0}.m1{margin:.5rem}.mt1{margin-top:.5rem}.mr1{margin-right:.5rem}.mb1{margin-bottom:.5rem}.ml1{margin-left:.5rem}.mx1{margin-right:.5rem;margin-left:.5rem}.my1{margin-top:.5rem;margin-bottom:.5rem}.m2{margin:1rem}.mt2{margin-top:1rem}.mr2{margin-right:1rem}.mb2{margin-bottom:1rem}.ml2{margin-left:1rem}.mx2{margin-right:1rem;margin-left:1rem}.my2{margin-top:1rem;margin-bottom:1rem}.m3{margin:2rem}.mt3{margin-top:2rem}.mr3{margin-right:2rem}.mb3{margin-bottom:2rem}.ml3{margin-left:2rem}.mx3{margin-right:2rem;margin-left:2rem}.my3{margin-top:2rem;margin-bottom:2rem}.m4{margin:4rem}.mt4{margin-top:4rem}.mr4{margin-right:4rem}.mb4{margin-bottom:4rem}.ml4{margin-left:4rem}.mx4{margin-right:4rem;margin-left:4rem}.my4{margin-top:4rem;margin-bottom:4rem}.mxn1{margin-right:-.5rem;margin-left:-.5rem}.mxn2{margin-right:-1rem;margin-left:-1rem}.mxn3{margin-right:-2rem;margin-left:-2rem}.mxn4{margin-right:-4rem;margin-left:-4rem}.ml-auto{margin-left:auto}.mr-auto{margin-right:auto}.mx-auto{margin-right:auto;margin-left:auto}.p0{padding:0}.pt0{padding-top:0}.pr0{padding-right:0}.pb0{padding-bottom:0}.pl0{padding-left:0}.px0{padding-right:0;padding-left:0}.py0{padding-top:0;padding-bottom:0}.p1{padding:.5rem}.pt1{padding-top:.5rem}.pr1{padding-right:.5rem}.pb1{padding-bottom:.5rem}.pl1{padding-left:.5rem}.py1{padding-top:.5rem;padding-bottom:.5rem}.px1{padding-right:.5rem;padding-left:.5rem}.p2{padding:1rem}.pt2{padding-top:1rem}.pr2{padding-right:1rem}.pb2{padding-bottom:1rem}.pl2{padding-left:1rem}.py2{padding-top:1rem;padding-bottom:1rem}.px2{padding-right:1rem;padding-left:1rem}.p3{padding:2rem}.pt3{padding-top:2rem}.pr3{padding-right:2rem}.pb3{padding-bottom:2rem}.pl3{padding-left:2rem}.py3{padding-top:2rem;padding-bottom:2rem}.px3{padding-right:2rem;padding-left:2rem}.p4{padding:4rem}.pt4{padding-top:4rem}.pr4{padding-right:4rem}.pb4{padding-bottom:4rem}.pl4{padding-left:4rem}.py4{padding-top:4rem;padding-bottom:4rem}.px4{padding-right:4rem;padding-left:4rem}h1,.h1{display:block;margin-top:3rem;margin-bottom:1rem;color:#00ff41;letter-spacing:.01em;font-weight:700;font-style:normal;font-size:1.5em;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}h2,.h2{position:relative;display:block;margin-top:2rem;margin-bottom:.5rem;color:#0c3;text-transform:none;letter-spacing:normal;font-weight:bold;font-size:1rem}h3{color:#0c3;text-decoration:underline;font-weight:bold;font-size:.9rem}h4 h5 h6{display:inline;text-decoration:none;color:#009926;font-weight:bold;font-size:.9rem}h3 h4 h5 h6{margin-top:.9rem;margin-bottom:.5rem}hr{border:0.5px dashed #009926;opacity:.5;margin:0;margin-top:20px;margin-bottom:20px}strong{font-weight:bold}em cite{font-style:italic}sup sub{position:relative;vertical-align:baseline;font-size:.75em;line-height:0}sup{top:-.5em}sub{bottom:-.2em}small{font-size:.85em}acronym abbr{border-bottom:1px dotted}ul ol dl{line-height:1.725}ul ul,ol ul,ul ol,ol ol{margin-top:0;margin-bottom:0}ol{list-style:decimal}dt{font-weight:bold}table{width:100%;border-collapse:collapse;text-align:left;font-size:14px;overflow:auto;display:block}th{padding:8px;border-bottom:1px dashed #003d0f;color:#0c3;font-weight:bold;font-size:15px}td{padding:0 8px;border-bottom:none}body{background-color:#0a0a0a}body:before{content:"";position:fixed;top:0;left:0;width:100vw;height:100vh;background:repeating-linear-gradient(0deg, rgba(0,0,0,0.15), rgba(0,0,0,0.15) 1px, transparent 1px, transparent 2px);pointer-events:none;z-index:9999}h1,h2,h3,h4,h5,h6,a{text-shadow:0 0 5px rgba(0,255,65,0.3)}a:hover{text-shadow:0 0 10px rgba(0,255,65,0.6)}code,pre{background:#0d1a0d !important;border:1px solid #00ff41;border-radius:3px}::selection{background:#00ff41;color:#000}#header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:2rem;padding:1rem 0;border-bottom:1px solid #00ff41}#header .header-link{display:flex;align-items:center;gap:1rem;background:none;color:inherit;text-decoration:none;flex:1;min-width:0}#header .header-link #logo{display:inline-block;flex-shrink:0;margin-right:0;width:50px;height:50px;border-radius:5px;background-size:50px 50px;background-repeat:no-repeat;border:1px solid #00ff41}#header .header-link #title-group{flex:1;min-width:0}#header .header-link #title-group h1{margin:0;color:#00ff41;letter-spacing:.01em;font-weight:700;font-style:normal;font-size:1.5rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 0 8px rgba(0,255,65,0.5)}#header .header-link #title-group .subtitle{margin:0.25rem 0 0;color:#008f11;font-size:0.85rem;font-weight:200;letter-spacing:0.02em;opacity:0.8}#header #nav{color:#00ff41;letter-spacing:.01em;font-weight:200;font-style:normal;font-size:.8rem}#header #nav ul{margin:0;padding:0;list-style-type:none;line-height:15px;display:flex;align-items:center;flex-wrap:wrap;gap:0.5rem}#header #nav ul a{margin-right:0;color:#00ff41;padding:0.5rem 0.75rem;transition:all 0.2s ease;border-radius:4px;border:1px solid transparent}#header #nav ul a:hover{background:rgba(0,255,65,0.1);border-color:#00ff41;text-decoration:none;box-shadow:0 0 10px rgba(0,255,65,0.3)}#header #nav ul li{display:inline-block;margin-right:0;border-right:0;vertical-align:middle}#header #nav ul li:last-child{margin-right:0}#header #nav ul li.icon{display:none}@media screen and (max-width: 768px){#header{flex-direction:column;align-items:flex-start}#header .header-link{width:100%}#header #nav ul{width:100%;justify-content:flex-start}}.post-list .post-item{display:flex;align-items:baseline;margin-bottom:0.75rem}.post-list .post-item .meta{display:inline-block;min-width:100px;color:#008f11;font-size:14px;flex-shrink:0}.post-list .post-item span{flex:1;min-width:0}.post-list .post-item span a{position:relative;padding-right:1.25rem;color:#00ff41}.post-list .post-item span a:after{content:"›";position:absolute;right:0;opacity:0;transform:translateX(-4px);transition:all 0.2s ease;color:#00ff41;font-weight:bold;font-size:1.2em}.post-list .post-item span a:hover:after{opacity:1;transform:translateX(0)}@media (max-width: 480px){.post-list .post-item{flex-direction:column}.post-list .post-item .meta{margin-bottom:0.25rem;font-size:12px}}@font-face{font-style:normal;font-family:"JetBrains Mono";font-display:swap;src:local("JetBrains Mono"),local("JetBrains-Mono"),url("../lib/JetBrainsMono/web/woff2/JetBrainsMono-Regular.woff2") format("woff2"),url("../lib/JetBrainsMono/web/woff/JetBrainsMono-Regular.woff") format("woff"),url("../lib/JetBrainsMono/web/eot/JetBrainsMono-Regular.eot") format("embedded-opentype"),url("../lib/JetBrainsMono/ttf/JetBrainsMono-Regular.ttf") format("truetype")}*,*:before,*:after{box-sizing:border-box}html{margin:0;padding:0;height:100%;border-top:2px solid #00ff41;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0;height:100%;background-color:#0a0a0a;color:#00ff41;font-display:swap;font-weight:400;font-size:16px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;line-height:1.725;text-rendering:geometricPrecision;flex:1;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.content{position:relative;display:flex;flex-direction:column;min-height:100%;overflow-wrap:break-word}.content p{hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;-webkit-hyphens:auto}.content code{hyphens:manual;-moz-hyphens:manual;-ms-hyphens:manual;-webkit-hyphens:manual}.content a{color:#00ff41;text-decoration:none;background-image:linear-gradient(transparent, transparent 5px, #00ff41 5px, #00ff41);background-position:bottom;background-size:100% 6px;background-repeat:repeat-x}.content a:hover{background-image:linear-gradient(transparent, transparent 4px, #00ff41 4px, #00ff41)}.content a.icon{background:none}.content a.icon:hover{color:#00ff41}.content h1 a,.content .h1 a,.content h2 a,.content h3 a,.content h4 a,.content h5 a,.content h6 a{background:none;color:inherit;text-decoration:none}.content h1 a:hover,.content .h1 a:hover,.content h2 a:hover,.content h3 a:hover,.content h4 a:hover,.content h5 a:hover,.content h6 a:hover{background-image:linear-gradient(transparent, transparent 6px, #00ff41 6px, #00ff41);background-position:bottom;background-size:100% 6px;background-repeat:repeat-x}.content h6 a{background:none;color:inherit;text-decoration:none}.content h6 a:hover{background-image:linear-gradient(transparent, transparent 6px, #00ff41 6px, #00ff41);background-position:bottom;background-size:100% 6px;background-repeat:repeat-x}@media (min-width: 540px){.image-wrap{flex-direction:row;margin-bottom:2rem}.image-wrap .image-block{flex:1 0 35%;margin-right:2rem}.image-wrap p{flex:1 0 65%}}.max-width{max-width:48rem}@media (max-width: 480px){.px3{padding-right:1rem;padding-left:1rem}.my4{margin-top:2rem;margin-bottom:2rem}}@media (min-width: 480px){p{text-align:justify}}#header{margin:0 auto 2rem;width:100%}#header h1,#header .h1{margin-top:0;margin-bottom:0;color:#00ff41;letter-spacing:.01em;font-weight:700;font-style:normal;font-size:1.5rem;line-height:2rem;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}#header a{background:none;color:inherit;text-decoration:none}#header #logo{display:inline-block;float:left;margin-right:20px;width:50px;height:50px;border-radius:5px;background-size:50px 50px;background-repeat:no-repeat;filter:grayscale(100%);-webkit-filter:grayscale(100%)}#header #nav{color:#00ff41;letter-spacing:.01em;font-weight:200;font-style:normal;font-size:.8rem}#header #nav ul{margin:0;padding:0;list-style-type:none;line-height:15px}#header #nav ul a{margin-right:15px;color:#00ff41}#header #nav ul a:hover{background-image:linear-gradient(transparent, transparent 5px, #00ff41 5px, #00ff41);background-position:bottom;background-size:100% 6px;background-repeat:repeat-x}#header #nav ul li{display:inline-block;margin-right:15px;border-right:1px dotted;border-color:#00ff41;vertical-align:middle}#header #nav ul .icon{display:none}#header #nav ul li:last-child{margin-right:0;border-right:0}#header #nav ul li:last-child a{margin-right:0}#header:hover #logo{filter:none;-webkit-filter:none}@media screen and (max-width: 480px){#header #title{display:table;margin-right:5rem;min-height:50px}#header #title h1{display:table-cell;vertical-align:middle}#header #nav ul a:hover{background:none}#header #nav ul li{display:none;border-right:0}#header #nav ul li.icon{position:absolute;top:77px;right:1rem;display:inline-block}#header #nav ul.responsive li{display:block}#header #nav li:not(:first-child){padding-top:1rem;padding-left:70px;font-size:1rem}}#header-post{position:fixed;top:2rem;right:0;display:inline-block;float:right;z-index:100}#header-post a{background:none;color:inherit;text-decoration:none}#header-post a.icon{background:none}#header-post a.icon:hover{color:#00ff41}#header-post nav ul{display:block;list-style-image:none;list-style-position:outside;list-style-type:none;padding-inline-start:40px}#header-post nav ul li{display:list-item;margin-right:0px}#header-post nav>ul{margin-block-end:1em;margin-block-start:1em}#header-post ul{display:inline-block;margin:0;padding:0;list-style-type:none}#header-post ul li{display:inline-block;margin-right:15px;vertical-align:middle}#header-post ul li:last-child{margin-right:0}#header-post #menu-icon{float:right;margin-right:2rem;margin-left:15px}#header-post #menu-icon:hover{color:#00ff41}#header-post #menu-icon-tablet{float:right;margin-right:2rem;margin-left:15px}#header-post #menu-icon-tablet:hover{color:#00ff41}#header-post #top-icon-tablet{position:fixed;right:2rem;bottom:2rem;margin-right:2rem;margin-left:15px}#header-post #top-icon-tablet:hover{color:#00ff41}#header-post .active{color:#00ff41}#header-post #menu{visibility:hidden;margin-right:2rem}#header-post #nav{color:#00ff41;letter-spacing:.01em;font-weight:200;font-style:normal;font-size:.8rem}#header-post #nav ul{line-height:15px}#header-post #nav ul a{margin-right:15px;color:#00ff41}#header-post #nav ul a:hover{background-image:linear-gradient(transparent, transparent 5px, #00ff41 5px, #00ff41);background-position:bottom;background-size:100% 6px;background-repeat:repeat-x}#header-post #nav ul li{border-right:1px dotted #00ff41}#header-post #nav ul li:last-child{margin-right:0;border-right:0}#header-post #nav ul li:last-child a{margin-right:0}#header-post #actions{float:right;margin-top:2rem;margin-right:2rem;width:100%;text-align:right}#header-post #actions ul{display:block}#header-post #actions .info{display:block;font-style:italic}#header-post #share{clear:both;padding-top:1rem;padding-right:2rem;text-align:right}#header-post #share li{display:block;margin:0}#header-post #toc{float:right;clear:both;overflow:auto;margin-top:1rem;padding-right:2rem;max-width:20em;max-height:calc(95vh - 7rem);text-align:right}#header-post #toc a:hover{color:#00ff41}#header-post #toc nav>ul>li{color:#00ff41;font-size:.8rem}#header-post #toc nav>ul>li:before{color:#00ff41;content:"#";margin-right:8px}#header-post #toc nav>ul>li>ul>li{color:#008f11;font-size:.7rem}#header-post #toc nav>ul>li>ul>li:before{color:#00ff41;content:"·";font-weight:bold;margin-right:3px}#header-post #toc nav>ul>li>ul>li>ul>li{color:#002905;font-size:.4rem}#header-post #toc .toc-level-5{display:none}#header-post #toc .toc-level-6{display:none}#header-post #toc .toc-number{display:none}@media screen and (max-width: 500px){#header-post{display:none}}@media screen and (max-width: 900px){#header-post #menu-icon{display:none}#header-post #actions{display:none}}@media screen and (max-width: 1199px){#header-post #toc{display:none}}@media screen and (min-width: 900px){#header-post #menu-icon-tablet{display:none !important}#header-post #top-icon-tablet{display:none !important}}@media screen and (min-width: 1199px){#header-post #actions{width:auto}#header-post #actions ul{display:inline-block;float:right}#header-post #actions .info{display:inline;float:left;margin-right:2rem;font-style:italic}}#footer-post{position:fixed;right:0;bottom:0;left:0;z-index:5000000;width:100%;border-top:1px solid #003d0f;background:#0f0f0f;transition:opacity .2s}#footer-post a{background:none;color:inherit;text-decoration:none}#footer-post a.icon{background:none}#footer-post a.icon:hover{color:#00ff41}#footer-post #nav-footer{padding-right:1rem;padding-left:1rem;background:#242424;text-align:center}#footer-post #nav-footer a{color:#00ff41;font-size:1em}#footer-post #nav-footer a:hover{background-image:linear-gradient(transparent, transparent 5px, #00ff41 5px, #00ff41);background-position:bottom;background-size:100% 6px;background-repeat:repeat-x}#footer-post #nav-footer ul{display:table;margin:0;padding:0;width:100%;list-style-type:none}#footer-post #nav-footer ul li{display:inline-table;padding:10px;width:20%;vertical-align:middle}#footer-post #actions-footer{overflow:auto;margin-top:1rem;margin-bottom:1rem;padding-right:1rem;padding-left:1rem;width:100%;text-align:center;white-space:nowrap}#footer-post #actions-footer a{display:inline-block;padding-left:1rem;color:#00ff41}#footer-post #share-footer{padding-right:1rem;padding-left:1rem;background:#242424;text-align:center}#footer-post #share-footer ul{display:table;margin:0;padding:0;width:100%;list-style-type:none}#footer-post #share-footer ul li{display:inline-table;padding:10px;width:20%;vertical-align:middle}#footer-post #toc-footer{clear:both;padding-top:1rem;padding-bottom:1rem;background:#242424;text-align:left}#footer-post #toc-footer #TableOfContents ul{margin:0;padding-left:20px;list-style-type:none}#footer-post #toc-footer #TableOfContents ul li{line-height:30px}#footer-post #toc-footer a:hover{color:#00ff41}#footer-post #toc-footer #TableOfContents>ul>li{color:#00ff41;font-size:.8rem}#footer-post #toc-footer #TableOfContents>ul>li:before{color:#00ff41;content:"#";margin-right:8px}#footer-post #toc-footer #TableOfContents>ul>li>ul>li{color:#008f11;font-size:.7rem;line-height:15px}#footer-post #toc-footer #TableOfContents>ul>li>ul>li:before{color:#00ff41;content:"·";font-weight:bold;margin-right:3px}#footer-post #toc-footer #TableOfContents>ul>li>ul>li>ul>li{display:none}@media screen and (min-width: 500px){#footer-post-container{display:none}}.post-list{padding:0}.post-list .post-item{margin-bottom:1rem;margin-left:0;list-style-type:none}.post-list .post-item .meta{display:block;margin-right:16px;min-width:100px;color:#008f11;font-size:14px}@media (min-width: 480px){.post-list .post-item{display:flex;margin-bottom:5px}.post-list .post-item .meta{text-align:left}}.project-list{padding:0;list-style:none}.project-list .project-item{margin-bottom:5px}.project-list .project-item p{display:inline}article header .posttitle{margin-top:0;margin-bottom:0;text-transform:none;font-size:1.5em;line-height:1.25}article header .meta{margin-top:0;margin-bottom:1rem}article header .meta *{color:#009926;font-size:.85rem}article header .author{text-transform:uppercase;letter-spacing:.01em;font-weight:700}article header .postdate{display:inline}article .content h2:before{position:absolute;top:-4px;left:-1rem;color:#00ff41;content:"#";font-weight:bold;font-size:1.2rem}article .content img,article .content video{display:block;margin:auto;max-width:100%;height:auto}article .content img .video-container,article .content video .video-container{position:relative;overflow:hidden;padding-top:56.25% e;height:0}article .content img .video-container iframe,article .content img .video-container object,article .content img .video-container embed,article .content video .video-container iframe,article .content video .video-container object,article .content video .video-container embed{position:absolute;top:0;left:0;margin-top:0;width:100%;height:100%}article .content img blockquote,article .content video blockquote{margin:1rem 10px;padding:.5em 10px;background:inherit;color:#00ff41;quotes:"\201C" "\201D" "\2018" "\2019";font-weight:bold}article .content img blockquote p,article .content video blockquote p{margin:0}article .content img blockquote:before,article .content video blockquote:before{margin-right:.25em;color:#00ff41;content:"\201C";vertical-align:-.4em;font-size:2em;line-height:.1em}article .content img blockquote footer,article .content video blockquote footer{margin:line-height 0;color:#008f11;font-size:11px}article .content img blockquote footer a,article .content video blockquote footer a{background-image:linear-gradient(transparent, transparent 5px, #008f11 5px, #008f11);color:#008f11}article .content img blockquote footer a:hover,article .content video blockquote footer a:hover{background-image:linear-gradient(transparent, transparent 4px, #00f51d 4px, #00f51d);color:#00f51d}article .content img blockquote footer cite:before,article .content video blockquote footer cite:before{padding:0 .5em;content:"—"}article .content img .pullquote,article .content video .pullquote{margin:0;width:45%;text-align:left}article .content img .pullquote.left,article .content video .pullquote.left{margin-right:1em;margin-left:.5em}article .content img .pullquote.right,article .content video .pullquote.right{margin-right:.5em;margin-left:1em}article .content img .caption,article .content video .caption{position:relative;display:block;margin-top:.5em;color:#008f11;text-align:center;font-size:.9em}.posttitle{text-transform:none;font-size:1.5em;line-height:1.25}.article-tag .tag-link:before{content:"#";background-image:linear-gradient(transparent, transparent 10px, #00ff41 10px, #00ff41);background-position:bottom;background-size:100% 6px;background-repeat:repeat-x}.article-category .category-link{background-image:linear-gradient(transparent, transparent 10px, #00ff41 10px, #00ff41);background-position:bottom;background-size:100% 6px;background-repeat:repeat-x}@media (min-width: 480px){.article-read-time,.article-tag,.article-category{display:inline}.article-read-time:before,.article-tag:before,.article-category:before{content:"|"}}#archive .post-list{padding:0}#archive .post-list .post-item{margin-bottom:1rem;margin-left:0;list-style-type:none}#archive .post-list .post-item .meta{display:block;margin-right:16px;min-width:100px;color:#008f11;font-size:14px}@media (min-width: 480px){#archive .post-list .post-item{display:flex;margin-bottom:5px;margin-left:1rem}#archive .post-list .post-item .meta{text-align:left}}.blog-post-comments{margin-top:4rem}#footer{position:absolute;bottom:0;margin-bottom:10px;width:100%;color:#008f11;vertical-align:top;text-align:center;font-size:11px}#footer ul{margin:0;padding:0;list-style:none}#footer li{display:inline-block;margin-right:15px;border-right:1px solid;border-color:#003d0f;vertical-align:middle}#footer li a{margin-right:15px}#footer li:last-child{margin-right:0;border-right:0}#footer li:last-child a{margin-right:0}#footer a{color:#008f11;text-decoration:underline;background-image:none}#footer a:hover{color:#00f51d}#footer .footer-left{height:20px;vertical-align:middle;line-height:20px}@media (min-width: 39rem){#footer{display:flex;flex-flow:row wrap;justify-content:space-between;align-items:center;align-content:center;margin-bottom:20px}#footer .footer-left{align-self:flex-start;margin-right:20px}#footer .footer-right{align-self:flex-end}}.pagination{display:inline-block;margin-top:2rem;width:100%;text-align:center}.pagination .page-number{color:#00ff41;font-size:.8rem}.pagination a{padding:4px 6px;border-radius:5px;background-image:none;color:#00ff41;text-decoration:none}.pagination a:hover{background-image:none}.pagination a:hover:not(.active){color:#0c3}.search-input{padding:4px 7px;width:100%;outline:none;border:solid 1px #009926;border-radius:5px;background-color:#0a0a0a;color:#00ff41;font-size:1.2rem;-webkit-border-radius:5px;-moz-border-radius:5px}.search-input:focus{border:solid 1px #00ff41}#search-result ul.search-result-list{padding:0;list-style-type:none}#search-result li{margin:2em auto}#search-result a.search-result-title{background-image:none;color:#00ff41;text-transform:capitalize;font-weight:bold;line-height:1.2}#search-result p.search-result{overflow:hidden;margin:.4em auto;max-height:13em;text-align:justify;font-size:.8em}#search-result em.search-keyword{border-bottom:1px dashed #00ff41;color:#00ff41;font-weight:bold}.search-no-result{display:none;padding-bottom:.5em;color:#00ff41}#tag-cloud .tag-cloud-title{color:#008f11}#tag-cloud .tag-cloud-tags{clear:both;text-align:center}#tag-cloud .tag-cloud-tags a{display:inline-block;margin:10px}.tooltipped{position:relative}.tooltipped::after{position:absolute;z-index:1000000;display:none;padding:.2em .5em;-webkit-font-smoothing:subpixel-antialiased;color:#0a0a0a;font-display:swap;font-weight:400;font-size:12.8px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;line-height:1.725;text-rendering:geometricPrecision;text-align:center;word-wrap:break-word;white-space:pre;content:attr(aria-label);background:#00ff41;border-radius:3px;opacity:0}.tooltipped::before{position:absolute;z-index:1000001;display:none;width:0;height:0;color:#00ff41;pointer-events:none;content:'';border:6px solid transparent;opacity:0}@keyframes tooltip-appear{from{opacity:0}to{opacity:1}}.tooltipped:hover::before,.tooltipped:hover::after,.tooltipped:active::before,.tooltipped:active::after,.tooltipped:focus::before,.tooltipped:focus::after{display:inline-block;text-decoration:none;animation-name:tooltip-appear;animation-duration:0.1s;animation-fill-mode:forwards;animation-timing-function:ease-in}.tooltipped-s::after,.tooltipped-sw::after{top:100%;right:50%;margin-top:6px}.tooltipped-s::before,.tooltipped-sw::before{top:auto;right:50%;bottom:-7px;margin-right:-6px;border-bottom-color:#00ff41}.tooltipped-sw::after{margin-right:-16px}.tooltipped-s::after{transform:translateX(50%)}#categories .category-list-title{color:#008f11}#categories .category-list .category-list-item .category-list-count{color:#008f11}#categories .category-list .category-list-item .category-list-count:before{content:" ("}#categories .category-list .category-list-item .category-list-count:after{content:")"}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes glowPulse{0%,100%{box-shadow:0 0 5px rgba(0,255,65,0.3)}50%{box-shadow:0 0 20px rgba(0,255,65,0.6)}}@keyframes blink{0%,50%{opacity:1}51%,100%{opacity:0}}@keyframes scanline{0%{transform:translateY(-100%)}100%{transform:translateY(100vh)}}@keyframes successFlash{0%{background-color:rgba(0,255,65,0.3)}100%{background-color:transparent}}@keyframes scaleUp{0%{transform:scale(1)}50%{transform:scale(1.02)}100%{transform:scale(1)}}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}.animate-fade-in{animation:fadeIn 0.5s ease-out forwards}.animate-slide-up{animation:slideUp 0.5s ease-out forwards}.animate-blink{animation:blink 1s infinite}.animate-float{animation:float 3s ease-in-out infinite}.animate-delay-1{animation-delay:.1s}.animate-delay-2{animation-delay:.2s}.animate-delay-3{animation-delay:.3s}.animate-delay-4{animation-delay:.4s}.animate-delay-5{animation-delay:.5s}.animate-delay-6{animation-delay:.6s}.animate-delay-7{animation-delay:.7s}.animate-delay-8{animation-delay:.8s}.animate-delay-9{animation-delay:.9s}.animate-delay-10{animation-delay:1s}@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important}}.post-cards{display:grid;grid-template-columns:repeat(auto-fill, minmax(300px, 1fr));gap:1.5rem;margin-top:1.5rem}.post-card{position:relative;display:flex;flex-direction:column;padding:1.5rem;border:1px solid #003d0f;border-radius:8px;background:rgba(10,10,10,0.6);overflow:hidden;transition:all 0.3s ease}.post-card::before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:#00ff41;transform:scaleY(0);transition:transform 0.3s ease}.post-card:hover{transform:translateY(-4px);border-color:#00ff41;box-shadow:0 8px 30px rgba(0,255,65,0.15)}.post-card:hover::before{transform:scaleY(1)}.post-card:hover .card-title{color:#00ff41}.post-card:hover .card-link{color:#00ff41;padding-right:1.5rem}.post-card:hover .card-link::after{opacity:1;transform:translateX(0)}.post-card .card-meta{display:flex;align-items:center;gap:0.75rem;margin-bottom:0.75rem;font-size:0.8rem;color:#008f11}.post-card .card-meta time{display:flex;align-items:center;gap:0.25rem}.post-card .card-meta .reading-time{padding:0.125rem 0.5rem;background:rgba(0,255,65,0.1);border-radius:3px;font-size:0.75rem;border:1px solid rgba(0,255,65,0.2)}.post-card .card-title{margin:0 0 0.75rem;font-size:1.25rem;font-weight:600;line-height:1.3;color:#00ff41;transition:color 0.2s ease}.post-card .card-excerpt{flex:1;margin:0 0 1rem;color:rgba(0,255,65,0.85);font-size:0.95rem;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.post-card .card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:1rem;border-top:1px solid rgba(0,61,15,0.5)}.post-card .card-tags{display:flex;flex-wrap:wrap;gap:0.5rem}.post-card .card-tags .tag{padding:0.125rem 0.5rem;font-size:0.75rem;color:#0c3;background:transparent;border:1px solid rgba(0,204,51,0.3);border-radius:3px;transition:all 0.2s ease}.post-card .card-tags .tag:hover{background:rgba(0,255,65,0.1);border-color:#00ff41}.post-card .card-link{position:relative;display:inline-flex;align-items:center;color:#00ff41;font-size:0.9rem;font-weight:500;text-decoration:none;padding-right:1rem;transition:all 0.2s ease}.post-card .card-link::after{content:"→";position:absolute;right:0;opacity:0;transform:translateX(-4px);color:#00ff41;transition:all 0.2s ease}.post-card.featured{grid-column:span 2;padding:2rem}@media (max-width: 768px){.post-card.featured{grid-column:span 1}}.post-card.featured .card-title{font-size:1.75rem}.post-card.featured .card-excerpt{-webkit-line-clamp:4;font-size:1rem}.post-item{display:flex;align-items:baseline;padding:1rem;border:1px solid transparent;border-radius:6px;margin-bottom:0.5rem;transition:all 0.2s ease}.post-item:hover{background:rgba(0,255,65,0.03);border-color:rgba(0,61,15,0.5)}.post-item:hover .post-title{color:#00ff41;padding-left:0.5rem}.post-item:hover .post-arrow{opacity:1;transform:translateX(0)}.post-item .meta{display:inline-block;min-width:100px;color:#008f11;font-size:0.85rem;flex-shrink:0}.post-item .post-info{flex:1;min-width:0}.post-item .post-title{display:inline;margin:0;font-size:1rem;font-weight:500;color:#00ff41;transition:all 0.2s ease}.post-item .post-arrow{margin-left:0.5rem;color:#00ff41;opacity:0;transform:translateX(-4px);transition:all 0.2s ease}.post-item .post-categories{display:none;margin-left:0.5rem;font-size:0.75rem;color:#008f11}@media (min-width: 768px){.post-item .post-categories{display:inline}}@media (max-width: 480px){.post-item{flex-direction:column;align-items:flex-start}.post-item .meta{margin-bottom:0.25rem;font-size:0.8rem}.post-item .post-title{font-size:0.95rem}}.view-all{margin-top:2rem;text-align:center}.view-all .btn-view-all{display:inline-block;padding:0.75rem 1.5rem;color:#00ff41;font-size:0.95rem;font-weight:500;text-decoration:none;border:1px solid rgba(0,255,65,0.3);border-radius:6px;transition:all 0.2s ease}.view-all .btn-view-all:hover{background:rgba(0,255,65,0.08);border-color:#00ff41;box-shadow:0 0 15px rgba(0,255,65,0.2)}.content-box,.contact-box{margin-bottom:1.5rem;padding:1.5rem;border:1px solid #003d0f;border-radius:8px;background:rgba(10,10,10,0.6)}.content-box>.h1,.contact-box>.h1,.content-box>.h2,.contact-box>.h2{margin:0 0 1rem;font-size:1.25rem;font-weight:600;color:#00ff41;padding-bottom:0.75rem;border-bottom:1px solid #003d0f}.contact-box .contact-content{display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap}@media (max-width: 600px){.contact-box .contact-content{flex-direction:column;align-items:flex-start}}.contact-box .contact-info{flex:1;min-width:200px}.contact-box .contact-info h3{margin:0 0 0.5rem;font-size:1.1rem;font-weight:600;color:#00ff41}.contact-box .contact-info p{margin:0 0 1rem;font-size:0.9rem;color:rgba(0,255,65,0.8);line-height:1.6}.contact-box .contact-info .contact-social{display:flex;gap:0.75rem}.contact-box .contact-info .contact-social a.icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;color:#00ff41;background:transparent;border:1px solid #003d0f;border-radius:6px;text-decoration:none;transition:all 0.2s ease}.contact-box .contact-info .contact-social a.icon i{font-size:1rem}.contact-box .contact-info .contact-social a.icon:hover{color:#00ff41;border-color:#00ff41;background:rgba(0,255,65,0.05);transform:translateY(-2px)}.contact-box .contact-stats{display:flex;gap:1.5rem}.contact-box .contact-stats .stat{text-align:center;padding:0.75rem 1rem;background:rgba(10,10,10,0.8);border:1px solid #003d0f;border-radius:6px;min-width:70px}.contact-box .contact-stats .stat .stat-number{display:block;font-size:1.5rem;font-weight:700;color:#00ff41;line-height:1}.contact-box .contact-stats .stat .stat-label{display:block;margin-top:0.25rem;font-size:0.75rem;color:#008f11;text-transform:uppercase;letter-spacing:0.05em}#tags{margin-bottom:2rem}#tags .h2{display:block;margin-bottom:1rem;font-size:1rem;font-weight:600;color:#00ff41}#tags .tag-cloud{display:flex;flex-wrap:wrap;gap:0.5rem}#tags .tag-cloud .tag{display:inline-flex;align-items:center;gap:0.35rem;padding:0.4rem 0.75rem;font-size:0.85rem;color:#0c3;background:transparent;border:1px solid rgba(0,204,51,0.2);border-radius:4px;text-decoration:none;transition:all 0.2s ease}#tags .tag-cloud .tag .tag-count{font-size:0.7rem;color:#008f11;padding:0.1rem 0.35rem;background:rgba(0,61,15,0.2);border-radius:3px}#tags .tag-cloud .tag:hover{background:rgba(0,255,65,0.05);border-color:#00ff41;color:#00ff41}#tags .tag-cloud .tag:hover .tag-count{background:rgba(0,255,65,0.2);color:#00ff41}.post-list{padding:0;margin-top:1rem}.post-list .post-item{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem;padding:1rem 1.25rem;background:rgba(10,10,10,0.6);border:1px solid #003d0f;border-radius:8px;list-style-type:none;transition:all 0.2s ease}.post-list .post-item:hover{border-color:#00ff41;background:rgba(0,255,65,0.03);transform:translateX(4px)}.post-list .post-item:hover .post-title{color:#00ff41}.post-list .post-item:hover .post-arrow{opacity:1;transform:translateX(0)}.post-list .post-item .meta{display:flex;flex-direction:column;min-width:100px;color:#008f11;font-size:0.85rem;flex-shrink:0;text-align:right;padding-right:1rem;border-right:1px solid #003d0f}@media (max-width: 600px){.post-list .post-item .meta{min-width:70px;font-size:0.75rem;padding-right:0.75rem}}.post-list .post-item .post-info{flex:1;min-width:0}.post-list .post-item .post-title{margin:0 0 0.5rem;font-size:1.1rem;font-weight:600;color:#00ff41;transition:color 0.2s ease}.post-list .post-item .post-excerpt{margin:0 0 0.5rem;font-size:0.9rem;color:rgba(0,255,65,0.75);line-height:1.5}.post-list .post-item .post-meta-inline{display:flex;flex-wrap:wrap;gap:1rem;font-size:0.8rem;color:#008f11}.post-list .post-item .post-meta-inline .reading-time-inline{color:#0c3}.post-list .post-item .post-meta-inline .post-tags-inline{color:#008f11}.post-list .post-item .post-meta-inline .post-tags-inline span{color:#00ff41}.post-list .post-item .post-arrow{opacity:0;transform:translateX(-4px);color:#00ff41;font-size:1.25rem;transition:all 0.2s ease;align-self:center}@media (max-width: 600px){.post-list .post-item{flex-direction:column;gap:0.5rem}.post-list .post-item .meta{flex-direction:row;justify-content:flex-start;border-right:none;border-bottom:1px solid #003d0f;padding-bottom:0.5rem;margin-bottom:0.5rem;gap:0.5rem}.post-list .post-item .post-title{font-size:1rem}.post-list .post-item .post-excerpt{display:none}}.post-expandable-list{display:flex;flex-direction:column;gap:0.75rem;margin-top:1rem}.post-expand-item{background:rgba(10,10,10,0.6);border:1px solid #003d0f;border-radius:8px;overflow:hidden;cursor:pointer;transition:all 0.2s ease}.post-expand-item:hover{border-color:#00ff41}.post-expand-item:hover .post-expand-header{background:rgba(0,255,65,0.03)}.post-expand-item:hover .expand-icon{color:#00ff41}.post-expand-item.expanded{border-color:#00ff41}.post-expand-item.expanded .post-expand-header{background:rgba(0,255,65,0.05);border-bottom-color:rgba(0,255,65,0.3)}.post-expand-item.expanded .expand-icon{color:#00ff41;transform:rotate(45deg)}.post-expand-item .post-expand-header{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;transition:background 0.2s ease}.post-expand-item .post-expand-header .meta{min-width:100px;font-size:0.85rem;color:#008f11;flex-shrink:0}@media (max-width: 600px){.post-expand-item .post-expand-header .meta{min-width:70px;font-size:0.75rem}}.post-expand-item .post-expand-header .post-title-row{flex:1;min-width:0}.post-expand-item .post-expand-header .post-title-row .post-title{margin:0 0 0.35rem;font-size:1.05rem;font-weight:600;color:#00ff41}.post-expand-item .post-expand-header .post-title-row .post-meta-row{display:flex;align-items:center;gap:1rem;font-size:0.8rem}.post-expand-item .post-expand-header .post-title-row .post-meta-row .reading-time{color:#0c3}.post-expand-item .post-expand-header .post-title-row .post-meta-row .tags{display:flex;gap:0.5rem}.post-expand-item .post-expand-header .post-title-row .post-meta-row .tags .tag{color:#008f11}.post-expand-item .post-expand-header .post-title-row .post-meta-row .tags .tag:hover{color:#00ff41}.post-expand-item .post-expand-header .expand-icon{font-size:1.25rem;color:#008f11;transition:all 0.2s ease;flex-shrink:0}.post-expand-item .post-expand-content{display:none;padding:1.25rem;border-top:1px solid transparent}.post-expand-item.expanded .post-expand-content{display:block;border-top-color:rgba(0,255,65,0.2)}.post-expand-item .post-expand-content p{margin:0.75rem 0;font-size:0.95rem;line-height:1.7;color:rgba(0,255,65,0.9)}.post-expand-item .post-expand-content h2{margin:1.5rem 0 0.75rem;font-size:1.15rem;font-weight:600;color:#00ff41}.post-expand-item .post-expand-content h3{margin:1.25rem 0 0.5rem;font-size:1rem;font-weight:600;color:#00ff41}.post-expand-item .post-expand-content code{background:rgba(0,61,15,0.3);padding:0.15rem 0.4rem;border-radius:3px;font-size:0.85rem}.post-expand-item .post-expand-content pre{background:#0d1a0d !important;border:1px solid #00ff41;border-radius:6px;padding:1rem;margin:1rem 0;overflow-x:auto}.post-expand-item .post-expand-content pre code{background:transparent;padding:0}.post-expand-item .post-expand-content blockquote{margin:1rem 0;padding:0.75rem 1rem;background:rgba(0,255,65,0.03);border-left:3px solid #00ff41;font-style:italic}.post-expand-item .post-expand-content img{max-width:100%;border-radius:6px;border:1px solid #003d0f}.post-expand-item .post-expand-content ul,.post-expand-item .post-expand-content ol{margin:0.75rem 0;padding-left:1.5rem}.post-expand-item .post-expand-content ul li,.post-expand-item .post-expand-content ol li{margin-bottom:0.35rem;font-size:0.95rem;color:rgba(0,255,65,0.9)}@media (max-width: 600px){.post-expand-item .post-expand-header{flex-wrap:wrap;gap:0.5rem}.post-expand-item .post-expand-header .meta{min-width:auto;width:100%;border-bottom:1px solid #003d0f;padding-bottom:0.5rem;margin-bottom:0.25rem}.post-expand-item .post-expand-header .post-title-row{flex:1}.post-expand-item .post-expand-header .post-title-row .post-title{font-size:0.95rem}.post-expand-item .post-expand-header .post-title-row .post-meta-row{flex-wrap:wrap;gap:0.5rem}}.home-link{display:inline-flex;align-items:center;gap:0.5rem;margin-bottom:1rem;color:#00ff41;text-decoration:none;font-weight:500;transition:color 0.2s ease}.home-link:hover{color:#00ff41;text-decoration:underline}article .article-header{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #003d0f}article .article-header .article-title{margin:0 0 1rem;font-size:2rem;font-weight:700;line-height:1.2;color:#00ff41;text-shadow:0 0 10px rgba(0,255,65,0.2)}article .article-header .article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;font-size:0.9rem;color:#008f11}article .article-header .article-meta .meta-item{display:flex;align-items:center;gap:0.25rem}article .article-header .article-meta .meta-item i{color:#00ff41}article .article-header .article-meta .reading-time{padding:0.25rem 0.75rem;background:rgba(0,255,65,0.08);border:1px solid rgba(0,255,65,0.2);border-radius:4px;font-size:0.85rem}article .article-header .article-tags{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:1rem}article .article-header .article-tags .tag{padding:0.25rem 0.75rem;font-size:0.8rem;color:#0c3;background:transparent;border:1px solid rgba(0,204,51,0.3);border-radius:4px;text-decoration:none;transition:all 0.2s ease}article .article-header .article-tags .tag:hover{background:rgba(0,255,65,0.1);border-color:#00ff41;color:#00ff41}.toc-wrapper{position:sticky;top:2rem;max-height:calc(100vh - 4rem);overflow-y:auto;padding:1rem;background:rgba(10,10,10,0.5);border:1px solid #003d0f;border-radius:8px}.toc-wrapper .toc-title{margin:0 0 0.75rem;font-size:0.9rem;font-weight:600;color:#00ff41;text-transform:uppercase;letter-spacing:0.05em}.toc-wrapper nav ul{margin:0;padding:0;list-style:none}.toc-wrapper nav ul li{margin-bottom:0.5rem}.toc-wrapper nav ul li a{display:block;padding:0.35rem 0.5rem;color:rgba(0,255,65,0.7);font-size:0.85rem;text-decoration:none;border-left:2px solid transparent;transition:all 0.2s ease}.toc-wrapper nav ul li a:hover{color:#00ff41;border-left-color:#00ff41;background:rgba(0,255,65,0.05)}.toc-wrapper nav ul li.active>a{color:#00ff41;border-left-color:#00ff41;background:rgba(0,255,65,0.08)}.toc-wrapper nav ul li ul{margin-left:1rem;margin-top:0.25rem}.article-content{font-size:1rem;line-height:1.75}.article-content p{margin:1.5rem 0;color:rgba(0,255,65,0.9)}.article-content h2{margin:2.5rem 0 1rem;font-size:1.5rem;font-weight:600;color:#00ff41;border-bottom:1px solid #003d0f;padding-bottom:0.5rem}.article-content h3{margin:2rem 0 0.75rem;font-size:1.25rem;font-weight:600;color:#00ff41}.article-content a{color:#00ff41;text-decoration:none;border-bottom:1px solid transparent;transition:all 0.2s ease}.article-content a:hover{border-bottom-color:#00ff41;text-shadow:0 0 8px rgba(0,255,65,0.3)}.article-content blockquote{margin:1.5rem 0;padding:1rem 1.5rem;background:rgba(0,255,65,0.03);border-left:4px solid #00ff41;color:rgba(0,255,65,0.85);font-style:italic}.article-content blockquote p{margin:0}.article-content img{max-width:100%;height:auto;border:1px solid #003d0f;border-radius:8px;transition:all 0.3s ease}.article-content img:hover{border-color:#00ff41;box-shadow:0 0 20px rgba(0,255,65,0.15)}.share-buttons{display:flex;align-items:center;gap:0.75rem;padding:1.5rem 0;margin-top:2rem;border-top:1px solid #003d0f}.share-buttons .share-label{font-size:0.9rem;color:#008f11;margin-right:0.5rem}.share-buttons .share-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;color:#00ff41;background:transparent;border:1px solid #003d0f;border-radius:6px;text-decoration:none;transition:all 0.2s ease}.share-buttons .share-btn i{font-size:1.1rem}.share-buttons .share-btn:hover{color:#00ff41;border-color:#00ff41;background:rgba(0,255,65,0.05);transform:translateY(-2px)}.related-posts{margin-top:3rem;padding-top:2rem;border-top:1px solid #003d0f}.related-posts .related-title{margin:0 0 1.5rem;font-size:1.25rem;font-weight:600;color:#00ff41}.related-posts .related-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(200px, 1fr));gap:1rem}.related-posts .related-card{display:block;padding:1rem;border:1px solid #003d0f;border-radius:6px;text-decoration:none;transition:all 0.2s ease}.related-posts .related-card:hover{border-color:#00ff41;background:rgba(0,255,65,0.03)}.related-posts .related-card:hover .related-card-title{color:#00ff41}.related-posts .related-card .related-card-title{margin:0;font-size:0.95rem;font-weight:500;color:#00ff41;line-height:1.4;transition:color 0.2s ease}.related-posts .related-card .related-card-date{margin-top:0.5rem;font-size:0.8rem;color:#008f11}.reading-progress{position:fixed;top:0;left:0;width:0%;height:3px;background:linear-gradient(90deg, #00ff41, #0c3);z-index:9999;transition:width 0.1s ease}.article-content pre{position:relative;margin:1.5rem 0;padding:1rem;background:#0d1a0d !important;border:1px solid #00ff41;border-radius:8px;overflow-x:auto}.article-content pre code{font-family:"JetBrains Mono","Fira Code","SF Mono",Monaco,Consolas,monospace;font-size:0.9rem;line-height:1.6}.article-content .code-header{display:flex;align-items:center;justify-content:space-between;padding:0.5rem 1rem;background:rgba(0,255,65,0.05);border-bottom:1px solid rgba(0,255,65,0.2);border-radius:7px 7px 0 0;margin:0 -1px}.article-content .code-header .code-lang{font-size:0.8rem;color:#008f11;text-transform:uppercase}.article-content .code-header .copy-btn{padding:0.25rem 0.75rem;font-size:0.8rem;color:#00ff41;background:transparent;border:1px solid rgba(0,255,65,0.3);border-radius:4px;cursor:pointer;transition:all 0.2s ease}.article-content .code-header .copy-btn:hover{background:rgba(0,255,65,0.1);border-color:#00ff41}.article-content .code-header .copy-btn.copied{background:rgba(0,255,65,0.2);border-color:#00ff41}pre{overflow-x:auto;padding:15px 15px 10px 15px;border:1px dotted #003d0f;border-radius:2px;-webkit-border-radius:2px;font-size:13px;font-family:"JetBrains Mono","Fira Code","SF Mono",Monaco,Consolas,monospace;line-height:22px;position:relative}pre .code-copy-btn{position:absolute;top:0;right:0;border:0;border-radius:0 2px;padding:0;font-family:"JetBrains Mono", monospace;font-weight:800;font-size:0.9em;line-height:1.7;color:#fff;background-color:#8c8c8c;min-width:60px;text-align:center;cursor:pointer;letter-spacing:0em}pre .code-copy-btn:hover{background-color:#666;color:#2bbc8a}pre code{display:block;padding:0;border:none}code{font-family:"JetBrains Mono","Fira Code","SF Mono",Monaco,Consolas,monospace;padding:0 5px;border:1px dotted #003d0f;border-radius:2px;-webkit-border-radius:2px}.highlight>div{border-radius:2px;-webkit-border-radius:2px}.highlight pre{border:none;background:none}.highlight table pre{margin-top:0}.highlight table td:first-child pre{padding-right:0}.highlight table td:last-child pre{padding-left:0}

/*# sourceMappingURL=styles.css.map */