/*
Theme Name: hacklab01
Theme URI: https://hacklab01.org/
Author: hacklab01
Description: Terminal/NFO archive theme migrated from the hacklab01 Astro site.
Version: 1.2.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: hacklab01
*/

:root{--bg:#0a0a0a;--panel:#000;--border:#2ea92e;--text:#9cff9c;--muted:#2ea92e;--accent:#39ff14;--dim:#1f7f1f;--font:'Courier New','Lucida Console',Monaco,monospace;--frame-inset:calc(2ch + .5rem);--space:1rem}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:15px;line-height:1.35;min-height:100vh;-webkit-font-smoothing:none;text-rendering:optimizeSpeed}::selection{background:var(--accent);color:#001400}a,a:visited{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}img{display:block;height:auto;max-width:100%}
.shell{background:var(--panel);margin:0 auto;overflow:hidden;position:relative;width:min(72rem,calc(100% - 2rem))}.shell-border-l,.shell-border-r{background:var(--panel);bottom:0;color:var(--muted);font:15px/1 var(--font);overflow:hidden;pointer-events:none;position:absolute;top:0;white-space:pre;width:2ch;z-index:2}.shell-border-l{left:0}.shell-border-r{right:0}.shell-top,.shell-bottom,.site-rule{align-items:center;background:var(--panel);color:var(--muted);display:flex;font:15px/1 var(--font);position:relative;z-index:3}.shell-top>span,.shell-bottom>span,.site-rule>span{flex:1;overflow:hidden;white-space:nowrap}.shell-top>span:before,.shell-bottom>span:before,.site-rule>span:before{content:'================================================================================================================================================================================================================================================================================================================'}.shell-top:before,.shell-top:after,.shell-bottom:before,.shell-bottom:after{content:'++';flex-shrink:0}
header{padding:0 var(--frame-inset);position:relative;z-index:1}.site-banner{background:transparent;color:var(--text);display:block;font:16px/1 var(--font);height:auto;max-height:60vh;min-height:min(15rem,60vh);overflow:hidden;white-space:pre}.site-banner:hover{text-decoration:none}.site-banner pre{color:inherit;font:inherit;min-height:100%;white-space:pre}.header-row{align-items:center;display:flex;font:15px/1 var(--font);gap:.35rem;padding:.5rem 0}.logo,.logo:visited{color:var(--accent);font-weight:700;white-space:nowrap}.header-command{color:var(--accent)}.search-input{background:transparent;border:0;caret-color:var(--accent);color:var(--text);flex:1;font:inherit;min-width:12rem;outline:0}.search-input::placeholder{color:var(--muted)}.search-input:focus::placeholder{color:transparent}
main{padding:var(--space) var(--frame-inset);position:relative;z-index:1}.term-block-title{align-items:baseline;color:var(--accent);display:flex;font-size:1.2rem;font-weight:700;margin-left:calc(-1 * var(--frame-inset));margin-right:calc(-1 * var(--frame-inset));overflow-wrap:anywhere;padding:.2rem 0;text-transform:uppercase}.term-block-title span:after{color:var(--muted);content:']'}.term-block-title:before{color:var(--muted);content:' ]================================================================================================================================================================================================================================================================================================================';flex:1;min-width:var(--frame-inset);overflow:hidden;transform:scaleX(-1);white-space:nowrap}.term-block-title:after{color:var(--muted);content:'================================================================================================================================================================================================================================================================================================================';flex:1;min-width:var(--frame-inset);overflow:hidden;white-space:nowrap}
.featured-top{display:flex;flex-flow:row wrap;gap:0 3ch;justify-content:center}.featured-top>.term-block-title{flex:0 0 calc(100% + 2 * var(--frame-inset))}.featured-card{padding:.5rem 0}.featured-card:hover{text-decoration:none}.featured-title{color:var(--text);font-size:1rem;text-transform:uppercase}.featured-title:before{color:var(--accent);content:'> '}.post-list{display:flex;flex-direction:column}.list-item{color:var(--text);display:block;padding:.35rem 0}.list-item:hover{text-decoration:none}.list-blog-header{align-items:baseline;display:flex;gap:1ch}.list-blog-date{color:var(--dim);flex:0 0 10ch;font-weight:700}.list-blog-header h4{color:var(--text);font-size:1rem;font-weight:400}.list-item:hover h4{color:var(--accent)}.list-item-rule{color:var(--dim);height:1px;overflow:hidden}.search-empty{color:var(--muted);margin-top:1rem}
.hero{margin:0 auto 1rem;max-height:70vh;object-fit:contain}.hero-art{color:var(--accent);font:15px/1 var(--font);margin:0 0 1rem;overflow:hidden;white-space:pre}.post-tags{display:flex;flex-wrap:wrap;gap:1ch;margin:.75rem 0}.page-content{overflow-wrap:anywhere}.page-content>*+*{margin-top:.8rem}.page-content h1,.page-content h2,.page-content h3,.page-content h4{color:var(--accent);line-height:1.15}.page-content ul,.page-content ol{padding-left:2ch}.page-content blockquote{border-left:2px solid var(--muted);color:var(--text);padding-left:1rem}.page-content pre,.page-content code{font-family:var(--font)}.page-content pre{overflow:auto}.page-content iframe,.page-content video{border:0;max-width:100%}.page-content table{border-collapse:collapse;display:block;overflow:auto}.page-content td,.page-content th{border:1px solid var(--muted);padding:.35rem}.page-content hr{border:0;color:var(--muted);overflow:hidden;white-space:nowrap}.page-content hr:before{content:'================================================================================================================================================================================================================================================================================================================'}
footer{color:var(--dim);font-size:.75rem;margin-top:0;padding:.5rem var(--frame-inset);position:relative;text-transform:uppercase;z-index:1}.not-found{min-height:12rem}.screen-reader-text{clip:rect(1px,1px,1px,1px);height:1px;overflow:hidden;position:absolute;width:1px}.screen-reader-text:focus{clip:auto;height:auto;width:auto}
@media(max-width:760px){.header-row{flex-wrap:wrap}.shell{width:100%}.list-blog-header{align-items:flex-start;flex-direction:column;gap:0}.list-blog-date{flex-basis:auto}}
