@import "https://fonts.googleapis.com/css2?family=Share+Tech+Mono&family=VT323&display=swap";:root{--background:#040505;--panel:#050b06;--panel-border:#1f6f2b;--text:#39ff4a;--muted:#7fd485;--accent:#24d2f2;--danger:#ff4d4d;--success:#66ff80;--shadow:0 0 24px #18ff571f}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:radial-gradient(circle at 20% -20%, #0b1f10, transparent 40%), radial-gradient(circle at 100% 0%, #05180a, transparent 36%), linear-gradient(135deg, #070f09cc, transparent 45%), var(--background);color:var(--text);margin:0;font-family:Share Tech Mono,monospace;line-height:1.5}a{color:var(--accent)}a:hover{color:#8af5ff}.app-shell{grid-template-columns:minmax(240px,290px) minmax(0,1fr);gap:.9rem;width:min(1380px,100% - 1.25rem);margin:0 auto;padding:.75rem 0 1.5rem;display:grid}.content-stack{gap:.9rem;display:grid}.site-title{letter-spacing:.06em;color:var(--text);font-family:VT323,monospace;font-size:clamp(2.4rem,4vw,3.7rem);line-height:.95;text-decoration:none;display:block}.site-sidebar{align-self:start;gap:1.4rem;min-height:calc(100vh - 1.5rem);display:grid;position:sticky;top:.75rem}.sidebar-block{gap:.65rem;display:grid}.sidebar-copy,.sidebar-label,.eyebrow{color:var(--muted);margin:0}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.78rem}.sidebar-label{text-transform:uppercase;letter-spacing:.1em;font-size:.86rem}.site-nav{gap:.45rem;display:grid}.site-nav a{color:var(--text);background:#08100880;border:1px solid #0000;padding:.55rem .7rem;font-size:1.1rem;text-decoration:none;display:block}.site-nav a.active-link{color:var(--accent);border-color:var(--accent);box-shadow:inset 0 0 0 1px #24d2f240}.content-wrapper{min-width:0}.page-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;display:grid}.terminal-panel{border:1px solid var(--panel-border);box-shadow:var(--shadow);background:linear-gradient(165deg,#040a04d9,#050605eb);min-width:0;padding:clamp(.95rem,2vw,1.3rem)}.terminal-panel h1,.terminal-panel h2,.terminal-panel h3{letter-spacing:.04em;margin-top:0;font-family:VT323,monospace;line-height:1.1}.terminal-panel h1{font-size:clamp(2.2rem,5vw,3.4rem)}.terminal-panel h2{font-size:clamp(1.8rem,4vw,2.6rem)}.social-links{flex-wrap:wrap;gap:.65rem;display:flex}.social-link{border:1px solid var(--panel-border);width:50px;height:50px;color:var(--text);background:#0b130b;place-items:center;font-size:1.45rem;transition:transform .2s,color .2s;display:grid}.social-links-compact .social-link{width:44px;height:44px;font-size:1.25rem}.social-link:hover{color:var(--accent);transform:translateY(-3px)}.hero-panel{grid-column:1/-1}.hero-subheadline{color:var(--accent);margin:.35rem 0 0;font-size:clamp(1.05rem,2vw,1.35rem)}.quote-line{color:var(--accent)}.info-stack,.focus-grid,.project-grid{gap:.9rem;display:grid}.info-card,.focus-card,.project-card{background:#08100873;border:1px solid #1f6f2bbf;padding:.95rem}.info-card h3,.focus-card h3,.project-card h2{margin-bottom:.5rem}.span-full{grid-column:1/-1}.project-status,.project-stack,.coming-soon-mark{color:var(--accent)}.project-tags{color:var(--muted);overflow-wrap:anywhere}.project-detail-list{gap:.45rem;margin:.8rem 0 1rem;display:grid}.project-detail-list p{margin:0}.coming-soon-panel{text-align:center;place-items:center;min-height:240px;display:grid}.post-grid{gap:1rem;display:grid}.blog-card{border:1px solid var(--panel-border);background:#08100873;padding:1rem}.blog-card h3{margin:.2rem 0 .6rem;font-size:1.8rem}.blog-card h3 a{color:var(--text);text-decoration:none}.blog-card h3 a:hover{color:var(--accent)}.blog-date{color:var(--muted);margin:0;font-size:1rem}.blog-excerpt{margin-bottom:.8rem}.tag-row,.tags-wrap{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.tag-pill{border:1px solid var(--panel-border);color:var(--accent);cursor:pointer;font:inherit;background:0 0;padding:.22rem .55rem;text-decoration:none}.active-tag{color:var(--text);border-color:var(--accent)}.search-input{gap:.45rem;margin-bottom:1rem;display:grid}.search-input input,.terminal-form input,.terminal-form textarea,.terminal-form select{width:100%;color:var(--text);font:inherit;background:#111;border:1px solid #2b3f2f;padding:.65rem}.terminal-form{gap:.9rem;display:grid}.terminal-form textarea{resize:vertical;min-height:128px}.terminal-form button{border:1px solid var(--text);color:var(--text);font:inherit;cursor:pointer;background:#0d120e;justify-self:start;padding:.5rem 1rem}.terminal-form button:disabled{opacity:.6;cursor:not-allowed}.grid-2,.grid-3{gap:.8rem;display:grid}.form-error{color:var(--danger);margin:0}.form-success{color:var(--success);margin:0}.post-hero{border:1px solid var(--panel-border);object-fit:cover;width:100%;max-height:500px;margin:.8rem 0 1rem}.markdown-content{overflow-wrap:anywhere}.markdown-content pre{background:#070c08;border:1px solid #2c472f;padding:.7rem;overflow-x:auto}.markdown-content img{border:1px solid #26592d;max-width:100%}.comments-list{gap:.8rem;margin-top:1rem;display:grid}.comment-card{background:#091009;border:1px solid #205e2a;padding:.8rem}.comment-meta{color:var(--muted);margin:0 0 .4rem}.muted-text,.site-footer{color:var(--muted)}.route-loading{min-height:100vh;color:var(--accent);place-items:center;display:grid}.footer-grid{gap:1rem;display:grid}.footer-note{max-width:62ch}.site-footer p{margin:.2rem 0}.boot-screen{place-items:center;min-height:100vh;padding:1rem;display:grid}.boot-window{border:1px solid var(--panel-border);background:#040804;width:min(760px,100%);padding:1rem;box-shadow:0 0 30px #39ff4a26}.boot-title{color:var(--accent);margin:0 0 1rem}.boot-line{margin:.35rem 0}.boot-cursor{margin-left:.2rem;animation:1s steps(2,start) infinite blink}@keyframes blink{to{opacity:0}}@media (width>=740px){.post-grid,.focus-grid,.project-grid,.footer-grid,.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=980px){.app-shell{grid-template-columns:1fr}.site-sidebar{min-height:auto;position:static}.page-grid{grid-template-columns:1fr}}@media (width<=500px){.app-shell{width:calc(100% - 1rem)}.site-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.site-nav a{font-size:1rem}.social-link{width:46px;height:46px}}
