@import url("https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&display=swap");:root{--bg:#0b0e12;--surface:#0f141a;--card:#12161c;--muted:#9aa4b2;--text:#e6edf3;--accent:#7aa2f7;--accent-2:#a3be8c;--border:#364355;--shadow:0 10px 30px rgba(0,0,0,.35);--radius:16px;--accent-3:#f6c177;--gradient-1:radial-gradient(circle at 20% 20%,rgba(90,120,210,.45),transparent 55%);--gradient-2:radial-gradient(circle at 80% 0%,rgba(214,141,62,.25),transparent 60%);--glass:rgba(13,18,31,.55);--body-grid:hsla(0,0%,100%,.03);--pill:rgba(124,139,173,.18);--shadow-lg:0 25px 80px rgba(9,12,20,.55);--footer-icon-filter:brightness(0) invert(1);--scrollbar-thumb:rgba(122,162,247,.6);--ease-out:cubic-bezier(0.16,1,0.3,1);--inline-code-bg:rgba(122,162,247,.08);--inline-code-border:rgba(122,162,247,.35);--inline-code-text:#dbe3ff;--callout-note-bg:rgba(122,162,247,.2);--callout-note-border:rgba(122,162,247,.4);--callout-info-bg:rgba(80,198,255,.2);--callout-info-border:rgba(80,198,255,.45);--callout-tip-bg:hsla(92,28%,65%,.24);--callout-tip-border:hsla(92,28%,65%,.45);--callout-warning-bg:hsla(0,100%,79%,.2);--callout-warning-border:hsla(0,100%,79%,.45);--callout-curiosity-bg:rgba(158,137,255,.28);--callout-curiosity-border:rgba(158,137,255,.45);--callout-related-bg:rgba(68,92,135,.32);--callout-related-border:rgba(108,134,185,.4);--callout-shadow:var(--shadow);--callout-icon-color:#2a2f38;--callout-title-color:rgba(220,225,236,.82)}:root[data-theme=light]{--bg:#f6f7fb;--surface:#fff;--card:#fff;--muted:#5b6573;--text:#0e1320;--accent:#316df0;--accent-2:#2cbb69;--border:#cecece;--shadow:0 8px 18px rgba(0,0,0,.08);--accent-3:#d49200;--gradient-1:radial-gradient(circle at 20% 20%,rgba(49,109,240,.25),transparent 55%);--gradient-2:radial-gradient(circle at 80% 0%,rgba(255,171,64,.08),transparent 60%);--glass:hsla(0,0%,100%,.7);--body-grid:rgba(0,0,0,.05);--pill:rgba(0,0,0,.08);--shadow-lg:0 35px 40px hsla(0,0%,6%,.08);--footer-icon-filter:grayscale(1) brightness(.35);--scrollbar-thumb:rgba(49,109,240,.4);--ease-out:cubic-bezier(0.33,1,0.68,1);--inline-code-bg:rgba(49,109,240,.05);--inline-code-border:rgba(49,109,240,.3);--inline-code-text:#1d2d4d;--callout-note-bg:rgba(49,109,240,.14);--callout-note-border:rgba(49,109,240,.2);--callout-info-bg:rgba(34,179,255,.14);--callout-info-border:rgba(34,179,255,.25);--callout-tip-bg:rgba(46,173,107,.18);--callout-tip-border:rgba(46,173,107,.25);--callout-warning-bg:hsla(5,81%,66%,.18);--callout-warning-border:hsla(5,81%,66%,.25);--callout-curiosity-bg:rgba(126,103,230,.18);--callout-curiosity-border:rgba(126,103,230,.2);--callout-related-bg:rgba(39,62,108,.12);--callout-related-border:rgba(39,62,108,.18);--callout-shadow:none;--callout-icon-color:#0f1421;--callout-title-color:rgba(15,20,33,.75)}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body,html{height:100%}body{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}body::-webkit-scrollbar{width:6px;height:6px}body::-webkit-scrollbar-track{background:transparent}body::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:999px}.tag-suggestions::-webkit-scrollbar,.tag-suggestions::-webkit-scrollbar-thumb{display:none}.container{max-width:1100px;margin:0 auto;padding:0 20px}.section{padding:50px 0}.section-title{margin:0 0 24px;font-size:28px;letter-spacing:.3px}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:20;background:linear-gradient(var(--bg)ee,var(--bg)ee);-webkit-backdrop-filter:saturate(1.2) blur(4px);backdrop-filter:saturate(1.2) blur(4px);border-bottom:1px solid var(--border);max-height:70px}.blog-article-page .site-header{position:static}.nav{display:grid;grid-template-columns:auto 1fr auto;grid-gap:12px;gap:12px;padding:10px 0}.nav,.site-logo{align-items:center}.site-logo{display:inline-flex;justify-content:center;width:48px;height:48px;border-radius:999px;background:var(--card);border:1px solid var(--border);text-decoration:none;color:var(--text)}.site-logo img{width:28px;height:28px;object-fit:contain}.nav-menu-left{display:flex;gap:16px;list-style:none;margin:0;padding:0;align-items:center}.nav-menu-left a{color:var(--text);text-decoration:none;opacity:.9;transition:color .2s ease,opacity .2s ease}.nav-menu-left a:hover{opacity:1;color:var(--accent)}.nav-actions{display:flex;align-items:center;gap:10px;justify-self:end}.chip{padding:6px 10px;border-radius:10px;border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;margin-right:10px}.toggle-group .chip{font-size:12px;letter-spacing:.08em}.toggler[aria-pressed=true]{outline:2px solid var(--accent)}.switch{position:relative;display:inline-block;width:54px;height:30px}.switch input{display:none}.slider{position:absolute;inset:0;background:var(--surface);border:1px solid var(--border);border-radius:999px;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:space-between;padding:4px 6px}.slider:after{content:"";position:absolute;left:5px;width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2));transition:transform .25s ease}.switch input:checked+.slider:after{transform:translateX(24px)}.moon,.sun{width:16px;height:16px;border-radius:50%}.sun{background:radial-gradient(circle at 35% 35%,#ffd86b 0,#ffb100 60%,#ff9a00 100%)}.moon{background:radial-gradient(circle at 60% 40%,#aab6ff 0,#7aa2f7 60%,#4c6bd9 100%)}.nav-toggle{display:none}.btn,.nav-toggle,.switch{cursor:pointer}.hamburger{position:relative}.hamburger,.hamburger:after,.hamburger:before{width:22px;height:2px;background:currentColor;border-radius:2px}.hamburger:after,.hamburger:before{content:"";position:absolute;left:0}.hamburger:before{top:-6px}.hamburger:after{top:6px}.nav-menu-flyout{position:absolute;right:20px;top:56px;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px;list-style:none;min-width:220px}.nav-menu-flyout[hidden]{display:none}.nav-menu-flyout a{color:var(--text);text-decoration:none;transition:color .2s ease;display:block;padding:10px 12px;font-size:16px;font-weight:600}.nav-menu-flyout a:hover{color:var(--accent)}.about-wrapper{display:grid;place-items:center;text-align:center;grid-gap:14px;gap:14px}.profile{width:140px;height:140px;border-radius:50%;object-fit:cover;border:1px solid var(--border);box-shadow:var(--shadow)}.title{font-size:40px}.title,.typewriter{margin:0}.caret{display:inline-block;width:1ch;border-right:2px solid var(--accent);transform:translateY(3px);animation:blink 1s step-end infinite}@keyframes blink{50%{border-color:transparent}}@keyframes glow-sway{0%{transform:scale(1);opacity:.4}50%{transform:scale(1.08) translate3d(-20px,10px,0);opacity:.55}to{transform:scale(1.02) translate3d(15px,-10px,0);opacity:.45}}.tw-line{--tw-color:var(--accent);color:var(--tw-color)}.about-text{max-width:700px;color:#c9d4e3}:root[data-theme=light] .about-text{color:#2e3744}.link-accent{color:#9fc6ff;font-weight:600;text-decoration:none}:root[data-theme=light] .link-accent{color:#234fa0}.actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.actions-icons .icon-right{display:inline-flex;margin-left:6px}.grid{display:grid;grid-gap:16px;gap:16px}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow);transform:translateY(8px);opacity:0;transition:transform .6s cubic-bezier(.2,.7,.2,1),opacity .6s}.card.show{transform:translateY(0);opacity:1}.card h3{margin:0 0 6px;font-size:18px}.card p{margin:0 0 10px;color:var(--muted)}.card .tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.tag{font-size:12px;padding:4px 8px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:inherit}.card .actions{margin-top:12px;display:flex;gap:8px;flex-wrap:wrap}.project-filter-select{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin:0 0 18px}.project-filter-select label{font-size:14px;color:var(--muted)}.project-filter-select select{min-width:180px;max-width:100%;padding:8px 12px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:inherit;font:inherit}button{font:inherit;transition:transform .2s var(--ease-out),box-shadow .2s var(--ease-out),background-color .2s var(--ease-out),border-color .2s var(--ease-out),color .2s var(--ease-out)}button:focus-visible:not(:disabled):not(.journey-pill):not(.journey-arrow),button:hover:not(:disabled):not(.journey-pill):not(.journey-arrow){transform:translateY(-1px)}button:active:not(:disabled):not(.journey-pill):not(.journey-arrow){transform:translateY(0)}button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button:disabled{opacity:.99}.btn{display:inline-flex;gap:8px;align-items:center;justify-content:center;padding:10px 14px;border-radius:12px;border:1px solid var(--border);background:var(--card);text-decoration:none;color:var(--text);transition:transform .2s var(--ease-out),box-shadow .2s var(--ease-out),background .2s var(--ease-out),border-color .2s var(--ease-out),color .2s var(--ease-out)}.btn:focus-visible,.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow)}.btn:focus-visible:not(.primary),.btn:hover:not(.primary){color:var(--accent);border-color:var(--accent);background:rgba(122,162,247,.12)}:root[data-theme=light] .btn:focus-visible:not(.primary),:root[data-theme=light] .btn:hover:not(.primary){color:#1d4ed8;border-color:rgba(49,109,240,.45);background:rgba(49,109,240,.12)}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.btn:active{transform:translateY(0);box-shadow:0 8px 18px rgba(0,0,0,.3)}.btn.primary{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#0b0e12;border:none}.btn.primary:focus-visible,.btn.primary:hover{color:#040507;filter:brightness(1.05)}:root[data-theme=light] .btn.primary{background:linear-gradient(135deg,#ffd36e,#fbb03b);color:#3d2c00}.journey-section{--journey-line:linear-gradient(90deg,#5ac8f5,#9c7df1,#7be487,#f87f5c);width:min(1200px,100vw - clamp(32px,6vw,96px));margin:0 auto;padding-left:clamp(16px,4vw,48px);padding-right:clamp(16px,4vw,48px)}.journey-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:16px}.journey-intro{margin-top:8px;color:var(--muted);max-width:640px}.journey-shell{margin-top:24px;border-radius:32px;border:1px solid rgba(0,0,0,.15);background:radial-gradient(circle at 10% 10%,rgba(122,162,247,.2),transparent 60%),rgba(9,12,20,.9);padding:32px;display:flex;flex-direction:column;width:100%;max-width:100%;box-shadow:0 25px 55px rgba(6,9,20,.45)}:root[data-theme=light] .journey-shell{background:radial-gradient(circle at 10% 10%,rgba(49,109,240,.18),transparent 60%),var(--surface);box-shadow:4px 4px 40px rgba(15,19,33,.08)}.journey-timeline{position:relative;display:flex;align-items:center;gap:12px}.journey-arrow{position:absolute;top:10px;width:36px;height:36px;border-radius:50%;border:1px solid var(--border);background:hsla(0,0%,100%,.08);color:var(--text);display:grid;place-items:center;z-index:2;cursor:pointer}.journey-arrow.prev{left:0;transform:translate(-50%,-50%)}.journey-arrow.next{right:0;transform:translate(50%,-50%)}.journey-arrow:disabled{opacity:0;pointer-events:none}.journey-events{position:relative;display:block;overflow-x:auto;overflow-y:visible;padding:0 48px 12px;flex:1 1;width:100%;scrollbar-width:none}.journey-events::-webkit-scrollbar{display:none}.journey-rail{position:relative;min-height:120px;margin:0 auto}.journey-track{position:absolute;left:clamp(1px,.5vw,10px);right:clamp(1px,.5vw,10px);top:44px;height:3px;border-radius:999px;background:hsla(0,0%,59%,.79)}.journey-track:after{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--journey-progress,0);border-radius:inherit;background:var(--journey-line)}.journey-pill{border:none;background:transparent;color:var(--muted);font-weight:600;letter-spacing:.1em;text-transform:uppercase;font-size:13px;padding:0 8px 12px;display:flex;flex-direction:column;gap:6px;align-items:center;cursor:pointer;position:absolute;top:36px;transform:translateX(-50%)}.journey-pill-dot{width:16px;height:16px;border-radius:50%;border:2px solid hsla(0,0%,100%,.45);background:#0f1321}:root[data-theme=light] .journey-pill-dot{background:#fff;border-color:rgba(15,19,33,.3)}.journey-pill-label{font-size:13px}.journey-pill.active{color:var(--text)}.journey-pill.active .journey-pill-dot{border-color:var(--accent);background:var(--accent)}.journey-detail{background:rgba(12,16,27,.92);border-radius:28px;padding:28px;border:1px solid hsla(0,0%,100%,.08)}:root[data-theme=light] .journey-detail{background:var(--surface);border-color:rgba(15,19,33,.12)}.journey-detail-year{font-size:14px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0 0 6px}.journey-detail h3{margin:0 0 6px;font-size:24px}.journey-detail-subtitle{margin:0 0 12px;color:var(--muted);font-weight:600}.journey-detail p{margin:10px 0 0}@media (max-width:768px){.journey-shell{padding:24px}.journey-pill{min-width:130px}}.skills-grid{grid-template-columns:1.3fr .7fr;grid-gap:24px;gap:24px}.skills-tech{display:flex;flex-direction:column;gap:24px}.logo-grid{flex-wrap:wrap;gap:10px 18px}.logo-grid,.logo-grid .logo{display:flex;align-items:center}.logo-grid .logo{flex-direction:column;gap:6px;padding:0;border:none;background:transparent;min-height:unset;text-align:center}.logo-grid .logo img{width:60px;height:60px;filter:contrast(1.05) brightness(.95);margin:0}:root[data-theme=dark] .logo-grid .logo img[src$="rust.svg"]{filter:brightness(0) invert(1)}:root[data-theme=light] .logo-grid .logo img[src$="rust.svg"]{filter:contrast(1.05) brightness(.95)}.logo-grid .logo-label{font-size:15px;color:var(--muted)}.sub-title{margin:0 0 8px;font-size:18px}.soft-list{margin:8px 0 0 18px}.section-divider{width:100%;max-width:1100px;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.301),transparent);margin:0 auto;opacity:1}:root[data-theme=light] .section-divider{background:linear-gradient(90deg,transparent,rgba(14,19,32,.22),transparent)}.site-footer{padding:28px 0;border-top:1px solid var(--border);color:var(--muted);text-align:center}.footer-links{display:flex;gap:12px;justify-content:center;margin-top:8px}.footer-links a{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--border);background:var(--surface)}.footer-links img{width:18px;height:18px;filter:var(--footer-icon-filter);transition:filter .2s ease}.modal{position:fixed;inset:0;background:rgba(0,0,0,.6);display:grid;place-items:center;padding:20px;z-index:40}.modal[hidden]{display:none}.modal-dialog{position:relative;width:min(900px,100%);background:var(--card);border:1px solid var(--border);border-radius:16px;padding:16px;box-shadow:var(--shadow)}.modal-large{width:min(1100px,100%)}.modal-title{margin:0 0 10px}.modal-close{position:absolute;right:18px;top:14px;border:1px solid var(--border);background:var(--surface);color:var(--text);width:36px;height:36px;border-radius:12px;cursor:pointer}.pdf-frame{width:100%;height:75vh;border:none;border-radius:12px;background:var(--bg)}.resume-fallback{margin-top:12px;border:1px dashed var(--border);border-radius:12px;padding:18px;text-align:center;display:flex;flex-direction:column;gap:12px;align-items:center;background:var(--surface)}.resume-fallback .btn{min-width:200px}.fade-in{animation:fade .8s ease both}@keyframes fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (max-width:1024px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){body{padding:0 16px}.project-filter-select{justify-content:flex-start}}@media (max-width:760px){.nav{grid-template-columns:auto auto}.nav-menu-left{display:none}.nav-toggle{display:inline-flex;align-items:center;justify-content:center;background:var(--card);color:var(--text);border:1px solid var(--border);border-radius:10px;padding:15px 10px}.nav-menu-flyout.open{display:flex;flex-direction:column;gap:6px}.cards,.skills-grid{grid-template-columns:1fr}}.empty-state{margin:0;color:var(--muted);text-align:center}body{font-family:Space Grotesk,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Helvetica Neue,Arial,Noto Sans;margin:0;padding:0 16px;color:var(--text);background-image:var(--gradient-1),var(--gradient-2),linear-gradient(140deg,#010204 0,#060912 55%,#030307 100%);position:relative}:root[data-theme=light] body,body{background-repeat:no-repeat;background-size:cover}:root[data-theme=light] body{background-image:linear-gradient(130deg,#fefefe,#f3f7ff 42%,#ffeef6),radial-gradient(circle at 20% 20%,rgba(121,158,255,.25),transparent 55%),radial-gradient(circle at 80% 0,rgba(255,182,122,.2),transparent 60%);color:#101321;background-attachment:fixed}@media (max-width:1000px){body{background-image:linear-gradient(140deg,#010204,#060912 55%,#030307)}:root[data-theme=light] body{background-image:linear-gradient(130deg,#fefefe,#f3f7ff 42%,#ffeef6)}}body:after{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at top left,rgba(122,162,247,.12),transparent 50%),radial-gradient(circle at bottom right,rgba(243,152,72,.12),transparent 55%);opacity:.6;z-index:-1;animation:glow-sway 28s ease-in-out infinite;will-change:transform,opacity}@media (min-width:1001px){:root:not([data-theme=light]) body{background-image:linear-gradient(155deg,#07111b,#000 45%,#070300);background-color:#000204}:root:not([data-theme=light]) body:after{background:radial-gradient(circle at top left,rgba(40,60,120,.18),transparent 55%),radial-gradient(circle at bottom right,rgba(120,70,25,.15),transparent 60%);opacity:.35}}@media (min-width:1024px){body{background-attachment:fixed}}main{display:flex;flex-direction:column}.container{max-width:1200px}.section{padding:20px 0}.section-divider{height:1px;max-width:900px;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.2),transparent);margin:30px auto}.section-title{font-size:32px;letter-spacing:.5px;margin-bottom:32px;line-height:1.2}.glass-panel{border:1px solid hsla(0,0%,100%,.08);border-radius:24px;padding:32px;box-shadow:var(--shadow-lg)}.glass-panel,:root[data-theme=light] .glass-panel{background:var(--glass);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}:root[data-theme=light] .glass-panel{border:1px solid #e2e2e2;box-shadow:2px 1px 5px hsla(0,0%,6%,.08)}.hero-section{padding-top:90px}.hero-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);grid-gap:28px;gap:28px}.hero-info{position:relative;overflow:hidden}.hero-top{display:flex;align-items:flex-start;gap:16px;justify-content:space-between;flex-wrap:nowrap;margin-bottom:20px;position:relative}.hero-badges{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:0}.hero-pill{display:flex;flex-direction:column;gap:2px;padding:10px 16px;border-radius:999px;background:var(--pill);font-size:13px}.hero-pill .pill-label{text-transform:uppercase;letter-spacing:1px;font-size:11px;color:var(--muted)}.hero-pill .pill-value{font-weight:600}.eyebrow{text-transform:uppercase;letter-spacing:4px;font-size:13px!important;color:var(--muted)}.blog-hero .eyebrow{align-self:flex-start;text-align:left}.gradient-text{background:linear-gradient(120deg,var(--accent),var(--accent-3));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero-info .typewriter{font-size:20px;margin-bottom:16px}.about-text{font-size:18px;line-height:1.7;margin-bottom:24px}.actions .btn{border-radius:14px;padding-inline:18px;font-weight:600}:root[data-theme=light] .actions .btn{background:#fff;color:#0e1320;border:1px solid hsla(0,0%,6%,.12);box-shadow:0 4px 12px hsla(0,0%,6%,.08)}:root[data-theme=light] .actions .btn.primary{background:linear-gradient(125deg,#ffcc63,#ffb347);color:#0e1320;border:none}.hero-stats{margin-top:30px;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:16px;gap:16px}.stat-card{padding:18px;border-radius:18px;border:1px solid hsla(0,0%,100%,.08);background:hsla(0,0%,100%,.02)}:root[data-theme=light] .stat-card{border-color:hsla(0,0%,4%,.08);background:hsla(0,0%,100%,.9)}.stat-value{font-size:32px;font-weight:600;display:block}.stat-label{text-transform:uppercase;letter-spacing:1px;font-size:12px;color:var(--muted)}.hero-panel{display:flex;flex-direction:column;gap:18px}.profile-card{display:inline-flex;align-items:center;justify-content:center;position:relative;margin-bottom:40px}.launch-wrapper{position:absolute;top:-110px;left:33%;transform:translateX(-190px);width:190px;height:230px;cursor:pointer}.hero-photo{width:230px;height:260px;object-fit:cover;border-radius:32px;border:2px solid hsla(0,0%,100%,.15);box-shadow:2px 2px 8px rgba(9,12,20,.55);position:relative;z-index:2}:root[data-theme=light] .hero-photo{border:2px solid rgba(52,52,52,.41);box-shadow:none}.launch-art{position:absolute;top:30px;right:0;bottom:0;margin:0 auto;height:auto;width:auto;max-width:220px;display:none;filter:drop-shadow(0 10px 30px rgba(0,0,0,.45));cursor:pointer;color:transparent}@media (max-width:1100px){.launch-art{left:0}}.launch-dark{display:block}:root[data-theme=dark] .launch-art:hover,:root[data-theme=light] .launch-art:hover{filter:drop-shadow(0 10px 30px rgb(8,158,245)) brightness(.9);opacity:.95}.focus-card,.stack-card{padding:24px}.card-label{text-transform:uppercase;font-size:12px;letter-spacing:3px;color:var(--muted);margin:0 0 16px}.stack-icons{display:flex;flex-wrap:wrap;gap:12px}.stack-chip{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:hsla(0,0%,100%,.04);border:1px solid hsla(0,0%,100%,.05)}:root[data-theme=light] .stack-chip{background:rgba(246,248,255,.9);border:1px solid rgba(10,15,30,.08)}.focus-list{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:10px;color:var(--text)}.focus-list li{display:flex;align-items:baseline;gap:8px;font-size:15px}.spark{display:inline-block;flex-shrink:0;width:9px;height:9px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-3));box-shadow:0 0 8px rgba(122,162,247,.6)}.ghost-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border-radius:999px;border:1px solid hsla(0,0%,100%,.3);color:var(--text);text-decoration:none;font-weight:600;transition:color .2s ease,border-color .2s ease,background .2s ease}:root[data-theme=light] .ghost-btn{border-color:rgba(10,15,30,.12);color:#0e1320;background:hsla(0,0%,100%,.85)}.ghost-btn:hover{border-color:var(--accent)}.ghost-btn:hover,:root[data-theme=light] .ghost-btn:hover{color:var(--accent)}.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}@media (max-width:1100px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.cards{grid-template-columns:1fr}}.card{background:rgba(13,16,24,.7);border:1px solid hsla(0,0%,100%,.06);border-radius:24px;padding:24px;box-shadow:var(--shadow-lg);opacity:1;transform:none}:root[data-theme=light] .card{background:hsla(0,0%,100%,.92);border:1px solid rgba(15,17,33,.08);box-shadow:0 15px 35px rgba(15,17,33,.08)}.project-card p{min-height:60px}.project-banner{width:100%;height:auto;border-radius:18px;border:1px solid hsla(0,0%,100%,.08);margin:12px 0;box-shadow:0 12px 30px rgba(5,7,15,.35);object-fit:cover;transition:transform .4s ease,box-shadow .4s ease;display:block}.project-banner-link{display:block;border-radius:18px;margin:12px 0}.project-banner-link .project-banner{margin:0}.project-banner-link:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.blog-card .blog-card-cover:hover,.project-card:hover .project-banner{transform:scale(1.02);cursor:pointer}:root[data-theme=light] .project-banner{border:1px solid hsla(0,0%,63%,.08);box-shadow:none}.project-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-size:13px}.project-pill{padding:6px 12px;border-radius:999px;background:hsla(0,0%,100%,.06);border:1px solid hsla(0,0%,100%,.08)}.project-status{color:var(--muted)}.project-tags{margin-bottom:16px;display:flex;flex-wrap:wrap;gap:8px}.project-tags .tag{cursor:pointer;transition:color .2s ease,border-color .2s ease;border-radius:999px;border:1px solid hsla(0,0%,100%,.2);background:hsla(0,0%,100%,.04);padding:6px 14px;font-size:14px}.project-tags .tag:hover{color:var(--accent);border-color:var(--accent)}:root[data-theme=light] .project-tags .tag{border-color:rgba(15,23,42,.15);background:rgba(49,109,240,.08);color:#0f172a}:root[data-theme=light] .project-tags .tag:hover{color:#1d4ed8;border-color:#1d4ed8}.project-actions{display:flex;flex-wrap:wrap;gap:10px}.btn.ghost{background:transparent;border:1px solid hsla(0,0%,100%,.25)}:root[data-theme=light] .btn.ghost{background:hsla(0,0%,100%,.8);border-color:rgba(15,17,33,.15);color:#0f1421;box-shadow:0 5px 12px rgba(15,17,33,.08)}.project-actions .btn{flex:none}#project-filters{display:flex;align-items:center;gap:12px;margin-bottom:24px}.filter-dropdown{position:relative}.filter-toggle{background:rgba(11,15,25,.8);border:1px solid hsla(0,0%,100%,.18);border-radius:999px;padding:8px 18px;color:var(--text);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:6px}.filter-menu{position:absolute;top:calc(100% + 8px);right:0;background:rgba(10,14,23,.95);border:1px solid hsla(0,0%,100%,.15);border-radius:16px;padding:6px;max-height:220px;overflow-y:auto;scrollbar-width:none;box-shadow:0 20px 35px rgba(5,7,12,.45);list-style:none;margin:0;z-index:5}.filter-menu::-webkit-scrollbar{display:none}.filter-option{border:none;background:transparent;color:var(--text);width:100%;text-align:left;padding:8px 12px;border-radius:12px;cursor:pointer;font:inherit}.filter-option.active,.filter-option:hover{background:rgba(122,162,247,.15)}:root[data-theme=light] .filter-toggle{background:hsla(0,0%,100%,.85);border:1px solid rgba(15,17,33,.15);color:#101321}:root[data-theme=light] .filter-menu{background:hsla(0,0%,100%,.95);border-color:rgba(15,17,33,.1)}.filter-toggle:focus{outline:2px solid var(--accent);outline-offset:2px}.skills-grid{display:grid;grid-template-columns:2fr 1fr;grid-gap:20px;gap:20px}.skill-block{padding:24px}.logo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:14px;gap:14px}.logo{padding:12px;border:1px solid hsla(0,0%,100%,.08);border-radius:18px;background:hsla(0,0%,100%,.02);display:flex;flex-direction:column;align-items:center;gap:6px}.logo img{width:48px;height:48px;object-fit:contain}.soft-card{padding:28px}.soft-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.soft-list li{display:flex;align-items:baseline;gap:10px}.soft-list li:before{content:"";flex-shrink:0;width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 6px rgba(122,162,247,.8)}.site-footer{margin-top:40px;border-radius:24px 24px 0 0;background:rgba(0,0,0,.3)}:root[data-theme=light] .site-footer{background:hsla(0,0%,100%,.8);color:#0e1320}.contact-dialog{max-width:520px;padding:32px;border-radius:24px;background:linear-gradient(140deg,rgba(12,17,31,.96),rgba(16,23,36,.85));border:1px solid hsla(0,0%,100%,.08);box-shadow:0 25px 65px rgba(5,7,15,.55)}:root[data-theme=light] .contact-dialog{background:hsla(0,0%,100%,.98);border:1px solid rgba(15,17,33,.08);box-shadow:0 25px 60px rgba(15,17,33,.12)}.modal-subtitle{margin-top:-12px;color:var(--muted)}.contact-form{gap:16px;margin-top:16px}.contact-form,.form-field{display:flex;flex-direction:column}.form-field{gap:6px;font-size:14px}.form-field span{font-weight:600}.form-field.optional span:after{content:""}.form-control{border-radius:12px;border:1px solid hsla(0,0%,100%,.15);background:rgba(15,18,30,.6);color:var(--text);padding:10px 14px;font:inherit}.form-control,.form-control textarea,.form-control[type=textarea]{resize:vertical}.form-control:focus{outline:2px solid var(--accent);border-color:transparent}:root[data-theme=light] .form-control{background:hsla(0,0%,100%,.92);border:1px solid rgba(15,17,33,.15);color:#0e1320}.form-submit{align-self:flex-start}.form-error{color:#ff6b6b;margin:0;font-size:14px}.contact-success{display:flex;flex-direction:column;gap:16px;margin-top:18px}@media (max-width:960px){.hero-grid,.skills-grid{grid-template-columns:1fr}}@media (max-width:640px){.glass-panel,.hero-info{padding:24px}body{padding:0 12px}}:root[data-theme=light] .launch-dark{display:none}:root[data-theme=light] .launch-light{display:block}@media (max-width:900px) and (min-width:600px){.launch-wrapper{left:37%}}@media (max-width:900px) and (min-width:400px){.logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:380px){.logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:550px) and (min-width:480px){.launch-wrapper{top:-110px;left:40%;transform:translateX(-190px);width:140px;height:180px}}@media (max-width:480px){.launch-wrapper{top:-125px;left:55%;transform:translateX(-190px);width:140px;height:180px}}@media (max-width:450px){.hero-photo{width:200px;height:220px}}@media (max-width:1200px) and (min-width:960px){.launch-wrapper{top:-110px;left:40%;transform:translateX(-190px);width:160px;height:180px}}.contact-btn{border-radius:999px;padding:10px 22px;box-shadow:0 18px 30px rgba(9,12,20,.35);font-weight:600}:root[data-theme=light] .contact-btn{box-shadow:2px -1px 20px rgba(15,17,33,.12);color:#0f1421}.hero-top .contact-btn{position:absolute;top:0;right:0;font-size:15px}@media (max-width:600px){.hero-top{flex-direction:column;align-items:flex-start;padding-top:50px}.hero-top .contact-btn{position:absolute;right:0}}@media (max-width:480px){.hero-top .contact-btn{position:absolute;top:-10px;right:0}}.blog-spotlight{padding-top:40px}.blog-spotlight .spotlight-head{display:flex;justify-content:space-between;align-items:center;gap:16px}.blog-spotlight .spotlight-head .btn:hover{color:var(--accent)}.blog-hero{padding:50px 20px 30px;display:flex;flex-direction:column;align-items:flex-start;text-align:left;width:100%}@media (max-width:1200px) and (min-width:900px){.blog-hero{padding:50px 120px 30px}}.blog-hero h1{font-size:clamp(32px,1vw,48px);margin-bottom:12px;text-align:left;width:100%}@media (max-width:700px){.blog-hero h1{font-size:20px}}.blog-hero p{margin:0;text-align:left;width:100%}.blog-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:24px;gap:24px}.blog-card{display:flex;flex-direction:column;border-radius:28px;border:1px solid var(--border);background:linear-gradient(145deg,hsla(0,0%,100%,.02),var(--card));overflow:hidden;box-shadow:var(--shadow);min-height:100%}:root[data-theme=light] .blog-card{background:linear-gradient(145deg,hsla(0,0%,100%,.8),var(--glass))}.blog-card.compact .blog-card-cover{padding-top:40%}.blog-card-cover{width:100%;padding-top:52%;position:relative;border-bottom:1px solid hsla(0,0%,100%,.05);overflow:hidden}:root[data-theme=light] .blog-card-cover{border-bottom-color:rgba(0,0,0,.06)}.blog-card-cover-img{object-fit:cover;object-position:center;position:absolute;inset:0}.blog-card-body{display:flex;flex-direction:column;gap:12px;padding:24px}.blog-card-body h3{margin:4px 0}.card-title-link{color:var(--text);text-decoration:none;transition:color .2s ease}.card-title-link:hover{color:var(--accent)}.blog-card-meta{display:flex;justify-content:space-between;font-size:14px;color:var(--muted)}.tag-line{display:flex;flex-wrap:wrap;gap:8px}.tag-line span{font-size:14px;padding:6px 14px;border-radius:999px;background:var(--pill)}.blog-tag,.project-tags .tag,.tag-line span{font-size:14px}.blog-card-link{align-self:flex-start;margin-top:10px;transition:color .2s ease}.blog-card-link:hover{color:var(--accent)}:root[data-theme=light] .blog-card-link:hover{color:#316df0}.tag-search{display:flex;flex-direction:column;gap:14px;margin-bottom:28px;margin-top:30px}.filter-header{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.filter-label{font-weight:600;color:var(--muted);cursor:pointer;transition:color .2s ease}.filter-label:focus-visible,.filter-label:hover{color:var(--accent)}.filter-action,.filter-divider{color:var(--muted)}.filter-action{border:none;background:none;font-weight:600;cursor:pointer;padding:0;transition:color .2s ease}.filter-action.active,.filter-action:focus-visible,.filter-action:hover{color:var(--accent)}.filter-extra{width:100%;margin-top:4px}.tag-search-input{border-radius:16px;border:1px solid hsla(0,0%,100%,.2);padding:12px 16px;background:rgba(0,0,0,.25);color:var(--text);font:inherit}.article-search-input{width:100%}:root[data-theme=light] .tag-search-input{background:hsla(0,0%,100%,.9);border:1px solid rgba(15,17,33,.12);color:#0e1320}.selected-tags{display:flex;flex-wrap:wrap;gap:8px}.tag-pill{border-radius:999px;border:1px solid hsla(0,0%,100%,.2);padding:6px 14px;background:var(--pill);color:var(--text);cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:border-color .2s ease,background .2s ease,color .2s ease}.tag-pill.selected{background:var(--accent);color:#0f1421}:root[data-theme=light] .tag-pill{border-color:rgba(15,17,33,.15)}:root[data-theme=light] .tag-pill.selected{color:#fff}.tag-suggestions{display:flex;flex-wrap:wrap;gap:10px;max-height:140px;overflow-y:auto;padding-right:6px;scrollbar-width:none;padding-top:10px}.tag-empty{margin:0;font-size:14px;color:var(--muted)}.pagination{display:flex;gap:8px;justify-content:flex-end;align-items:center;margin-top:24px}.search-highlight{background:rgba(49,109,240,.35);border-radius:4px;padding:0 2px}:root[data-theme=light] .search-highlight{background:rgba(49,109,240,.2)}.pagination button{border:1px solid var(--border);background:transparent;color:var(--text);padding:6px 12px;border-radius:12px;cursor:pointer;font:inherit;transition:background .2s ease,color .2s ease,border-color .2s ease}.pagination button.active{background:var(--accent);color:#0f1421;border-color:var(--accent)}.pagination button:disabled{opacity:.5;cursor:not-allowed}.newsletter-card{display:flex;flex-direction:column;gap:18px;border-radius:28px;border:1px solid var(--border);background:radial-gradient(circle at top,rgba(80,125,255,.15),transparent 60%),var(--card);box-shadow:var(--shadow-lg);margin:48px auto 0;padding:0 27px 27px}:root[data-theme=light] .newsletter-card{background:radial-gradient(circle at top,rgba(49,108,240,.12),transparent 60%),var(--glass)}.newsletter-form{display:flex;gap:12px}.newsletter-form input{flex:1 1;border-radius:999px;border:1px solid hsla(0,0%,100%,.2);padding:12px 16px;background:rgba(0,0,0,.25);color:var(--text);font:inherit}.feedback-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;border-radius:24px;border:1px solid var(--border);padding:24px 28px;background:radial-gradient(circle at top,rgba(80,125,255,.12),transparent 60%),var(--card);box-shadow:var(--shadow-md);min-height:120px;margin:48px auto 0}.feedback-copy{max-width:460px}.feedback-copy .eyebrow{margin-bottom:6px}:root[data-theme=light] .feedback-panel{background:radial-gradient(circle at top,rgba(49,108,240,.1),transparent 60%),var(--glass)}.feedback-panel,.newsletter-card{max-width:720px;width:100%}.feedback-stack{display:flex;flex-direction:column;align-items:center;margin-top:32px}.feedback-stack>*{width:100%}@media (max-width:640px){.feedback-panel{flex-direction:column;align-items:flex-start}}:root[data-theme=light] .newsletter-form input{background:hsla(0,0%,100%,.9);border:1px solid rgba(15,17,33,.12);color:#0e1320}.newsletter-error,.newsletter-success{margin:0;font-size:14px}.newsletter-success{color:#6be495}.newsletter-error{color:#ff7d7d}.blog-article-page .container{max-width:1200px}.article-layout{display:grid;grid-template-columns:1fr;grid-gap:32px;gap:32px;align-items:flex-start}.article-layout.article-layout--with-toc{grid-template-columns:minmax(230px,270px) minmax(0,1fr)}.article-content{min-width:0}.toc-panel{border:1px solid var(--border);padding:16px;background:radial-gradient(circle at top,rgba(80,125,255,.15),transparent 60%),var(--card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-md);overflow:hidden;font-family:inherit;color:rgba(230,237,243,.8);display:flex;flex-direction:column}@media (min-width:1022px){.toc-panel{width:max-content;max-width:300px}}:root[data-theme=light] .toc-panel{background:radial-gradient(circle at top,rgba(49,108,240,.12),transparent 60%),var(--glass);color:rgba(15,19,33,.75)}.toc-header{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:nowrap}.toc-header .eyebrow{font-size:15px;white-space:nowrap}.toc-toggle{border:1px solid var(--border);background:transparent;color:inherit;padding:4px 10px;border-radius:999px;font-size:13px;cursor:pointer;background:hsla(0,0%,100%,.07);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.toc-list{margin-top:12px;overflow-y:auto;flex:1 1;min-height:0;padding-right:4px;-ms-overflow-style:none;scrollbar-width:none}.toc-list::-webkit-scrollbar{display:none}.toc-list ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.toc-item button{background:none;color:inherit;text-align:left;padding:6px 10px;width:100%;font-size:clamp(15px,1.3vw,16px);cursor:pointer;border:none;border-left:2px solid transparent;transition:border-color .2s ease,color .2s ease;font-family:inherit}.toc-item.level-3 button{padding-left:20px;font-size:clamp(14px,1.2vw,15px)}.toc-item.level-2 button{font-weight:600}.toc-item.active button{border-left-color:var(--accent);color:var(--text)}.toc-item button:hover{border-left-color:rgba(80,125,255,.6)}.toc-panel.collapsed .toc-list{display:none}.toc-desktop{position:-webkit-sticky;position:sticky;top:150px;max-height:410px;margin-top:100px;margin-left:-40px;border-radius:15px;min-height:0}@media (max-width:1400px){.toc-desktop{margin-left:-40px}}@media (max-width:1250px){.toc-desktop{margin-left:-30px}}.toc-mobile{position:relative;top:0;width:100%;margin:24px 0}@media (max-width:1023px){.article-layout{grid-template-columns:1fr}.toc-panel{position:relative;top:auto;max-height:none;margin-top:0;border-radius:15px}.toc-list{max-height:240px;flex:unset}}@media (max-width:640px){.blog-article-page .code-block,.blog-article-page .container,.blog-article-page .mdx-body,.blog-article-page img,.blog-article-page pre,.blog-article-page table{max-width:100%;width:100%}.blog-article-page{padding:0}}.blog-article-page h1{margin-bottom:16px;font-size:clamp(32px,4vw,42px)}.blog-article-meta{display:flex;gap:18px;color:var(--muted);font-size:14px;margin-bottom:24px}.back-row{margin:24px 0}.article-tags{text-transform:uppercase;letter-spacing:.08em;font-size:12px;color:var(--muted)}.back-link{display:inline-flex;align-items:center;gap:8px;color:var(--accent);text-decoration:none;font-weight:600}.article-cover{width:100%;border-radius:28px;margin:30px 0;padding-top:46%;background-size:cover;background-position:50%;border:1px solid var(--border);box-shadow:var(--shadow-lg)}.mdx-body{display:flex;flex-direction:column;gap:0;line-height:1.5;font-size:20px;position:relative}.blog-article-page .mdx-body{background:rgba(8,11,19,.95);border-radius:36px;border:1px solid hsla(0,0%,100%,.07);padding:clamp(28px,5vw,64px) clamp(24px,5vw,72px);margin-top:24px}:root[data-theme=light] .blog-article-page .mdx-body{background:hsla(0,0%,100%,.97);border-color:rgba(15,23,42,.08)}@media (max-width:640px){.mdx-body{font-size:17px;line-height:1.6}}code{font-size:14px;font-family:JetBrains Mono,Fira Code,Menlo,Consolas,monospace}.mdx-body strong{font-weight:600}.mdx-body em{color:#768ef4;font-style:italic}.mdx-body :not(pre)>code{display:inline-flex;align-items:center;padding:2px 8px;border-radius:8px;background:var(--inline-code-bg);color:var(--inline-code-text);font-size:.9em;overflow-wrap:anywhere}.mdx-math-inline{display:inline-flex;align-items:center;margin:0 2px}.mdx-math-block{width:100%;overflow-x:auto;border-radius:18px;background:hsla(0,0%,100%,.04);border:1px solid var(--border);margin:10px 0;padding-left:12px;padding-right:12px;-ms-overflow-style:none;scrollbar-width:none}.mdx-math-block::-webkit-scrollbar{display:none}:root[data-theme=light] .mdx-math-block{background:rgba(0,0,0,.04)}:root[data-theme=light] .mdx-body h2{color:#1f2538}:root[data-theme=light] .mdx-body h3{color:#2a3146}:root[data-theme=light] .mdx-body h4{color:#353c51}.mdx-body a{color:var(--accent);font-weight:600;text-decoration:underline;-webkit-text-decoration-color:rgba(122,162,247,.6);text-decoration-color:rgba(122,162,247,.6);text-decoration-thickness:2px;text-underline-offset:3px;transition:color .2s var(--ease-out),-webkit-text-decoration-color .2s var(--ease-out);transition:color .2s var(--ease-out),text-decoration-color .2s var(--ease-out);transition:color .2s var(--ease-out),text-decoration-color .2s var(--ease-out),-webkit-text-decoration-color .2s var(--ease-out)}.mdx-body a:hover{color:var(--accent-3);-webkit-text-decoration-color:hsla(35,88%,72%,.8);text-decoration-color:hsla(35,88%,72%,.8)}.mdx-callout{display:flex;gap:16px;align-items:flex-start;padding:18px 20px;margin:24px 0;border-radius:18px;border:1px solid var(--border);background:var(--card)}.mdx-callout-icon{width:38px;height:38px;border-radius:60px;display:inline-flex;align-items:center;justify-content:center;background:hsla(0,0%,100%,.06);color:var(--callout-icon-color);flex-shrink:0}.mdx-callout-icon-sprite{width:20px;height:20px;display:inline-block;background-color:currentColor;mask-repeat:no-repeat;mask-position:center;mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain}.mdx-callout-icon-note{mask-image:url(/icons/callouts/note.svg);-webkit-mask-image:url(/icons/callouts/note.svg)}.mdx-callout-icon-info{mask-image:url(/icons/callouts/info.svg);-webkit-mask-image:url(/icons/callouts/info.svg)}.mdx-callout-icon-tip{mask-image:url(/icons/callouts/tip.svg);-webkit-mask-image:url(/icons/callouts/tip.svg)}.mdx-callout-icon-warning{mask-image:url(/icons/callouts/warning.svg);-webkit-mask-image:url(/icons/callouts/warning.svg)}.mdx-callout-icon-curiosity{mask-image:url(/icons/callouts/curiosity.svg);-webkit-mask-image:url(/icons/callouts/curiosity.svg)}.mdx-callout-icon-related{mask-image:url(/icons/callouts/related.svg);-webkit-mask-image:url(/icons/callouts/related.svg)}.mdx-callout-body{display:flex;flex-direction:column;gap:10px}.mdx-callout-body p{margin:0}.mdx-callout-body ol,.mdx-callout-body ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px}.mdx-callout-title{font-size:14px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--callout-title-color)}.mdx-callout-note{background:var(--callout-note-bg);border-color:var(--callout-note-border)}.mdx-callout-note .mdx-callout-icon{background:rgba(122,162,247,.6)}.mdx-callout-info{background:var(--callout-info-bg);border-color:var(--callout-info-border)}.mdx-callout-info .mdx-callout-icon{background:rgba(88,198,255,.6)}.mdx-callout-tip{background:var(--callout-tip-bg);border-color:var(--callout-tip-border)}.mdx-callout-tip .mdx-callout-icon{background:hsla(92,28%,65%,.6)}.mdx-callout-warning{background:var(--callout-warning-bg);border-color:var(--callout-warning-border)}.mdx-callout-warning .mdx-callout-icon{background:hsla(0,100%,79%,.6)}.mdx-callout-curiosity{background:var(--callout-curiosity-bg);border-color:var(--callout-curiosity-border)}.mdx-callout-curiosity .mdx-callout-icon{background:rgba(158,137,255,.24);color:#101011}.mdx-callout-related{background:var(--callout-related-bg);border-color:var(--callout-related-border)}.mdx-callout-related .mdx-callout-icon{background:rgba(90,118,168,.6)}@media (max-width:640px){.mdx-callout{flex-direction:column;padding:16px}.mdx-callout-icon{width:34px;height:34px}}.mdx-body h2,.mdx-body h3,.mdx-body h4{margin-top:24px;margin-bottom:0}.mdx-body h2{color:#c8cedf;font-weight:600;letter-spacing:-.015em}.mdx-body h3{color:#aab2c9;font-weight:600}.mdx-body h4{color:#8b94b1;font-weight:600;letter-spacing:.05em}.mdx-body h5{color:#8aa2c2;font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin-bottom:0;margin-top:10px}.mdx-body ol,.mdx-body ul{padding-left:24px;display:flex;flex-direction:column;gap:20px}.mdx-body blockquote{border-left:3px solid var(--accent);padding-left:16px;color:var(--muted);font-style:italic}.mdx-body pre{background:rgba(0,0,0,.35);border-radius:16px;padding:10px;overflow-x:auto;border:1px solid var(--border);white-space:pre-wrap;word-break:break-word;-ms-overflow-style:none;scrollbar-width:none}.mdx-body pre::-webkit-scrollbar{display:none}:root[data-theme=light] .mdx-body pre{background:rgba(0,0,0,.05)}.code-block{position:relative;margin:8px 0 16px}.code-block pre{margin:0;line-height:1.5}:root[data-theme=light] pre code.hljs{display:block;overflow-x:auto;padding:1em;background-color:unset}:root[data-theme=dark] pre code.hljs{background-color:unset}:root[data-theme=light] code.hljs{padding:3px 5px}:root[data-theme=light] .hljs{color:#383a42;background:#fafafa}:root[data-theme=light] .hljs-comment,:root[data-theme=light] .hljs-quote{color:#a0a1a7;font-style:italic}:root[data-theme=light] .hljs-doctag,:root[data-theme=light] .hljs-formula,:root[data-theme=light] .hljs-keyword{color:#a626a4}:root[data-theme=light] .hljs-deletion,:root[data-theme=light] .hljs-name,:root[data-theme=light] .hljs-section,:root[data-theme=light] .hljs-selector-tag,:root[data-theme=light] .hljs-subst{color:#e45649}:root[data-theme=light] .hljs-literal{color:#0184bb}:root[data-theme=light] .hljs-addition,:root[data-theme=light] .hljs-attribute,:root[data-theme=light] .hljs-meta .hljs-string,:root[data-theme=light] .hljs-regexp,:root[data-theme=light] .hljs-string{color:#50a14f}:root[data-theme=light] .hljs-attr,:root[data-theme=light] .hljs-number,:root[data-theme=light] .hljs-selector-attr,:root[data-theme=light] .hljs-selector-class,:root[data-theme=light] .hljs-selector-pseudo,:root[data-theme=light] .hljs-template-variable,:root[data-theme=light] .hljs-type,:root[data-theme=light] .hljs-variable{color:#986801}:root[data-theme=light] .hljs-bullet,:root[data-theme=light] .hljs-link,:root[data-theme=light] .hljs-meta,:root[data-theme=light] .hljs-selector-id,:root[data-theme=light] .hljs-symbol,:root[data-theme=light] .hljs-title{color:#4078f2}:root[data-theme=light] .hljs-built_in,:root[data-theme=light] .hljs-class .hljs-title,:root[data-theme=light] .hljs-title.class_{color:#c18401}:root[data-theme=light] .hljs-emphasis{font-style:italic}:root[data-theme=light] .hljs-strong{font-weight:700}:root[data-theme=light] .hljs-link{text-decoration:underline}.code-copy{position:absolute;top:10px;right:12px;padding:6px;border-radius:999px;border:1px solid hsla(0,0%,100%,.2);background:hsla(0,0%,100%,.08);color:var(--text);cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background .2s ease,color .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:6px}:root[data-theme=light] .code-copy{border:1px solid rgba(15,17,33,.1);background:rgba(15,17,33,.05)}.code-copy:hover{background:var(--accent);color:#0f1421}.code-copy svg{width:16px;height:16px}.code-copied{font-size:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.mdx-inline-image{width:100%;border-radius:20px}.mdx-inline-image-clickable{cursor:pointer}.mdx-inline-image-inline{width:auto;max-width:100%}.mdx-body figure{width:100%;max-width:768px;margin:15px auto}.mdx-body figure>span{display:block!important;width:100%!important;border-radius:24px;overflow:hidden}.mdx-body figure.mdx-figure-inline{width:auto;max-width:none;text-align:center}.mdx-body figure.mdx-figure-inline>span{width:auto!important;display:inline-block!important;border-radius:24px;overflow:hidden}.mdx-body figure.mdx-figure-inline .mdx-inline-image{width:auto}.mdx-image-modal{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(7,11,20,.9);cursor:zoom-out}.mdx-image-modal-content{position:relative;width:min(1100px,100%);max-height:calc(100vh - 120px);display:flex;flex-direction:column;gap:16px;padding:24px;border-radius:24px;background:rgba(10,14,23,.85);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:auto}.mdx-image-modal-media{width:100%;height:auto;border-radius:22px;object-fit:contain;box-shadow:0 8px 22px rgba(2,4,10,.25)}.mdx-image-modal-caption{text-align:center;font-size:.95rem;color:rgba(230,237,243,.85)}:root[data-theme=light] .mdx-image-modal{background:rgba(240,243,250,.92)}:root[data-theme=light] .mdx-image-modal-content{background:hsla(0,0%,100%,.9)}:root[data-theme=light] .mdx-image-modal-caption{color:rgba(16,19,33,.7)}.mdx-image-modal-close{position:absolute;top:12px;right:12px;width:40px;height:40px;border-radius:999px;border:1px solid hsla(0,0%,100%,.3);background:rgba(0,0,0,.4);color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}:root[data-theme=light] .mdx-image-modal-close{background:hsla(0,0%,100%,.9);color:rgba(16,19,33,.8);border-color:rgba(16,19,33,.2)}.mdx-image-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:24px;gap:24px;margin:5px 0}.mdx-image-grid-item{margin:0;width:100%;text-align:left}.mdx-image-grid-item>span{display:block!important;width:100%!important}.mdx-image-grid-item figcaption{margin-top:10px;text-align:left;font-size:.95rem;color:rgba(230,237,243,.85)}:root[data-theme=light] .mdx-image-grid-item figcaption{color:rgba(15,20,33,.7)}@media (max-width:770px){.mdx-body figure{max-width:100%;margin-left:0;margin-right:0}}figcaption{text-align:center;font-size:16px;margin-top:8px;color:rgba(230,237,243,.7)}:root[data-theme=light] figcaption{color:rgba(16,19,33,.6)}hr{border:none;border-top:2px solid var(--border);width:80%;margin:30px auto;opacity:.65;align-items:center}.mdx-body table{border-collapse:collapse;border-radius:16px;overflow:hidden;border:1px solid var(--border);margin-top:15px;margin-bottom:15px}.table-scroll{width:100%;overflow-x:auto;border-radius:18px}.table-scroll::-webkit-scrollbar{height:6px}.table-scroll::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:999px}.table-scroll{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}.mdx-body td,.mdx-body th{padding:12px 16px;border-bottom:1px solid var(--border);min-width:180px}.mdx-body th{background:hsla(0,0%,100%,.05);text-align:left}.mdx-body tr:nth-child(2n) td{background:hsla(0,0%,100%,.02)}@media (max-width:780px){.newsletter-form{flex-direction:column}.blog-card-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.blog-topbar{flex-direction:column;align-items:flex-start}.blog-top-controls{flex-wrap:wrap}}@media (max-width:650px){.blog-card-grid{grid-template-columns:1fr}}@media (min-width:1200px){.blog-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:700px){.code-block pre{white-space:pre;overflow-x:auto;overflow-y:hidden;max-width:100%}.table-scroll{overflow-x:auto}}.blog-tag{border:none;border-radius:999px;padding:6px 14px;background:hsla(0,0%,100%,.08);color:var(--text);cursor:pointer;transition:color .2s ease,border-color .2s ease,background .2s ease}.blog-tag:hover:not(:disabled){color:var(--accent);border-color:var(--accent);background:rgba(122,162,247,.18)}:root[data-theme=light] .blog-tag{border:1px solid rgba(17,24,39,.15);background:rgba(49,109,240,.08);color:#0f172a}:root[data-theme=light] .blog-tag:hover:not(:disabled){color:#1d4ed8;border-color:#1d4ed8;background:rgba(49,109,240,.18)}.cat-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:clamp(2rem,6vw,5rem);background:var(--bg);position:relative;overflow:hidden;isolation:isolate}.cat-page__glow{position:absolute;inset:5% auto auto 50%;width:clamp(280px,50vw,520px);aspect-ratio:1;background:radial-gradient(circle,rgba(122,162,247,.4),rgba(11,14,18,0));transform:translateX(-50%);filter:blur(45px);opacity:.8;z-index:0}.cat-card{width:min(640px,100%);background:linear-gradient(145deg,rgba(16,20,33,.8),rgba(8,10,18,.9));border:1px solid hsla(0,0%,100%,.08);border-radius:clamp(24px,5vw,32px);padding:clamp(2rem,5vw,3.25rem);text-align:center;position:relative;z-index:1;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}:root[data-theme=light] .cat-card{background:hsla(0,0%,100%,.92);border:1px solid rgba(15,20,33,.08)}.cat-eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:13px;margin-bottom:14px;color:var(--muted)}.cat-card h1{margin-bottom:16px;font-size:clamp(2rem,3vw,2.8rem);line-height:1.1}.cat-copy{margin:0 auto;max-width:46ch;color:rgba(230,237,243,.9);font-size:1.05rem}:root[data-theme=light] .cat-copy{color:rgba(12,17,32,.75)}.cat-illustration{width:clamp(220px,60vw,320px);height:auto;margin:clamp(1.5rem,4vw,2.75rem) auto 0;display:block;filter:drop-shadow(0 25px 65px rgba(5,6,13,.6))}.cat-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:clamp(2rem,4vw,3rem)}.cat-footnote{margin-top:18px;font-size:.85rem;color:rgba(230,237,243,.7)}:root[data-theme=light] .cat-footnote{color:rgba(12,17,32,.55)}.cat-footnote code{padding:2px 6px;border-radius:6px;background:var(--inline-code-bg);border:1px solid var(--inline-code-border);color:var(--inline-code-text)}@media (max-width:640px){.cat-card{padding:2rem}.cat-actions .btn{width:100%;justify-content:center}}