/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}:root{--bg: #050814;--panel: rgba(10, 18, 36, .78);--panel-strong: rgba(12, 23, 48, .92);--surface: #081225;--surface-2: #0e1b35;--text: #f1f7ff;--muted: #a9b8d8;--cyan: #00e5ff;--purple: #9b5cff;--accent: var(--cyan);--accent-2: var(--purple);--border: rgba(0, 229, 255, .22);--border-soft: rgba(155, 92, 255, .25);--glow-cyan: rgba(0, 229, 255, .28);--glow-purple: rgba(155, 92, 255, .24);--max: 1200px}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;min-height:100vh;font-size:16px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--text);line-height:1.6;font-synthesis-weight:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;background:radial-gradient(circle at 15% -10%,rgba(0,229,255,.18),transparent 32rem),radial-gradient(circle at 85% 0%,rgba(155,92,255,.2),transparent 34rem),linear-gradient(180deg,#070b1b 0%,var(--bg) 44%,#03050d 100%);overflow-x:hidden}body:before,body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1}body:before{background-image:linear-gradient(rgba(0,229,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(0,229,255,.06) 1px,transparent 1px),linear-gradient(rgba(155,92,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(155,92,255,.035) 1px,transparent 1px);background-size:64px 64px,64px 64px,16px 16px,16px 16px;mask-image:linear-gradient(to bottom,black 0%,black 70%,transparent 100%)}body:after{background:linear-gradient(90deg,transparent 0 9%,rgba(0,229,255,.08) 9.1%,transparent 9.3% 63%,rgba(155,92,255,.08) 63.1%,transparent 63.35%),repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,transparent 1px 6px);opacity:.5}.container{max-width:var(--max);margin:0 auto;padding:clamp(1rem,2vw,1.5rem)}.site-header{position:sticky;top:0;z-index:10;background:#050814c7;backdrop-filter:blur(18px) saturate(140%);border-bottom:1px solid rgba(0,229,255,.18);box-shadow:0 0 30px #00e5ff0d}.nav-wrap,.site-footer{max-width:var(--max);margin:0 auto;padding:.95rem clamp(1rem,2vw,1.5rem);display:flex;justify-content:space-between;align-items:center;gap:clamp(1rem,3vw,2rem)}nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:clamp(.65rem,1.8vw,1.25rem)}a{color:var(--text);text-decoration:none;transition:color .2s ease,text-shadow .2s ease}a:hover{color:var(--cyan);text-shadow:0 0 16px var(--glow-cyan)}a:focus-visible,button:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:.25rem}.site-header nav a{position:relative;color:var(--muted);font-size:clamp(.82rem,1.2vw,.9rem);font-weight:700;letter-spacing:.075em;line-height:1.2;padding-block:.24rem;text-transform:uppercase}.site-header nav a:after{content:"";position:absolute;left:0;right:0;bottom:-.38rem;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),var(--purple),transparent);opacity:0;transform:scaleX(.35);transition:opacity .2s ease,transform .2s ease}.site-header nav a:hover:after,.site-header nav a:focus-visible:after{opacity:1;transform:scaleX(1)}.brand{display:flex;align-items:center;gap:.65rem;min-width:max-content;font-weight:800;letter-spacing:-.02em;line-height:1.1}.brand-mark{display:grid;place-items:center;width:1.85rem;height:1.85rem;border:1px solid var(--cyan);color:var(--cyan);border-radius:.2rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:linear-gradient(135deg,#00e5ff1a,#9b5cff1f);box-shadow:0 0 18px var(--glow-cyan),inset 0 0 14px #00e5ff14;clip-path:polygon(0 0,82% 0,100% 18%,100% 100%,18% 100%,0 82%)}h1,h2,h3{line-height:1.2;margin:.2rem 0 .7rem;letter-spacing:-.035em}p{margin:0 0 1rem}h1{font-size:clamp(3rem,7.4vw,6.45rem);line-height:.95;letter-spacing:-.07em;text-transform:uppercase}article>h1{font-size:clamp(2.35rem,5vw,4.4rem);line-height:1.04;letter-spacing:-.055em}.content-title{font-size:clamp(2rem,4vw,3.35rem);line-height:1.08;letter-spacing:-.05em}h2{font-size:clamp(1.45rem,2.5vw,2.1rem)}.gradient{display:inline-block;background:linear-gradient(100deg,#fff 0%,var(--cyan) 26%,var(--purple) 76%,#fff 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 14px rgba(0,229,255,.62)) drop-shadow(0 0 22px rgba(155,92,255,.35))}.hero{position:relative;isolation:isolate;margin-top:clamp(.8rem,2vw,1.8rem);padding:clamp(2.2rem,5.4vw,5.1rem) 0 clamp(2rem,4.6vw,4.1rem);display:grid;gap:clamp(1.4rem,4vw,3rem)}.hero:before{content:"";position:absolute;inset:0 calc(50% - 50vw);z-index:-1;background:linear-gradient(115deg,rgba(0,229,255,.08),transparent 28%,rgba(155,92,255,.09) 70%,transparent),linear-gradient(90deg,transparent,rgba(0,229,255,.12),transparent 70%);border-block:1px solid rgba(0,229,255,.1);clip-path:polygon(0 0,100% 0,100% 88%,96% 100%,0 100%)}@media(min-width:950px){.hero{grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);align-items:center}}.hero h2{color:#d7e6ff;font-weight:500;max-width:18ch;text-shadow:0 0 28px rgba(0,229,255,.13)}.label{display:inline-block;max-width:100%;overflow-x:auto;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#b7fff9;border:1px solid rgba(0,229,255,.42);background:linear-gradient(90deg,#00e5ff1c,#9b5cff14);padding:.42rem .72rem;border-radius:.2rem;box-shadow:inset 0 0 18px #00e5ff14,0 0 18px #00e5ff17;clip-path:polygon(0 0,calc(100% - .65rem) 0,100% .65rem,100% 100%,.65rem 100%,0 calc(100% - .65rem))}.terminal-command span{color:var(--cyan);text-shadow:0 0 10px var(--cyan)}.lead{max-width:68ch;color:#c8d7f5;font-size:clamp(1.03rem,1.45vw,1.18rem);line-height:1.68}.section-title{position:relative;display:inline-flex;align-items:center;gap:.7rem;font-size:clamp(1.45rem,2.8vw,2.25rem);text-transform:uppercase;letter-spacing:-.04em}.section-title:after{content:"";width:min(18vw,7rem);height:1px;background:linear-gradient(90deg,var(--cyan),var(--purple),transparent);box-shadow:0 0 14px var(--glow-cyan)}.section-row{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:.95rem}.muted-link{color:var(--muted);font-weight:700}.grid{display:grid;gap:clamp(.9rem,1.8vw,1.15rem)}.topics-grid{counter-reset:topic;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr))}.article-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.card{position:relative;background:linear-gradient(135deg,rgba(0,229,255,.08),transparent 32%),linear-gradient(180deg,var(--panel),rgba(7,12,26,.88));border:1px solid var(--border);padding:clamp(1.1rem,2vw,1.5rem);border-radius:.18rem;box-shadow:inset 0 0 0 1px #ffffff06,0 18px 55px #00000047;clip-path:polygon(0 0,calc(100% - 1.05rem) 0,100% 1.05rem,100% 100%,1.05rem 100%,0 calc(100% - 1.05rem));transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,background .2s ease}.card:before,.card:after{content:"";position:absolute;pointer-events:none}.card:before{inset:0;border-top:1px solid rgba(0,229,255,.42);opacity:.8}.card:after{top:.75rem;right:.85rem;width:2.3rem;height:1px;background:var(--purple);box-shadow:0 0 12px var(--purple)}.card p{color:#c8d7f5;line-height:1.65}.card h3{margin-top:0}.card:hover{transform:translateY(-2px);border-color:#00e5ff85;box-shadow:0 18px 55px #00000059,0 0 22px #00e5ff1a,0 0 32px #9b5cff14}.terminal-panel{background:linear-gradient(135deg,rgba(0,229,255,.12),transparent 28%),radial-gradient(circle at 90% 10%,rgba(155,92,255,.22),transparent 14rem),var(--panel-strong);border-color:#00e5ff75;box-shadow:inset 0 0 34px #00e5ff0f,0 0 38px #00e5ff17,0 0 70px #9b5cff1a}.terminal-panel h3{color:#f8fbff;text-transform:uppercase;letter-spacing:.06em}.terminal-panel ul{margin:.8rem 0 0;padding:0;list-style:none}.terminal-panel li{position:relative;margin:.55rem 0;padding-left:1.15rem;color:#c9d8f7}.terminal-panel li:before{content:"▹";position:absolute;left:0;color:var(--cyan);text-shadow:0 0 10px var(--cyan)}.resume-video{position:relative;margin-top:1.15rem;overflow:hidden;border:1px solid rgba(0,229,255,.36);border-radius:.2rem;background:#030812c7;box-shadow:inset 0 0 18px #00e5ff14,0 0 22px #00e5ff14;aspect-ratio:16 / 9;clip-path:polygon(0 0,calc(100% - .8rem) 0,100% .8rem,100% 100%,.8rem 100%,0 calc(100% - .8rem))}.resume-video iframe{display:block;width:100%;height:100%;border:0}.topic-card{counter-increment:topic;min-height:12rem;padding-top:3.55rem}.topic-card:after{content:counter(topic,decimal-leading-zero);top:1rem;left:1.1rem;right:auto;width:auto;height:auto;background:none;color:var(--cyan);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;font-weight:800;letter-spacing:.14em;text-shadow:0 0 12px var(--cyan);box-shadow:none}.topic-card h3{font-size:1.2rem;color:#f7fbff}.article-card{display:flex;flex-direction:column;min-height:18rem;background:linear-gradient(135deg,rgba(0,229,255,.07),transparent 30%),radial-gradient(circle at 96% 10%,rgba(155,92,255,.14),transparent 8.5rem),linear-gradient(180deg,#0a1224db,#060b18eb);border-color:#00e5ff33}.article-card:after{background:linear-gradient(90deg,var(--cyan),var(--purple));opacity:.75}.article-card h3{font-size:clamp(1.18rem,2vw,1.38rem);line-height:1.25;margin-bottom:.75rem}.article-card h3 a{color:#f7fbff;text-shadow:none}.article-card h3 a:hover,.article-card h3 a:focus-visible{color:var(--cyan)}.article-card p:not(.kicker){margin-bottom:1.05rem}.article-card .tag-list{margin-top:auto;padding-top:.35rem}.kicker{font-size:.76rem;letter-spacing:.09em;text-transform:uppercase;color:#b7fff9;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.meta{color:var(--muted);font-size:.95rem}.btn{position:relative;border:1px solid rgba(0,229,255,.42);background:linear-gradient(90deg,#00e5ff14,#9b5cff14);color:#eafcff;padding:.68rem 1.05rem;border-radius:.12rem;display:inline-flex;align-items:center;justify-content:center;font-weight:800;letter-spacing:.04em;text-transform:uppercase;box-shadow:inset 0 0 18px #00e5ff0f,0 0 18px #00e5ff14;clip-path:polygon(0 0,calc(100% - .65rem) 0,100% .65rem,100% 100%,.65rem 100%,0 calc(100% - .65rem));transition:color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease,background .2s ease}.btn:hover,.btn:focus-visible{color:#04101c;background:linear-gradient(90deg,var(--cyan),var(--purple));border-color:transparent;text-shadow:none;transform:translateY(-2px);box-shadow:0 0 22px var(--glow-cyan),0 0 36px var(--glow-purple)}.btn-primary{background:linear-gradient(90deg,var(--cyan),var(--purple));color:#041226;border-color:transparent;font-weight:800;box-shadow:0 0 22px var(--glow-cyan),0 0 36px var(--glow-purple)}.actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.25rem}.tag-list{display:flex;flex-wrap:wrap;gap:.45rem;padding:0;list-style:none}.tag-list li{border:1px solid rgba(155,92,255,.34);color:#d7def7;background:#9b5cff14;padding:.13rem .52rem;border-radius:999px;font-size:.85rem}.site-footer{margin-top:3rem;border-top:1px solid rgba(0,229,255,.15);color:var(--muted)}.site-footer div{display:flex;gap:1rem}.stack-gap>section+section{margin-top:clamp(1.55rem,3.2vw,2.55rem)}.stack-gap>section.card{overflow:hidden}@media(max-width:700px){h1{font-size:clamp(2.45rem,13.2vw,4rem);letter-spacing:-.06em}.hero{padding-top:1.75rem}.label{font-size:.78rem}.nav-wrap,.site-footer{flex-direction:column;align-items:flex-start}.nav-wrap{gap:.85rem}nav{width:100%;justify-content:flex-start;row-gap:.55rem}.site-header nav a{padding-block:.32rem}.brand{min-width:0}.section-row{align-items:flex-start;flex-direction:column;margin-bottom:.8rem}.topic-card,.article-card{min-height:auto}}@media(max-width:420px){h1{font-size:clamp(2.2rem,12vw,3rem)}.brand{font-size:.94rem}.brand-mark{width:1.7rem;height:1.7rem}.actions{gap:.65rem}.btn{width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.tip-button-wrap{margin:clamp(1.35rem,3vw,2rem) 0}.tip-button{position:relative;display:inline-flex;align-items:center;justify-content:center;max-width:100%;border:1px solid rgba(255,91,91,.58);border-radius:.12rem;background:linear-gradient(135deg,#ff4545f2,#a41530f0),#d8283f;color:#fff8f8;padding:.72rem 1.08rem;font-size:.9rem;font-weight:850;letter-spacing:.045em;line-height:1.15;text-align:center;text-transform:uppercase;text-shadow:0 1px 10px rgba(67,4,10,.35);box-shadow:inset 0 0 18px #ffffff14,0 0 18px #ff4a4a29,0 12px 30px #00000038;clip-path:polygon(0 0,calc(100% - .65rem) 0,100% .65rem,100% 100%,.65rem 100%,0 calc(100% - .65rem));transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,background .2s ease}.tip-button:hover,.tip-button:focus-visible{border-color:#ff9e9ec2;background:linear-gradient(135deg,#ff5858,#cb1a3afa),#ef3049;color:#fff;text-shadow:0 1px 10px rgba(67,4,10,.42);transform:translateY(-2px);box-shadow:inset 0 0 18px #ffffff1a,0 0 20px #ff4a4a40,0 16px 34px #00000047}.youtube-embed{position:relative;width:100%;margin:clamp(1.5rem,4vw,2.5rem) 0;overflow:hidden;border:1px solid var(--border);border-radius:.75rem;background:var(--surface);box-shadow:0 0 24px #00e5ff1a,0 0 36px #9b5cff14;aspect-ratio:16 / 9}.youtube-embed iframe{display:block;width:100%;height:100%;border:0}.article-shell{width:min(100%,52rem);margin:0 auto;padding:clamp(1.25rem,3.5vw,2.5rem) 0 clamp(2.6rem,7vw,5.6rem)}.article-back-link{display:inline-flex;margin-bottom:clamp(1.25rem,3vw,2rem)}.article-detail{color:#eef4ff}.article-hero{margin-bottom:clamp(1.65rem,4vw,2.8rem)}.article-hero .tag-list{gap:.55rem;margin:0 0 clamp(1.1rem,2.2vw,1.45rem)}.article-hero .tag-list li{border-color:#3784ff9e;background:#2360be57;color:#a9d3ff;padding:.18rem .68rem;font-size:.82rem;line-height:1.2;box-shadow:inset 0 0 12px #4093ff1f}.article-detail .content-title{max-width:100%;margin-bottom:clamp(1.1rem,2.4vw,1.45rem);color:#f5f8ff;font-size:clamp(3rem,7.2vw,4.05rem);line-height:.98;letter-spacing:-.065em;text-wrap:balance;overflow-wrap:anywhere;hyphens:auto;text-transform:none}.article-date{margin-bottom:clamp(1.1rem,2.8vw,1.7rem);color:#a5b4cf}.article-description,.article-body{color:#e2e8f3;font-size:clamp(1.03rem,1.6vw,1.16rem);line-height:1.7}.article-description{position:relative;margin:0;padding:clamp(.95rem,2.6vw,1.25rem) clamp(1rem,3vw,1.45rem);border:1px solid rgba(0,229,255,.34);border-left-width:3px;border-radius:.8rem;background:linear-gradient(135deg,#00e5ff1f,#9b5cff14),#081225c7;box-shadow:inset 0 1px #ffffff0f,0 0 0 1px #9b5cff1f,0 18px 42px #0003,0 0 28px #00e5ff14;color:#f0f7ff;font-size:clamp(1.05rem,1.65vw,1.2rem)}.article-description:before{content:"";position:absolute;inset:.45rem auto .45rem -1px;width:3px;border-radius:999px;background:linear-gradient(180deg,var(--cyan),var(--purple));box-shadow:0 0 18px var(--glow-cyan)}.article-body>*{margin-left:0;margin-right:0}.article-body>*+*{margin-top:1.2rem}.article-body p,.article-body li{color:#e2e8f3}.article-body h2,.article-body h3,.article-body h4{color:#f3f7ff;letter-spacing:-.045em}.article-body h2{margin-top:clamp(3rem,6vw,4.2rem);margin-bottom:1.25rem;font-size:clamp(1.7rem,3.2vw,2.15rem);line-height:1.2}.article-body h3{margin-top:clamp(2.3rem,5vw,3.2rem);margin-bottom:.95rem;font-size:clamp(1.35rem,2.4vw,1.65rem)}.article-body ul,.article-body ol{padding-left:1.4rem}.article-body li+li{margin-top:.55rem}.article-body a{color:#8dd8ff;text-decoration:underline;text-decoration-color:#00e5ff6b;text-underline-offset:.2em}.article-body blockquote{margin:clamp(1.6rem,4vw,2.3rem) 0;padding:1rem 1.2rem;border-left:3px solid var(--cyan);background:#00e5ff0f;color:#d8e7ff}.article-body img,.article-body video{display:block;max-width:100%;height:auto;margin:clamp(1.6rem,4vw,2.4rem) auto;border-radius:.45rem;border:1px solid rgba(0,229,255,.18)}.article-body pre{overflow-x:auto}.article-body table{display:block;width:100%;max-width:100%;margin:clamp(1.8rem,4vw,2.6rem) 0;overflow-x:auto;border:1px solid rgba(137,168,209,.22);border-spacing:0;border-collapse:separate;border-radius:.25rem;background:#081225e0;box-shadow:0 18px 45px #00000040,inset 0 1px #ffffff08}.article-body thead{background:#1a273ef2}.article-body th,.article-body td{min-width:10rem;padding:clamp(.85rem,2vw,1.05rem) clamp(.95rem,2.4vw,1.3rem);border-bottom:1px solid rgba(137,168,209,.16);color:#d8e3f3;line-height:1.5;text-align:left;vertical-align:top}.article-body th{color:#f0f5ff;font-weight:800}.article-body tbody tr:last-child td{border-bottom:0}.article-body tbody tr:nth-child(2n){background:#ffffff04}@media(max-width:700px){.article-shell{padding-top:1.9rem}.article-detail .content-title{max-width:none;font-size:clamp(2.35rem,12vw,3.2rem)}.article-date{margin-bottom:2rem}}
