*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scrollbar-color:#1e1e30 #080810;scrollbar-width:thin}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#080810}::-webkit-scrollbar-thumb{background:#1e1e30;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#2e2e48}body{min-height:100vh;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid #3a9e9e;outline-offset:2px}:focus:not(:focus-visible){outline:none}ul,ol{list-style:none}body{font-family:"Inter",-apple-system,"Segoe UI",system-ui,sans-serif;font-size:16px;color:#e0e0e8;background-color:#080810}h1,h2,h3,h4,h5,h6{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-weight:700;line-height:1.3;color:#e0e0e8;overflow-wrap:break-word;word-break:break-word}h1{font-size:2.25rem}h2{font-size:1.75rem}h3{font-size:1.375rem}h4{font-size:1.125rem}@media(max-width: 640px){h1{font-size:1.75rem}h2{font-size:1.375rem}h3{font-size:1.125rem}}p{margin-bottom:1rem;color:#e0e0e8;line-height:1.8}a{color:#4ab8b8;transition:color 150ms ease}a:hover{color:#6ad0d0}strong{font-weight:600}code{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.875em;background:#141422;padding:.15em .4em;border-radius:4px;border:1px solid #1e1e30;word-break:break-word;overflow-wrap:break-word}blockquote{border-left:3px solid #c03030;padding-left:1rem;margin:2rem 0;color:#70708a;font-style:italic}hr{border:none;border-top:1px solid #1e1e30;margin:3rem 0}::selection{background:rgba(192,48,48,.3);color:#e0e0e8}@keyframes blink{0%,100%{opacity:1}50%{opacity:0}}.fade-in{opacity:0;transform:translateY(15px);transition:opacity 400ms ease,transform 400ms ease}.fade-in.visible{opacity:1;transform:translateY(0)}.stagger-children>*{opacity:0;transform:translateY(15px);transition:opacity 400ms ease,transform 400ms ease}.stagger-children>*.visible{opacity:1;transform:translateY(0)}.stagger-children>*:nth-child(1){transition-delay:80ms}.stagger-children>*:nth-child(2){transition-delay:160ms}.stagger-children>*:nth-child(3){transition-delay:240ms}.stagger-children>*:nth-child(4){transition-delay:320ms}.stagger-children>*:nth-child(5){transition-delay:400ms}.stagger-children>*:nth-child(6){transition-delay:480ms}.stagger-children>*:nth-child(7){transition-delay:560ms}.stagger-children>*:nth-child(8){transition-delay:640ms}.stagger-children>*:nth-child(9){transition-delay:720ms}.stagger-children>*:nth-child(10){transition-delay:800ms}@media(prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}.fade-in,.stagger-children>*{opacity:1;transform:none}}.container{width:100%;max-width:1100px;margin:0 auto;padding:0 2rem}@media(max-width: 640px){.container{padding:0 1rem;display:grid;grid-template-columns:minmax(0, 1fr)}}.content-container{max-width:740px;margin:0 auto}main{min-height:calc(100vh - 200px);padding-top:80px}.page-header{padding:4rem 0 2rem;border-bottom:1px solid #1e1e30;margin-bottom:3rem}.page-header h1{font-size:2.5rem;position:relative;display:inline-block;overflow-wrap:break-word;word-break:break-word;max-width:100%}@media(max-width: 640px){.page-header h1{font-size:1.75rem}}.page-header h1::after{content:"_";color:#c03030;animation:blink 1s step-end infinite}.page-header p{color:#70708a;margin-top:.5rem;margin-bottom:0}.grid-2{display:grid;grid-template-columns:repeat(2, 1fr);gap:2rem}@media(max-width: 900px){.grid-2{grid-template-columns:1fr}}.home-section{padding:4rem 0}.home-section:not(:last-child){border-bottom:1px solid #1e1e30}.section-title{font-size:1.5rem;margin-bottom:3rem;color:#e0e0e8;display:flex;align-items:center;gap:.5rem}.section-title::before{content:">";color:#c03030;font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace}.view-all{display:inline-block;margin-top:2rem;color:#4ab8b8;font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.9rem;transition:color 150ms ease}.view-all:hover{color:#e04040}.site-header{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(8,8,16,.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid #1e1e30;height:64px}.header-inner{max-width:1100px;margin:0 auto;padding:0 2rem;height:100%;display:flex;align-items:center;justify-content:space-between}@media(max-width: 640px){.header-inner{padding:0 1rem}}.site-brand{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:1.25rem;font-weight:700;color:#e0e0e8;text-decoration:none;transition:text-shadow 250ms ease;letter-spacing:-0.02em}.site-brand:hover{text-shadow:0 0 20px rgba(192,48,48,.3),0 0 40px rgba(192,48,48,.15);color:#e0e0e8}.site-brand .brand-accent{color:#c03030}.nav-links{display:flex;align-items:center;gap:.25rem}@media(max-width: 640px){.nav-links{display:none}}.nav-link{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.85rem;color:#70708a;padding:.5rem 1rem;border-radius:8px;transition:all 150ms ease;text-decoration:none}.nav-link:hover,.nav-link.active{color:#e0e0e8;background:#141422}.nav-link.active{color:#c03030}.mobile-toggle{display:none}@media(max-width: 640px){.mobile-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:28px;height:28px;cursor:pointer;background:none;border:none;padding:0}}.mobile-toggle span{display:block;width:100%;height:2px;background:#e0e0e8;border-radius:1px;transition:all 150ms ease}#mobile-menu-toggle{display:none}#mobile-menu-toggle:checked~.mobile-nav{transform:translateY(0);opacity:1;pointer-events:all}#mobile-menu-toggle:checked~.header-inner .mobile-toggle span:nth-child(1){transform:rotate(45deg) translate(5px, 5px)}#mobile-menu-toggle:checked~.header-inner .mobile-toggle span:nth-child(2){opacity:0}#mobile-menu-toggle:checked~.header-inner .mobile-toggle span:nth-child(3){transform:rotate(-45deg) translate(5px, -5px)}.mobile-nav{display:none}@media(max-width: 640px){.mobile-nav{display:flex;flex-direction:column;position:fixed;top:64px;left:0;right:0;background:rgba(8,8,16,.95);backdrop-filter:blur(12px);border-bottom:1px solid #1e1e30;padding:1rem;transform:translateY(-10px);opacity:0;pointer-events:none;transition:all 250ms ease;z-index:999}.mobile-nav .nav-link{padding:1rem;font-size:1rem;border-bottom:1px solid #1e1e30}.mobile-nav .nav-link:last-child{border-bottom:none}}.hero{min-height:70vh;display:flex;align-items:center;justify-content:center;padding:4rem 2rem;position:relative;overflow:hidden}@media(max-width: 640px){.hero{min-height:auto;padding:3rem 1rem}}.hero::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(0, 0, 0, 0.04) 2px, rgba(0, 0, 0, 0.04) 4px);pointer-events:none;z-index:1}.hero::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 25% 25%, rgba(192, 48, 48, 0.03) 0%, transparent 50%),radial-gradient(circle at 75% 75%, rgba(58, 158, 158, 0.03) 0%, transparent 50%);pointer-events:none}.hero-content{display:flex;align-items:center;gap:4rem;max-width:1100px;width:100%;position:relative;z-index:2}@media(max-width: 900px){.hero-content{flex-direction:column;text-align:center}}.hero-avatar-wrapper{flex-shrink:0}.hero-avatar{width:200px;height:200px;border-radius:50%;border:3px solid #c03030;box-shadow:0 0 30px rgba(192,48,48,.3),0 0 60px rgba(192,48,48,.1);transition:box-shadow 400ms ease}.hero-avatar:hover{box-shadow:0 0 40px rgba(192,48,48,.3),0 0 80px rgba(192,48,48,.2)}@media(max-width: 640px){.hero-avatar{width:150px;height:150px}}.hero-text{flex:1}.hero-terminal{background:#0e0e18;border:1px solid #1e1e30;border-radius:8px;width:100%;max-width:520px;overflow:hidden}@media(max-width: 900px){.hero-terminal{max-width:100%}}.terminal-header{padding:10px 16px;border-bottom:1px solid #1e1e30;display:flex;align-items:center;gap:7px;background:rgba(0,0,0,.2)}.terminal-dot{width:12px;height:12px;border-radius:50%}.terminal-dot.red{background:#ff5f56}.terminal-dot.yellow{background:#ffbd2e}.terminal-dot.green{background:#27c93f}.terminal-title{margin-left:auto;font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.75rem;color:#70708a}.terminal-body{padding:2rem;font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.9rem;min-height:140px;display:flex;flex-direction:column;gap:.5rem;overflow-wrap:break-word;word-break:break-word}@media(max-width: 640px){.terminal-body{padding:1rem;font-size:.8rem;min-height:120px}}.terminal-line{color:#70708a}.terminal-line .prompt{color:#3a9e9e}.terminal-line .command{color:#e0e0e8}.terminal-line .output{color:#40c040}.terminal-typing{color:#40c040}.terminal-typing .cursor{display:inline-block;width:8px;height:1.1em;background:#40c040;vertical-align:text-bottom;animation:blink 1s step-end infinite;margin-left:2px}.hero-tagline{margin-top:2rem;font-size:1.1rem;color:#70708a;line-height:1.6}@media(max-width: 900px){.hero-tagline{font-size:1rem}}.hero-cta{display:inline-block;margin-top:2rem;padding:.5rem 2rem;background:#c03030;color:#fff;font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.9rem;font-weight:600;border-radius:8px;transition:all 250ms ease;text-decoration:none}.hero-cta:hover{background:#e04040;color:#fff;box-shadow:0 0 20px rgba(192,48,48,.3);transform:translateY(-1px)}.post-card{background:#141422;border:1px solid #1e1e30;border-left:3px solid #c03030;border-radius:8px;padding:2rem;transition:all 250ms ease;display:flex;flex-direction:column;gap:.5rem}.post-card:hover{background:#1a1a2e;border-color:#2e2e48;border-left-color:#e04040;transform:translateY(-2px);box-shadow:0 8px 30px rgba(0,0,0,.3),0 0 15px rgba(192,48,48,.05)}.post-card-date{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.8rem;color:#70708a}.post-card-title{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:1.1rem;font-weight:600;line-height:1.4;overflow-wrap:break-word;word-break:break-word}@media(max-width: 640px){.post-card-title{font-size:1rem}}.post-card-title a{color:#e0e0e8;text-decoration:none;transition:color 150ms ease}.post-card-title a:hover{color:#c03030}.post-card-summary{font-size:.9rem;color:#70708a;line-height:1.6;margin-bottom:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.post-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-top:auto;padding-top:.5rem}.post-card-tags{display:flex;flex-wrap:wrap;gap:.25rem}.tag-pill{display:inline-block;font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.7rem;color:#3a9e9e;background:rgba(58,158,158,.1);padding:2px 8px;border-radius:9999px;border:1px solid rgba(58,158,158,.2);transition:all 150ms ease;text-decoration:none}.tag-pill:hover{background:rgba(58,158,158,.2);border-color:rgba(58,158,158,.4);color:#4bc0c0}.series-badge{display:inline-block;font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.7rem;color:#c03030;background:rgba(192,48,48,.1);padding:2px 8px;border-radius:9999px;border:1px solid rgba(192,48,48,.2)}.reading-time{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.75rem;color:#70708a}.project-card{background:#141422;border:1px solid #1e1e30;border-left:3px solid #3a9e9e;border-radius:8px;padding:2rem;transition:all 250ms ease;display:flex;flex-direction:column;gap:.5rem}.project-card:hover{background:#1a1a2e;border-color:#2e2e48;border-left-color:#4bc0c0;transform:translateY(-2px);box-shadow:0 8px 30px rgba(0,0,0,.3),0 0 15px rgba(58,158,158,.05)}.project-card-title{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:1.2rem;font-weight:700}.project-card-title a{color:#e0e0e8;text-decoration:none;transition:color 150ms ease}.project-card-title a:hover{color:#3a9e9e}.project-card-desc{font-size:.9rem;color:#70708a;line-height:1.6;flex:1;margin-bottom:0}.project-card-link{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.85rem;color:#3a9e9e;margin-top:.5rem;transition:color 150ms ease}.project-card-link:hover{color:#4bc0c0}.project-card-link::after{content:" →"}.post-list-item{padding:2rem 0;border-bottom:1px solid #1e1e30;transition:background 150ms ease}.post-list-item:last-child{border-bottom:none}.post-list-item:hover .post-list-title a{color:#c03030}.post-list-header{display:flex;align-items:baseline;gap:1rem;flex-wrap:wrap}.post-list-date{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.8rem;color:#70708a;flex-shrink:0}.post-list-title{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:1.05rem;font-weight:600;overflow-wrap:break-word;word-break:break-word;min-width:0}@media(max-width: 640px){.post-list-title{font-size:.95rem}}.post-list-title a{color:#e0e0e8;text-decoration:none;transition:color 150ms ease}.post-list-summary{margin-top:.5rem;font-size:.9rem;color:#70708a;line-height:1.6}.post-article{padding:4rem 0}.post-header{max-width:740px;margin:0 auto 3rem;padding-bottom:2rem;border-bottom:1px solid #1e1e30}.post-header h1{font-size:2.25rem;line-height:1.2;margin-bottom:1rem;overflow-wrap:break-word;word-break:break-word}@media(max-width: 640px){.post-header h1{font-size:1.5rem}}.post-meta{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.8rem;color:#70708a}.post-meta-item{display:flex;align-items:center;gap:.25rem}.post-layout{display:flex;align-items:flex-start;gap:3rem;max-width:calc(740px + 280px);margin:0 auto}@media(max-width: 900px){.post-layout{flex-direction:column;max-width:100%}}.toc-sidebar{width:240px;flex-shrink:0;order:2}@media(max-width: 900px){.toc-sidebar{width:100%;order:-1}}.toc-wrapper{position:sticky;top:90px}@media(max-width: 900px){.toc-wrapper{position:static}}.toc-title{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.8rem;font-weight:600;color:#70708a;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem}.toc-content{border-left:2px solid #1e1e30;padding-left:1rem}.toc-content nav ul{list-style:none;padding:0;margin:0}.toc-content nav ul li{margin-bottom:.25rem}.toc-content nav ul li a{font-size:.8rem;color:#70708a;text-decoration:none;transition:color 150ms ease;display:block;padding:2px 0}.toc-content nav ul li a:hover{color:#c03030}.toc-content nav ul li ul{padding-left:1rem}.toc-mobile{display:none}@media(max-width: 900px){.toc-mobile{display:block;margin-bottom:2rem;background:#141422;border:1px solid #1e1e30;border-radius:8px;padding:1rem}.toc-mobile summary{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.85rem;color:#70708a;cursor:pointer}.toc-mobile summary:hover{color:#e0e0e8}.toc-mobile .toc-content{margin-top:1rem}}@media(max-width: 900px){.toc-desktop{display:none}}.post-content{flex:1;min-width:0;max-width:740px;width:100%;overflow-wrap:break-word;word-break:break-word;display:grid;grid-template-columns:minmax(0, 1fr)}.post-content pre{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.post-content h2{margin-top:3rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #1e1e30}.post-content h3{margin-top:2rem;margin-bottom:1rem}.post-content h4{margin-top:2rem;margin-bottom:.5rem}.post-content p{margin-bottom:1rem}.post-content ul,.post-content ol{margin-bottom:1rem;padding-left:2rem}.post-content ul{list-style:disc}.post-content ol{list-style:decimal}.post-content li{margin-bottom:.25rem;line-height:1.7;color:#e0e0e8}.post-content li::marker{color:#c03030}.post-content img{border-radius:8px;border:1px solid #1e1e30;margin:2rem 0}.post-content .table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:2rem 0}.post-content table{width:100%;border-collapse:collapse;margin:2rem 0;font-size:.9rem}.post-content table th,.post-content table td{padding:.5rem 1rem;border:1px solid #1e1e30;text-align:left;white-space:nowrap}@media(max-width: 640px){.post-content table th,.post-content table td{white-space:normal;padding:.25rem .5rem;font-size:.8rem}}.post-content table th{background:#141422;font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-weight:600;color:#e0e0e8}.post-content table td{color:#70708a}.post-content table tr:hover td{background:rgba(20,20,34,.5)}.post-tags{max-width:740px;margin:3rem auto 0;padding-top:2rem;border-top:1px solid #1e1e30;display:flex;flex-wrap:wrap;gap:.5rem}.series-nav{max-width:740px;margin:3rem auto 0;background:#141422;border:1px solid #1e1e30;border-radius:8px;padding:2rem;overflow-wrap:break-word;word-break:break-word}@media(max-width: 640px){.series-nav{padding:1rem}}.series-nav-title{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.85rem;color:#70708a;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.05em}.series-nav-list{list-style:none;padding:0;margin-bottom:2rem}.series-nav-list li{padding:.25rem 0;font-size:.9rem;overflow-wrap:break-word;word-break:break-word}@media(max-width: 640px){.series-nav-list li{font-size:.8rem}}.series-nav-list li a{color:#4ab8b8;text-decoration:none}.series-nav-list li a:hover{color:#6ad0d0}.series-nav-list li.current{color:#c03030;font-weight:600}.series-nav-list li.current::before{content:"▸ ";color:#c03030}.series-nav-links{display:flex;justify-content:space-between;gap:1rem;padding-top:1rem;border-top:1px solid #1e1e30}@media(max-width: 640px){.series-nav-links{flex-direction:column;gap:.5rem}}.series-nav-links a{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.85rem;color:#4ab8b8;text-decoration:none;transition:color 150ms ease;overflow-wrap:break-word;word-break:break-word}.series-nav-links a:hover{color:#c03030}.series-nav-links .prev::before{content:"← "}.series-nav-links .next::after{content:" →"}.highlight{margin:2rem 0;border-radius:8px;border:1px solid #1e1e30;background:#0e0e18;overflow:hidden;min-width:0}.highlight::before{content:"";display:block;padding:8px 16px;background:rgba(0,0,0,.3);border-bottom:1px solid #1e1e30;background-image:radial-gradient(circle at 20px 50%, #ff5f56 5px, transparent 5px),radial-gradient(circle at 40px 50%, #ffbd2e 5px, transparent 5px),radial-gradient(circle at 60px 50%, #27c93f 5px, transparent 5px);background-repeat:no-repeat;background-color:rgba(0,0,0,.3);height:32px;border-radius:8px 8px 0 0}.highlight .chroma{background:rgba(0,0,0,0);overflow-x:auto;-webkit-overflow-scrolling:touch}.highlight pre{margin:0;padding:1rem 2rem;overflow-x:auto;-webkit-overflow-scrolling:touch;background:rgba(0,0,0,0) !important}@media(max-width: 640px){.highlight pre{padding:.5rem 1rem}}.highlight pre::-webkit-scrollbar{height:6px}.highlight pre::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.highlight pre::-webkit-scrollbar-thumb{background:#1e1e30;border-radius:3px}.highlight pre::-webkit-scrollbar-thumb:hover{background:#2e2e48}.highlight pre code{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.85rem;line-height:1.7;background:rgba(0,0,0,0);padding:0;border:none;border-radius:0;color:#e0e0e8;word-break:normal;overflow-wrap:normal;white-space:pre}@media(max-width: 640px){.highlight pre code{font-size:.75rem}}.highlight .chroma .c,.highlight .chroma .ch,.highlight .chroma .cm,.highlight .chroma .c1,.highlight .chroma .cs,.highlight .chroma .cp,.highlight .chroma .cpf{color:#5c6370;font-style:italic}.highlight .chroma .k,.highlight .chroma .kc,.highlight .chroma .kd,.highlight .chroma .kn,.highlight .chroma .kp,.highlight .chroma .kr,.highlight .chroma .kt{color:#3a9e9e;font-weight:600}.highlight .chroma .s,.highlight .chroma .sa,.highlight .chroma .sb,.highlight .chroma .sc,.highlight .chroma .dl,.highlight .chroma .sd,.highlight .chroma .s2,.highlight .chroma .se,.highlight .chroma .sh,.highlight .chroma .si,.highlight .chroma .sx,.highlight .chroma .sr,.highlight .chroma .s1,.highlight .chroma .ss{color:#e06050}.highlight .chroma .m,.highlight .chroma .mb,.highlight .chroma .mf,.highlight .chroma .mh,.highlight .chroma .mi,.highlight .chroma .il,.highlight .chroma .mo{color:#d19a66}.highlight .chroma .n,.highlight .chroma .na,.highlight .chroma .nb,.highlight .chroma .nc,.highlight .chroma .no,.highlight .chroma .nd,.highlight .chroma .ni,.highlight .chroma .ne,.highlight .chroma .nf,.highlight .chroma .nl,.highlight .chroma .nn,.highlight .chroma .nt,.highlight .chroma .nv{color:#e0e0e8}.highlight .chroma .nf,.highlight .chroma .nc{color:#61afef}.highlight .chroma .o,.highlight .chroma .ow{color:#3a9e9e}.highlight .chroma .p{color:#70708a}.highlight .chroma .nv,.highlight .chroma .vc,.highlight .chroma .vg,.highlight .chroma .vi,.highlight .chroma .vm{color:#e06c75}.highlight .chroma .nb{color:#56b6c2}.highlight .chroma .nd{color:#d19a66}.callout{margin:2rem 0;border-radius:8px;border:1px solid #1e1e30;background:#141422;overflow:hidden}.callout-header{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid #1e1e30}.callout-icon svg{width:16px;height:16px;display:block}.callout-body{padding:1rem;font-size:.95rem;line-height:1.7}.callout-body>:first-child{margin-top:0}.callout-body>:last-child{margin-bottom:0}.callout-info{border-color:rgba(58,158,158,.3)}.callout-info .callout-header{color:#3a9e9e;background:rgba(58,158,158,.08);border-color:rgba(58,158,158,.15)}.callout-warning{border-color:rgba(255,189,46,.3)}.callout-warning .callout-header{color:#ffbd2e;background:rgba(255,189,46,.08);border-color:rgba(255,189,46,.15)}.callout-tip{border-color:rgba(39,201,63,.3)}.callout-tip .callout-header{color:#27c93f;background:rgba(39,201,63,.08);border-color:rgba(39,201,63,.15)}.codeblock-named{margin:2rem 0}.codeblock-named .codeblock-filename{display:inline-block;padding:.25rem 1rem;background:#141422;border:1px solid #1e1e30;border-bottom:none;border-radius:8px 8px 0 0;font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.8rem;color:#70708a}.codeblock-named .highlight{margin:0;border-top-left-radius:0}.codeblock-named .highlight::before{border-radius:0 8px 0 0}.taxonomy-list{display:flex;flex-wrap:wrap;gap:1rem;padding:2rem 0}.taxonomy-item{display:flex;align-items:center;gap:.5rem;background:#141422;border:1px solid #1e1e30;border-radius:8px;padding:.5rem 1rem;transition:all 150ms ease}.taxonomy-item:hover{background:#1a1a2e;border-color:#2e2e48;transform:translateY(-1px)}.taxonomy-item a{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.9rem;color:#e0e0e8;text-decoration:none}.taxonomy-item .count{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.75rem;color:#70708a;background:rgba(192,48,48,.15);padding:1px 6px;border-radius:9999px}.series-card{background:#141422;border:1px solid #1e1e30;border-left:3px solid #c03030;border-radius:8px;padding:2rem;transition:all 250ms ease;margin-bottom:1rem}.series-card:hover{background:#1a1a2e;border-color:#2e2e48;border-left-color:#e04040}.series-card-title{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:1.1rem;font-weight:700;margin-bottom:.5rem}.series-card-title a{color:#e0e0e8;text-decoration:none;transition:color 150ms ease}.series-card-title a:hover{color:#c03030}.series-card-count{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.8rem;color:#70708a;margin-bottom:1rem}.series-card-posts{list-style:none;padding:0}.series-card-posts li{padding:.25rem 0;font-size:.9rem;border-bottom:1px solid #1e1e30}.series-card-posts li:last-child{border-bottom:none}.series-card-posts li a{color:#4ab8b8;text-decoration:none}.series-card-posts li a:hover{color:#6ad0d0}.year-group{margin-bottom:3rem}.year-heading{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:1.5rem;font-weight:700;color:#c03030;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid #c03030;display:inline-block}.social-links{display:flex;align-items:center;justify-content:center;gap:2rem;padding:2rem 0}.social-link{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:9999px;background:#141422;border:1px solid #1e1e30;color:#70708a;transition:all 250ms ease}.social-link svg{width:22px;height:22px;fill:currentColor;transition:fill 150ms ease}.social-link:hover{color:#e0e0e8;border-color:#2e2e48;transform:translateY(-2px);box-shadow:0 4px 15px rgba(0,0,0,.3)}.social-link:hover.github{color:#fff;border-color:#333}.social-link:hover.gitlab{color:#fc6d26;border-color:#fc6d26}.social-link:hover.tryhackme{color:#88cc14;border-color:#88cc14}.social-link:hover.hackthebox{color:#9fef00;border-color:#9fef00}.social-link:hover.rss{color:#c03030;border-color:#c03030}.social-links-inline{display:flex;align-items:center;gap:.5rem}.social-links-inline .social-link{width:32px;height:32px;background:rgba(0,0,0,0);border:none}.social-links-inline .social-link svg{width:18px;height:18px}.social-links-inline .social-link:hover{box-shadow:none}.about-page{max-width:740px;margin:0 auto;padding:4rem 0}.about-header{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:3rem;padding-bottom:3rem;border-bottom:1px solid #1e1e30}.about-header h1{font-size:2rem;margin-top:2rem}@media(max-width: 640px){.about-header h1{font-size:1.5rem}}.about-avatar{width:150px;height:150px;border-radius:50%;border:3px solid #c03030;box-shadow:0 0 25px rgba(192,48,48,.3)}.about-content{font-size:1.05rem;line-height:1.8;color:#e0e0e8;margin-bottom:3rem}.about-content p{margin-bottom:1rem}.about-content a{color:#4ab8b8}.about-content a:hover{color:#6ad0d0}.about-section{margin-bottom:3rem;padding-top:2rem;border-top:1px solid #1e1e30}.about-section h2{font-size:1.5rem;margin-bottom:2rem;display:flex;align-items:center;gap:.5rem}.about-section h2::before{content:">";color:#c03030;font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace}@media(max-width: 640px){.about-section h2{font-size:1.25rem}}.cert-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:2rem}@media(max-width: 900px){.cert-grid{grid-template-columns:1fr;gap:1rem}}.cert-card{background:#141422;border:1px solid #1e1e30;border-radius:8px;padding:2rem;display:flex;flex-direction:column;align-items:center;text-align:center;gap:1rem;transition:all 250ms ease}.cert-card:hover{background:#1a1a2e;border-color:#2e2e48;transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.3)}.cert-badge{width:120px;height:auto;border-radius:0;border:none}@media(max-width: 640px){.cert-badge{width:100px}}.cert-info h3{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:1.1rem;font-weight:700;color:#c03030;margin-bottom:.25rem}.cert-info p{font-size:.85rem;color:#70708a;margin-bottom:.25rem;line-height:1.4}.cert-expiry{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.7rem;color:#70708a;background:rgba(58,158,158,.1);border:1px solid rgba(58,158,158,.2);padding:2px 8px;border-radius:9999px;white-space:nowrap}.blog-links{display:grid;grid-template-columns:repeat(2, 1fr);gap:1rem}@media(max-width: 640px){.blog-links{grid-template-columns:1fr}}.blog-link-card{background:#141422;border:1px solid #1e1e30;border-left:3px solid #3a9e9e;border-radius:8px;padding:1rem 2rem;display:flex;flex-direction:column;gap:.25rem;transition:all 250ms ease;text-decoration:none}.blog-link-card:hover{background:#1a1a2e;border-color:#2e2e48;border-left-color:#4bc0c0;transform:translateY(-1px)}.blog-link-name{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.95rem;font-weight:600;color:#4ab8b8}.blog-link-desc{font-size:.85rem;color:#70708a}.site-footer{border-top:1px solid #1e1e30;padding:3rem 0;margin-top:4rem}.footer-inner{max-width:1100px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}@media(max-width: 640px){.footer-inner{flex-direction:column;text-align:center;padding:0 1rem}}.footer-copy{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.8rem;color:#70708a}.sr-only,.skip-link{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.skip-link:focus{position:fixed;top:.5rem;left:.5rem;z-index:1000;width:auto;height:auto;margin:0;padding:.5rem 1rem;overflow:visible;clip:auto;background:#141422;color:#3a9e9e;border:2px solid #3a9e9e;border-radius:8px;font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.85rem}.pagination{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:3rem 0;font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.85rem}.pagination-link{display:flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 .5rem;background:#141422;border:1px solid #1e1e30;border-radius:8px;color:#70708a;text-decoration:none;transition:all 150ms ease}.pagination-link:hover{background:#1a1a2e;border-color:#2e2e48;color:#e0e0e8}.pagination-link.active{background:#c03030;border-color:#c03030;color:#fff}.pagination-link.disabled{opacity:.3;pointer-events:none}.empty-state{text-align:center;padding:4rem;color:#70708a;font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.9rem}.error-page{text-align:center;padding:4rem 0;min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.error-page h1{font-size:8rem;font-weight:700;color:#c03030;line-height:1;margin-bottom:.5rem}@media(max-width: 640px){.error-page h1{font-size:5rem}}.error-page .error-subtitle{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:1.25rem;color:#70708a;margin-bottom:3rem}.error-page .error-terminal{font-family:"JetBrains Mono",ui-monospace,"Cascadia Code","Fira Code",monospace;font-size:.9rem;background:#0e0e18;border:1px solid #1e1e30;border-radius:8px;padding:1rem 2rem;margin-bottom:3rem;text-align:left}.error-page .error-terminal .prompt{color:#3a9e9e}.error-page .error-terminal .command{color:#e0e0e8}.error-page .error-terminal .output{color:#c03030}@media print{body{background:#fff;color:#000}.site-header,.site-footer,.mobile-toggle,.mobile-nav,.skip-link,.series-nav-links,.social-links,.social-links-inline,.hero-cta{display:none !important}main{padding-top:0}a{color:#000;text-decoration:underline}a[href^=http]::after{content:" (" attr(href) ")";font-size:.8em;color:#555}.highlight{border:1px solid #ccc;background:#f5f5f5 !important}.highlight::before{display:none}.highlight pre code{color:#000}.post-card,.project-card,.cert-card,.blog-link-card{border-color:#ccc;background:#fff;box-shadow:none}}