cap-widget{--cap-background:$bg-secondary;--cap-border-color:rgba(255,255,255,8%);--cap-widget-width:100%;width:100%;--cap-color:$fg-primary;--cap-checkbox-background:$accent;--cap-spinner-color:#FFF;--cap-spinner-background-color:$accent}*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;overflow:hidden}body{font-family:jetbrains mono,fira code,courier new,monospace;background-color:#0d0d0f;color:#eaeaea;display:flex;flex-direction:column}body::before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 15% 20%,rgba(139,92,246,6%) 0%,transparent 40%),radial-gradient(circle at 85% 80%,rgba(16,185,129,4%) 0%,transparent 40%);pointer-events:none;z-index:0}body:not(.fullscreen-mode){align-items:center;justify-content:center;padding:24px}body.panic{padding:0;align-items:flex-start;height:initial}body.panic span{background-color:#0100ab}.hidden{display:none!important}.hidden-text{color:transparent!important}.spin{animation-name:spin;animation-duration:4e3ms;animation-iteration-count:infinite;animation-timing-function:linear}.loader{background:linear-gradient(90deg,rgba(255,255,255,.0666666667) 33%,rgba(255,255,255,.3333333333) 50%,rgba(255,255,255,.0666666667) 66%)#26262a;background-size:300% 100%;animation:loader 1s infinite linear}.failed{background:#ef4444!important}.success{background:#10b981!important}@keyframes loader{0%{background-position:100%}}.text-counter{text-align:right!important;color:#a1a1aa!important;font-size:12px}.terminal-window{width:100vw;height:100vh;background-color:#16161a;display:flex;flex-direction:column;position:absolute;z-index:1}.terminal-window .draggable{display:none}.terminal-window.windowed{width:70vw;height:75vh;min-width:420px;min-height:320px;margin:0;position:absolute;border-radius:18px;box-shadow:0 8px 32px rgba(0,0,0,.5),0 0 24px rgba(139,92,246,.15);overflow:hidden;border:1px solid rgba(255,255,255,.12)}.terminal-window.windowed .draggable{touch-action:none;display:block;position:absolute;font-size:.1px}.terminal-window.windowed .draggable.n,.terminal-window.windowed .draggable.s{width:100%;height:2px;left:0}.terminal-window.windowed .draggable.n{cursor:n-resize;top:0}.terminal-window.windowed .draggable.s{cursor:s-resize;bottom:0}.terminal-window.windowed .draggable.e,.terminal-window.windowed .draggable.w{width:2px;height:100%}.terminal-window.windowed .draggable.e{cursor:e-resize;top:0;right:0}.terminal-window.windowed .draggable.w{cursor:w-resize;top:0;left:0}.terminal-window.windowed .draggable.ne,.terminal-window.windowed .draggable.se,.terminal-window.windowed .draggable.sw,.terminal-window.windowed .draggable.nw{height:10px;width:10px}.terminal-window.windowed .draggable.ne{cursor:ne-resize;right:0;top:0}.terminal-window.windowed .draggable.se{cursor:se-resize;right:0;bottom:0}.terminal-window.windowed .draggable.sw{cursor:sw-resize;left:0;bottom:0}.terminal-window.windowed .draggable.nw{cursor:nw-resize;left:0;top:0}body:not(.fullscreen-mode) .terminal-window.windowed{top:40px;left:40px}.title-bar{flex-shrink:0;background:rgba(22,22,26,.75);backdrop-filter:blur(20px)saturate(180%);-webkit-backdrop-filter:blur(20px)saturate(180%);border:1px solid rgba(255,255,255,8%);padding:12px 16px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,8%);user-select:none}.terminal-window.windowed .title-bar{cursor:grab}.terminal-window.windowed .title-bar.dragging{cursor:grabbing}.window-controls{display:flex;gap:8px;align-items:center}.control{width:13px;height:13px;border-radius:50%;cursor:pointer;border:none;transition:filter .15s cubic-bezier(.4,0,.2,1);transition:box-shadow .15s cubic-bezier(.4,0,.2,1)}.control:hover{filter:brightness(1.2)}.control.close{background-color:#ff5f57}.control.close:hover{box-shadow:0 0 12px rgba(255,95,87,.5)}.control.minimize{background-color:#febc2e}.control.minimize:hover{box-shadow:0 0 12px rgba(254,188,46,.5)}.control.maximize{background-color:#28c840}.control.maximize:hover{box-shadow:0 0 12px rgba(40,200,64,.5)}.control.disabled{opacity:.4;cursor:not-allowed;pointer-events:none;filter:grayscale(60%)}.window-title{font-size:12px;font-weight:500;color:#71717a;letter-spacing:.3px;pointer-events:none}.window-title strong{color:#8b5cf6;font-weight:600}.title-spacer{width:49px;flex-shrink:0}.tabs{flex-shrink:0;display:flex;background-color:#16161a;border-bottom:1px solid rgba(255,255,255,8%);padding:8px 8px 0;gap:4px}.tab{padding:12px 16px;color:#71717a;cursor:pointer;font-size:12.5px;font-weight:500;border-radius:6px 6px 0 0;white-space:nowrap;flex-shrink:0;position:relative;transition:color .25s cubic-bezier(.4,0,.2,1);transition:background-color .25s cubic-bezier(.4,0,.2,1)}.tab:hover{color:#a1a1aa;background-color:rgba(255,255,255,3%);text-decoration:none}.tab.active{color:#eaeaea;background-color:#1e1e24}.tab.active::after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:#8b5cf6;border-radius:999px 999px 0 0;box-shadow:0 0 8px rgba(139,92,246,.4)}.content-area{flex:1;padding:32px;background-color:#1e1e24;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.12)transparent}.content-area::-webkit-scrollbar{width:6px;height:6px}.content-area::-webkit-scrollbar-track{background:0 0}.content-area::-webkit-scrollbar-thumb{background-color:rgba(255,255,255,.12);border-radius:999px}.content-area::-webkit-scrollbar-thumb:hover{background-color:#8b5cf6}.content-area::-webkit-scrollbar{width:6px}.content-area figure{padding:1em 0}.content-area figure img{margin:auto;display:block;max-width:100%}.content-area figure figcaption{text-align:center}.content-area figure figcaption h4{font-style:italic;color:#71717a}.content-area .panel p{text-align:justify}.panel{display:block;animation:fadeIn .4s cubic-bezier(.4,0,.2,1);max-width:960px;margin:0 auto}@keyframes fadeIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}h1{font-size:26px;font-weight:700;margin-bottom:8px;color:#8b5cf6;letter-spacing:-.3px}h2{font-size:19px;font-weight:600;margin-bottom:12px;color:#eaeaea}h3{font-size:15px;font-weight:600;margin-bottom:12px;margin-top:24px;color:#a1a1aa;text-transform:uppercase;letter-spacing:.8px}p{line-height:1.65;margin-bottom:16px;color:#a1a1aa;font-size:14px}.prompt{color:#10b981;font-size:13px;font-weight:500;margin-bottom:20px;opacity:.85}.prompt span{color:#71717a}.command{color:#eaeaea;font-weight:600}pre{background-color:#16161a;padding:20px;border-radius:10px;border:1px solid rgba(255,255,255,8%);border-left:3px solid #8b5cf6;margin:20px 0;overflow-x:auto;font-size:13px;line-height:1.6;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.12)transparent}pre::-webkit-scrollbar{width:6px;height:6px}pre::-webkit-scrollbar-track{background:0 0}pre::-webkit-scrollbar-thumb{background-color:rgba(255,255,255,.12);border-radius:999px}pre::-webkit-scrollbar-thumb:hover{background-color:#8b5cf6}pre::-webkit-scrollbar{height:4px}pre.warning{border:1px solid rgba(255,255,255,8%);box-shadow:0 0 5px #f59e0b,0 0 10px #f59e0b,0 0 20px #f59e0b}pre.danger{border:1px solid rgba(255,255,255,8%);animation:pre-danger 1.5s infinite;box-shadow:0 0 5px #ef4444,0 0 10px #ef4444,0 0 20px #ef4444}@keyframes pre-danger{0%,100%{box-shadow:0 0 5px #ef4444,0 0 10px #ef4444,0 0 15px #ef4444}50%{box-shadow:0 0 10px #ef4444,0 0 20px #ef4444,0 0 35px #ef4444}}code{font-family:jetbrains mono,fira code,courier new,monospace}a{color:#a78bfa;text-decoration:none;transition:color .25s cubic-bezier(.4,0,.2,1)}a:hover{color:#8b5cf6;text-decoration:underline}.footer{margin-top:32px;padding-top:16px;border-top:1px solid rgba(255,255,255,8%);font-size:11.5px;color:#71717a;letter-spacing:.2px;display:block}.footer span:last-of-type{float:right}fieldset{border:none}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:8px;color:#a1a1aa;font-size:13px;font-weight:500;letter-spacing:.2px}.form-group input,.form-group textarea{width:100%;padding:12px 16px;background-color:#16161a;border:1px solid rgba(255,255,255,8%);color:#eaeaea;border-radius:10px;font-family:inherit;font-size:13.5px;transition:border-color .25s cubic-bezier(.4,0,.2,1);transition:box-shadow .25s cubic-bezier(.4,0,.2,1)}.form-group input::placeholder,.form-group textarea::placeholder{color:#71717a;opacity:.5}.form-group input:focus,.form-group textarea:focus{border-color:rgba(139,92,246,.3);outline:none;box-shadow:0 0 0 3px rgba(139,92,246,.12)}.form-group textarea{resize:vertical;min-height:120px}.btn-send{width:100%;background-color:#8b5cf6;color:#fff;padding:12px 24px;border:none;border-radius:10px;cursor:pointer;font-family:inherit;font-size:13.5px;font-weight:600;letter-spacing:.3px;transition:transform .25s cubic-bezier(.34,1.56,.64,1);transition:background-color .25s cubic-bezier(.4,0,.2,1);transition:box-shadow .25s cubic-bezier(.4,0,.2,1)}.btn-send:hover{background-color:#a78bfa;box-shadow:0 4px 16px rgba(0,0,0,.4),0 0 24px rgba(139,92,246,.15);transform:translateY(-1px)}.btn-send.disabled{pointer-events:none}ul,ol{margin-left:20px;margin-bottom:16px;color:#a1a1aa;font-size:14px}ul a,ol a{color:#a1a1aa;transition:color .25s cubic-bezier(.4,0,.2,1)}ul a:hover,ol a:hover{color:#a78bfa}ul strong,ol strong{color:#a78bfa;font-weight:600}li{margin-bottom:8px;line-height:1.6}.col-2{display:grid;grid-template-columns:1fr 1.2fr;gap:32px;margin:24px 0}@media(max-width:900px){.col-2{grid-template-columns:1fr;gap:24px}}@media(max-width:768px){.terminal-window.windowed{width:95vw;height:85vh;min-width:unset;left:2.5vw!important;top:5vh!important}.content-area{padding:20px}h1{font-size:22px}h2{font-size:17px}.tab{padding:8px 12px;font-size:11.5px}.title-bar{padding:8px 12px}}@media(max-width:480px){.content-area{padding:16px}pre{padding:16px;font-size:12px}}@font-face{font-family:jetbrains mono;font-style:normal;font-weight:400;font-stretch:100%;src:url(/fonts/jetbrains-mono/jetbrains-mono-latin-400-normal.woff2)format("woff2"),url(/fonts/jetbrains-mono/jetbrains-mono-latin-400-normal.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:jetbrains mono;font-style:normal;font-weight:500;font-stretch:100%;src:url(/fonts/jetbrains-mono/jetbrains-mono-latin-500-normal.woff2)format("woff2"),url(/fonts/jetbrains-mono/jetbrains-mono-latin-500-normal.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:jetbrains mono;font-style:normal;font-weight:700;font-stretch:100%;src:url(/fonts/jetbrains-mono/jetbrains-mono-latin-700-normal.woff2)format("woff2"),url(/fonts/jetbrains-mono/jetbrains-mono-latin-700-normal.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.hero{display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:center;margin-bottom:32px;padding:24px;background-color:#16161a;border-radius:14px;border:1px solid rgba(255,255,255,8%)}.hero.big{padding:5rem 24px;grid-template-columns:1fr;border:1px solid #000;background-image:linear-gradient(rgba(0,0,0,.7),rgba(0,0,0,.7)),var(--hero-bg);background-position:50%;background-repeat:no-repeat;background-size:cover}.hero.center{text-align:center}.hero.center .content p{text-align:center}.hero .avatar-container{flex-shrink:0}.hero .avatar-container .avatar{width:120px;height:120px;border-radius:14px;object-fit:cover;border:3px solid #8b5cf6;box-shadow:0 4px 16px rgba(139,92,246,.3)}.hero .content h1{font-size:32px;margin-bottom:8px;color:#eaeaea;letter-spacing:-.5px}.hero .content h1.tagline{font-size:30px}.hero .content h2{font-size:18px;color:#8b5cf6;margin-bottom:12px;font-weight:500}.hero .content p{text-align:justify;font-size:14px;line-height:1.7;color:#a1a1aa;margin-bottom:16px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:32px}.stats-grid .stat-card{background-color:#16161a;border:1px solid rgba(255,255,255,8%);border-radius:10px;padding:20px;text-align:center;transition:all .25s cubic-bezier(.4,0,.2,1)}.stats-grid .stat-card .stat-icon{font-size:32px;margin-bottom:8px}.stats-grid .stat-card .stat-number{font-size:36px;font-weight:700;color:#8b5cf6;line-height:1;margin-bottom:4px}.stats-grid .stat-card .stat-label{font-size:13px;color:#71717a;text-transform:uppercase;letter-spacing:.5px}.competencies-section{margin-bottom:32px}.competencies-section h3{color:#a1a1aa;margin-bottom:20px;font-size:14px}.competencies-section .skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.competencies-section .skills-grid .skill-category{background-color:#16161a;border:1px solid rgba(255,255,255,8%);border-radius:10px;padding:20px}.competencies-section .skills-grid .skill-category h4{color:#eaeaea;font-size:15px;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,8%)}.competencies-section .skills-grid .skill-category ul{list-style:none;margin:0;padding:0}.competencies-section .skills-grid .skill-category ul li{padding:4px 0;color:#a1a1aa;font-size:13px;position:relative;padding-left:12px}.competencies-section .skills-grid .skill-category ul li::before{content:"›";position:absolute;left:0;color:#8b5cf6;font-weight:700}.featured-section{margin-bottom:32px}.featured-section h3{color:#a1a1aa;margin-bottom:20px;font-size:14px}.featured-section .projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.featured-section .projects-grid a.project-card{cursor:pointer;text-decoration:none}.featured-section .projects-grid .project-card{background-color:#16161a;border:1px solid rgba(255,255,255,8%);border-radius:10px;padding:20px;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.featured-section .projects-grid .project-card::before{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background-color:#8b5cf6;opacity:0;transition:opacity .25s cubic-bezier(.4,0,.2,1)}.featured-section .projects-grid .project-card:hover{border-color:#8b5cf6;transform:translateY(-4px);box-shadow:0 8px 24px rgba(139,92,246,.2)}.featured-section .projects-grid .project-card:hover::before{opacity:1}.featured-section .projects-grid .project-card div.col-2{margin:0}.featured-section .projects-grid .project-card div.col-2 p:last-of-type{text-align:right}.featured-section .projects-grid .project-card .project-icon{font-size:32px;margin-bottom:12px}.featured-section .projects-grid .project-card h4{color:#eaeaea;font-size:16px;margin-bottom:8px}.featured-section .projects-grid .project-card p{font-size:13px;color:#71717a;margin-bottom:12px;line-height:1.6}.featured-section .projects-grid .project-card .project-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:12px}.featured-section .projects-grid .project-card .project-tags .tag{background-color:rgba(139,92,246,.12);color:#a78bfa;padding:4px 8px;border-radius:6px;font-size:11px;font-weight:500}.featured-section .projects-grid .project-card .project-link{color:#8b5cf6;text-decoration:none;font-size:13px;font-weight:500;transition:color .25s cubic-bezier(.4,0,.2,1)}.featured-section .projects-grid .project-card .project-link:hover{color:#a78bfa}.certifications-section{margin-bottom:32px}.certifications-section h3{color:#a1a1aa;margin-bottom:20px;font-size:14px}.certifications-section .certifications-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.certifications-section .certifications-list .cert-item{display:flex;align-items:center;gap:12px;background-color:#16161a;border:1px solid rgba(255,255,255,8%);border-radius:10px;padding:16px;transition:all .25s cubic-bezier(.4,0,.2,1)}.certifications-section .certifications-list .cert-item[data-not-disclosed="1"]:hover{background-color:rgba(16,185,129,.12);border:1px solid rgba(255,255,255,.12)}.certifications-section .certifications-list .cert-item[data-not-disclosed="1"]:hover *{display:none}.certifications-section .certifications-list .cert-item[data-not-disclosed="1"]:hover:after{content:"This certificate is not publicly available";text-align:center;color:#71717a;font-size:14px}.certifications-section .certifications-list .cert-item:hover{border-color:#8b5cf6;box-shadow:0 4px 16px rgba(139,92,246,.15);text-decoration:none}.certifications-section .certifications-list .cert-item .cert-icon{font-size:24px;flex-shrink:0}.certifications-section .certifications-list .cert-item .cert-details{flex:1}.certifications-section .certifications-list .cert-item .cert-details h4{color:#eaeaea;font-size:14px;margin-bottom:4px}.certifications-section .certifications-list .cert-item .cert-details p{color:#71717a;font-size:12px;margin-bottom:4px}.certifications-section .certifications-list .cert-item .cert-details .cert-issuer{color:#8b5cf6;font-size:11px;font-weight:500}.blog-preview-section{margin-bottom:32px}.blog-preview-section h3{color:#a1a1aa;margin-bottom:20px;font-size:14px}.blog-preview-section .blog-list .blog-item{display:flex;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,8%)}.blog-preview-section .blog-list .blog-item:last-child{border-bottom:none}.blog-preview-section .blog-list .blog-item .blog-date{color:#71717a;font-size:12px;font-family:jetbrains mono,fira code,courier new,monospace;flex-shrink:0;width:90px}.blog-preview-section .blog-list .blog-item .blog-title{color:#eaeaea;text-decoration:none;font-size:14px;flex:1;transition:color .25s cubic-bezier(.4,0,.2,1)}.blog-preview-section .blog-list .blog-item .blog-title:hover{color:#8b5cf6}.blog-preview-section .blog-list .blog-item .blog-read-time{color:#71717a;font-size:11px;white-space:nowrap}.cta-section{background:linear-gradient(135deg,rgba(139,92,246,.12) 0%,transparent 100%);border:1px solid rgba(139,92,246,.3);border-radius:14px;padding:32px;margin-bottom:24px;text-align:center}.cta-section .cta-content h3{color:#eaeaea;font-size:22px;margin-bottom:12px}.cta-section .cta-content p{color:#a1a1aa;font-size:14px;margin-bottom:20px;max-width:500px;margin-left:auto;margin-right:auto}.cta-section .cta-content .cta-buttons{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.cta-section .cta-content .cta-buttons .btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:10px;font-size:14px;font-weight:600;text-decoration:none;transition:transform .25s cubic-bezier(.34,1.56,.64,1);transition:background-color .25s cubic-bezier(.4,0,.2,1)}.cta-section .cta-content .cta-buttons .btn .btn-icon{font-size:16px}.cta-section .cta-content .cta-buttons .btn.btn-primary{background-color:#8b5cf6;color:#fff}.cta-section .cta-content .cta-buttons .btn.btn-primary:hover{background-color:#a78bfa;transform:translateY(-2px);box-shadow:0 4px 16px rgba(139,92,246,.4)}.cta-section .cta-content .cta-buttons .btn.btn-secondary{background-color:#1e1e24;color:#eaeaea;border:1px solid rgba(255,255,255,.12)}.cta-section .cta-content .cta-buttons .btn.btn-secondary:hover{border-color:#8b5cf6;background-color:#16161a}@media(max-width:768px){.hero-section{grid-template-columns:1fr;text-align:center}.hero-section .avatar-container{margin:0 auto}.stats-grid{grid-template-columns:repeat(2,1fr)}.skills-grid{grid-template-columns:1fr}.projects-grid{grid-template-columns:1fr}.certifications-list{grid-template-columns:1fr}.blog-list .blog-item{flex-direction:column;align-items:flex-start;gap:8px}.blog-list .blog-item .blog-date,.blog-list .blog-item .blog-read-time{width:auto}.cta-buttons{flex-direction:column;align-items:center}}