@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/build/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(/build/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/build/assets/jetbrains-mono-latin-600-normal-C8RAYTDA.woff2)format("woff2"),url(/build/assets/jetbrains-mono-latin-600-normal-BfsvjouI.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/build/assets/jetbrains-mono-latin-700-normal-BYuf6tUa.woff2)format("woff2"),url(/build/assets/jetbrains-mono-latin-700-normal-D3wTyLJW.woff)format("woff")}:root{--background:220 13% 12%;--foreground:220 13% 82%;--primary:180 100% 50%;--primary-foreground:220 13% 8%;--secondary:220 13% 18%;--secondary-foreground:220 13% 72%;--muted-foreground:220 13% 58%;--border:220 13% 22%;--vscode-titlebar:220 13% 10%;--vscode-sidebar:220 13% 14%;--vscode-editor:220 13% 12%;--vscode-tab-active:220 13% 12%;--vscode-tab-inactive:220 13% 16%;--vscode-statusbar:240 60% 40%;--vscode-activitybar:220 13% 10%;--vscode-line-number:220 13% 38%;--vscode-line-highlight:220 13% 15%;--neon-cyan:180 100% 50%;--neon-green:150 100% 50%;--neon-pink:330 100% 65%;--neon-yellow:50 100% 60%;--neon-orange:30 100% 58%;--neon-purple:270 100% 72%;--neon-blue:210 100% 64%;--syntax-keyword:210 100% 64%;--syntax-string:30 100% 58%;--syntax-function:50 100% 60%;--syntax-variable:180 100% 50%;--syntax-comment:220 13% 48%;--syntax-type:150 100% 50%;--syntax-number:270 100% 72%;--font-mono:"JetBrains Mono", ui-monospace, "Cascadia Code", "Fira Code", monospace;--gutter:3rem}*,:before,:after{box-sizing:border-box}html,body{height:100%}body{background:hsl(var(--background));color:hsl(var(--foreground));font-family:var(--font-mono);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;overflow:hidden}a{color:inherit}img{max-width:100%;height:auto;display:block}button{font:inherit;color:inherit}h1,h2,h3,p,ul,ol,figure{margin:0}[hidden]{display:none!important}:focus-visible{outline:1px solid hsl(var(--primary));outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:hsl(var(--primary));color:hsl(var(--primary-foreground));padding:.5rem .75rem;text-decoration:none;position:absolute;top:-3rem;left:.5rem}.skip-link:focus{top:.5rem}.text-foreground{color:hsl(var(--foreground))}.text-muted{color:hsl(var(--muted-foreground))}.text-primary{color:hsl(var(--primary))}.text-line{color:hsl(var(--vscode-line-number))}.text-neon-cyan{color:hsl(var(--neon-cyan))}.text-neon-green{color:hsl(var(--neon-green))}.text-neon-yellow{color:hsl(var(--neon-yellow))}.text-neon-orange{color:hsl(var(--neon-orange))}.text-neon-pink{color:hsl(var(--neon-pink))}.text-neon-blue{color:hsl(var(--neon-blue))}.text-neon-purple{color:hsl(var(--neon-purple))}.tk-keyword{color:hsl(var(--syntax-keyword))}.tk-string{color:hsl(var(--syntax-string))}.tk-function{color:hsl(var(--syntax-function))}.tk-variable{color:hsl(var(--syntax-variable))}.tk-comment{color:hsl(var(--syntax-comment));font-style:italic}.tk-type{color:hsl(var(--syntax-type))}.tk-number{color:hsl(var(--syntax-number))}.tk-punct{color:hsl(var(--foreground))}[data-color=cyan]{--accent:var(--neon-cyan)}[data-color=green]{--accent:var(--neon-green)}[data-color=yellow]{--accent:var(--neon-yellow)}[data-color=orange]{--accent:var(--neon-orange)}[data-color=pink]{--accent:var(--neon-pink)}[data-color=purple]{--accent:var(--neon-purple)}[data-color=blue]{--accent:var(--neon-blue)}.text-accent{color:hsl(var(--accent,var(--primary)))}.glow-cyan{text-shadow:0 0 7px hsl(var(--neon-cyan) / .8), 0 0 10px hsl(var(--neon-cyan) / .5), 0 0 21px hsl(var(--neon-cyan) / .3), 0 0 42px hsl(var(--neon-cyan) / .15)}.glow-green{text-shadow:0 0 7px hsl(var(--neon-green) / .8), 0 0 10px hsl(var(--neon-green) / .5), 0 0 21px hsl(var(--neon-green) / .3)}.glow-blue{text-shadow:0 0 7px hsl(var(--neon-blue) / .6), 0 0 14px hsl(var(--neon-blue) / .3)}.glow-pink,.glow-yellow,.glow-orange,.glow-purple{text-shadow:0 0 8px}.ide{flex-direction:column;height:100dvh;display:flex;overflow:hidden}.ide-main{flex:1;min-height:0;display:flex;position:relative}.ide-editor{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.titlebar{background:hsl(var(--vscode-titlebar));border-bottom:1px solid hsl(var(--border));height:2rem;color:hsl(var(--muted-foreground));-webkit-user-select:none;user-select:none;flex:none;justify-content:space-between;align-items:center;gap:1rem;padding:0 .75rem;font-size:12px;display:flex}.titlebar-menu{align-items:center;gap:.25rem;display:flex}.titlebar-menu .logo{color:hsl(var(--foreground));margin-right:.5rem;font-weight:600;text-decoration:none}.titlebar-menu button{cursor:pointer;color:inherit;background:0 0;border:0;padding:.15rem .4rem;font-size:12px}.titlebar-menu button:hover{background:hsl(var(--secondary));color:hsl(var(--foreground))}.titlebar-search{background:hsl(var(--secondary));border:1px solid hsl(var(--border));height:1.4rem;color:hsl(var(--muted-foreground));cursor:pointer;flex:0 26rem;justify-content:center;align-items:center;gap:.5rem;padding:0 .75rem;font-size:12px;display:flex}.titlebar-search:hover{border-color:hsl(var(--primary) / .5);color:hsl(var(--foreground))}.titlebar-search kbd,.kbd{border:1px solid hsl(var(--border));background:hsl(var(--background));padding:0 .3rem;font-family:inherit;font-size:10px}.window-dots{gap:.5rem;display:flex}.window-dots span{border-radius:50%;width:.75rem;height:.75rem}.window-dots span:first-child{background:hsl(var(--neon-green) / .6)}.window-dots span:nth-child(2){background:hsl(var(--neon-yellow) / .6)}.window-dots span:nth-child(3){background:hsl(var(--neon-pink) / .6)}.mobile-menu-btn{cursor:pointer;color:inherit;background:0 0;border:0;padding:.25rem;display:none}.activitybar{background:hsl(var(--vscode-activitybar));border-right:1px solid hsl(var(--border));flex-direction:column;flex:none;justify-content:space-between;width:3rem;padding:.25rem 0;display:flex}.activitybar nav,.activitybar .bottom{flex-direction:column;align-items:center;gap:2px;display:flex}.activity-btn{width:3rem;height:3rem;color:hsl(var(--muted-foreground));cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;text-decoration:none;transition:color .15s;display:flex;position:relative}.activity-btn:hover,.activity-btn.active{color:hsl(var(--foreground))}.activity-btn.active:before{content:"";background:hsl(var(--primary));width:2px;position:absolute;top:4px;bottom:4px;left:0}.activity-btn .badge{background:hsl(var(--primary));min-width:16px;height:16px;color:hsl(var(--primary-foreground));border-radius:8px;justify-content:center;align-items:center;padding:0 4px;font-size:9px;font-weight:700;display:flex;position:absolute;bottom:8px;right:8px}.explorer{background:hsl(var(--vscode-sidebar));border-right:1px solid hsl(var(--border));flex-direction:column;flex:none;width:15rem;font-size:13px;display:flex;overflow:hidden}.explorer-title{letter-spacing:.05em;text-transform:uppercase;color:hsl(var(--muted-foreground));padding:.6rem 1rem .4rem;font-size:11px;font-weight:600}.explorer-tree{flex:1;padding-bottom:1rem;overflow-y:auto}.explorer details>summary{cursor:pointer;color:hsl(var(--foreground));align-items:center;gap:.25rem;padding:.15rem .5rem;list-style:none;display:flex}.explorer details>summary::-webkit-details-marker{display:none}.explorer details>summary:hover{background:hsl(var(--vscode-line-highlight))}.explorer details>summary .chevron{transition:transform .15s;display:inline-flex}.explorer details:not([open])>summary .chevron{transform:rotate(-90deg)}.explorer details>summary .ico-open{display:none}.explorer details[open]>summary .ico-open{display:inline-flex}.explorer details[open]>summary .ico-closed{display:none}.explorer details details>summary{padding-left:1.25rem}.explorer-file{color:hsl(var(--secondary-foreground));white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.4rem;padding:.15rem .5rem .15rem 2rem;text-decoration:none;display:flex;overflow:hidden}.explorer details details .explorer-file{padding-left:3.25rem}.explorer-file:hover{background:hsl(var(--vscode-line-highlight));color:hsl(var(--foreground))}.explorer-file[aria-current=page]{background:hsl(var(--primary) / .08);color:hsl(var(--foreground));box-shadow:inset 1px 0 0 hsl(var(--primary))}.explorer-file svg{flex:none}.explorer-file .tag{color:hsl(var(--muted-foreground));margin-left:auto;font-size:10px}.tabs{scrollbar-width:none;background:hsl(var(--vscode-tab-inactive));border-bottom:1px solid hsl(var(--border));flex:none;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{color:hsl(var(--muted-foreground));border-right:1px solid hsl(var(--border));border-top:2px solid #0000;flex:none;align-items:center;gap:.4rem;padding:.5rem .85rem;font-size:13px;text-decoration:none;transition:background-color .15s,color .15s;display:flex}.tab:hover{color:hsl(var(--foreground))}.tab[aria-current=page]{background:hsl(var(--vscode-tab-active));color:hsl(var(--foreground));border-top-color:hsl(var(--primary))}.tab .close{opacity:0;margin-left:.15rem;display:inline-flex}.tab:hover .close,.tab[aria-current=page] .close{opacity:.5}.breadcrumbs{color:hsl(var(--muted-foreground));background:hsl(var(--vscode-editor));flex-wrap:wrap;flex:none;align-items:center;gap:.25rem;padding:.2rem 1rem;font-size:12px;display:flex}.breadcrumbs a{text-decoration:none}.breadcrumbs a:hover{color:hsl(var(--foreground))}.breadcrumbs ol{padding:0;list-style:none;display:contents}.breadcrumbs li{align-items:center;gap:.25rem;display:inline-flex}.breadcrumbs li+li:before{content:"›";opacity:.6}.editor-scroll{background:hsl(var(--vscode-editor));scrollbar-color:hsl(var(--muted-foreground) / .3) hsl(var(--vscode-editor));scrollbar-width:thin;flex:1;min-height:0;overflow:hidden auto}.editor-content{counter-reset:line;padding:.5rem 0 3rem}.statusbar{background:hsl(var(--vscode-statusbar));color:#ffffffe6;white-space:nowrap;flex:none;justify-content:space-between;align-items:center;gap:.75rem;height:1.5rem;padding:0 .5rem;font-size:12px;display:flex;overflow:hidden}.statusbar>div{align-items:center;gap:.25rem;display:flex}.statusbar .item{height:1.5rem;color:inherit;cursor:default;background:0 0;border:0;align-items:center;gap:.3rem;padding:0 .4rem;font-size:12px;text-decoration:none;display:inline-flex}.statusbar button.item,.statusbar a.item{cursor:pointer}.statusbar button.item:hover,.statusbar a.item:hover{background:#ffffff1f}.statusbar .dot{background:hsl(var(--neon-green));width:7px;height:7px;box-shadow:0 0 6px hsl(var(--neon-green));border-radius:50%}.statusbar .dot.off{background:hsl(var(--neon-orange));box-shadow:none}.mobile-explorer{z-index:50;display:flex;position:absolute;inset:0}.mobile-explorer .explorer{width:min(18rem,85vw)}.mobile-explorer .backdrop{background:hsl(var(--background) / .6);border:0;flex:1}@media (width<=767px){.activitybar,.ide-main>.explorer{display:none}.mobile-menu-btn{display:inline-flex}.titlebar-menu button:not(.mobile-menu-btn),.window-dots{display:none}:root{--gutter:2.25rem}}@media (width>=768px){.mobile-explorer{display:none!important}}.code{font-size:13px;line-height:1.6rem}.code-line{min-height:1.6rem;display:flex}.code-line:hover{background:hsl(var(--vscode-line-highlight))}.code-line:before{counter-increment:line;content:counter(line);width:var(--gutter);text-align:right;color:hsl(var(--vscode-line-number));-webkit-user-select:none;user-select:none;flex:none;padding-right:1rem}.code-line>span{overflow-wrap:anywhere;min-width:0;padding-right:1rem}.code-line.i1>span{padding-left:1.25rem}.code-line.i2>span{padding-left:2.5rem}.block{margin:1rem 1.5rem 1rem var(--gutter)}@media (width<=767px){.block{margin-right:1rem}}.hero h1{margin-bottom:.5rem;font-size:clamp(1.6rem,4vw,2.4rem);font-weight:700;line-height:1.2}.hero h2{margin-bottom:1rem;font-size:clamp(1rem,2.4vw,1.3rem);font-weight:400}.hero p{max-width:40rem;color:hsl(var(--muted-foreground));line-height:1.7}.btn{cursor:pointer;color:hsl(var(--accent,var(--primary)));border:1px solid hsl(var(--accent,var(--primary)) / .5);box-shadow:0 0 5px hsl(var(--accent,var(--primary)) / .3), 0 0 10px hsl(var(--accent,var(--primary)) / .15), inset 0 0 5px hsl(var(--accent,var(--primary)) / .1);background:0 0;align-items:center;gap:.5rem;padding:.55rem 1rem;font-size:13px;text-decoration:none;transition:background-color .2s;display:inline-flex}.btn:hover{background:hsl(var(--accent,var(--primary)) / .1)}.btn[disabled]{opacity:.5;cursor:not-allowed}.btn-ghost{box-shadow:none;border-color:hsl(var(--border));color:hsl(var(--foreground))}.btn-ghost:hover{border-color:hsl(var(--primary) / .5);background:0 0}.actions{flex-wrap:wrap;gap:.75rem;display:flex}.chip{background:hsl(var(--secondary));color:hsl(var(--secondary-foreground));align-items:center;gap:.25rem;padding:.1rem .4rem;font-size:11px;display:inline-flex}.chip-outline{border:1px solid hsl(var(--border));color:hsl(var(--muted-foreground));background:0 0}.chips{flex-wrap:wrap;gap:.375rem;display:flex}.panel{border:1px solid hsl(var(--border));background:hsl(var(--vscode-sidebar));padding:1.25rem}.panel-title{align-items:center;gap:.5rem;margin-bottom:1rem;font-size:13px;display:flex}.project-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,20rem),1fr));gap:1rem;display:grid}.project-card{border:1px solid hsl(var(--border));background:hsl(var(--vscode-sidebar));flex-direction:column;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex;position:relative}.project-card:hover,.project-card:focus-within{border-color:hsl(var(--accent) / .5);box-shadow:0 0 5px hsl(var(--accent) / .3), 0 0 14px hsl(var(--accent) / .15)}.project-card .thumb{aspect-ratio:16/10;border-bottom:1px solid hsl(var(--border));background:hsl(var(--background));overflow:hidden}.project-card .thumb img{object-fit:cover;object-position:top;width:100%;height:100%;transition:transform .4s}.project-card:hover .thumb img{transform:scale(1.03)}.project-card .thumb.placeholder{color:hsl(var(--accent) / .5);background:repeating-linear-gradient(135deg, hsl(var(--background)), hsl(var(--background)) 10px, hsl(var(--vscode-sidebar)) 10px, hsl(var(--vscode-sidebar)) 20px);justify-content:center;align-items:center;display:flex}.project-card .body{flex-direction:column;flex:1;gap:.6rem;padding:1rem;display:flex}.project-card .head{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.project-card h3{color:hsl(var(--accent));font-size:14px;font-weight:600}.project-card h3 a{text-decoration:none}.project-card h3 a:after{content:"";position:absolute;inset:0}.project-card p{color:hsl(var(--muted-foreground));font-size:12px;line-height:1.65}.project-card .meta{color:hsl(var(--muted-foreground));justify-content:space-between;align-items:center;gap:.5rem;margin-top:auto;font-size:11px;display:flex}.status{align-items:center;gap:.3rem;font-size:11px;display:inline-flex}.status:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.status-live{color:hsl(var(--neon-green))}.status-archived{color:hsl(var(--neon-orange))}.status-confidential{color:hsl(var(--muted-foreground))}.filters{flex-wrap:wrap;gap:.4rem;margin-bottom:1rem;display:flex}.filter-btn{cursor:pointer;border:1px solid hsl(var(--border));background:hsl(var(--background));color:hsl(var(--muted-foreground));padding:.2rem .6rem;font-size:12px}.filter-btn:hover{color:hsl(var(--foreground))}.filter-btn[aria-pressed=true]{border-color:hsl(var(--primary) / .6);color:hsl(var(--primary));background:hsl(var(--primary) / .08)}.filter-count{color:hsl(var(--muted-foreground));margin-bottom:.75rem;font-size:12px}.skill-group+.skill-group{margin-top:1.5rem}.skill-row{grid-template-columns:minmax(9rem,13rem) minmax(4rem,20rem) 2.5rem;align-items:center;gap:.75rem;margin:.5rem 0;font-size:12px;display:grid}.skill-bar{background:hsl(var(--secondary));height:.5rem;overflow:hidden}.skill-bar>span{height:100%;width:var(--level);background:hsl(var(--accent));box-shadow:0 0 8px hsl(var(--accent) / .6);animation:1s ease-out both fill;display:block}@keyframes fill{0%{width:0}}.service-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr));gap:.75rem;display:grid}.service-card{border:1px solid hsl(var(--border));background:hsl(var(--vscode-sidebar));padding:1rem;transition:border-color .2s,box-shadow .2s}.service-card:hover{border-color:hsl(var(--neon-green) / .4);box-shadow:0 0 5px hsl(var(--neon-green) / .3), 0 0 10px hsl(var(--neon-green) / .15)}.service-card .ico{color:hsl(var(--neon-green));margin-bottom:.6rem}.service-card h2{color:hsl(var(--neon-green));margin-bottom:.3rem;font-size:14px;font-weight:600}.service-card p{color:hsl(var(--muted-foreground));font-size:12px;line-height:1.65}.case-header{gap:1rem;display:grid}.case-header h1{color:hsl(var(--accent));text-shadow:0 0 12px hsl(var(--accent) / .35);font-size:clamp(1.4rem,3.5vw,2rem)}.case-header .lead{color:hsl(var(--muted-foreground));max-width:46rem;font-size:14px;line-height:1.7}.case-facts{grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:.5rem 1.5rem;font-size:12px;display:grid}.case-facts dt{color:hsl(var(--muted-foreground))}.case-facts dd{color:hsl(var(--foreground));margin:.1rem 0 0}.case-cover{border:1px solid hsl(var(--border))}.case-nav{border-top:1px solid hsl(var(--border));flex-wrap:wrap;justify-content:space-between;gap:1rem;padding-top:1rem;font-size:12px;display:flex}.case-nav a{color:hsl(var(--muted-foreground));align-items:center;gap:.4rem;text-decoration:none;display:inline-flex}.case-nav a:hover{color:hsl(var(--primary))}.gallery{grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr));gap:1rem;display:grid}.gallery figure{border:1px solid hsl(var(--border));background:hsl(var(--vscode-sidebar))}.gallery button{cursor:zoom-in;background:0 0;border:0;width:100%;padding:0;display:block}.gallery img{aspect-ratio:16/10;object-fit:cover;object-position:top;width:100%}.gallery figcaption{color:hsl(var(--muted-foreground));padding:.4rem .6rem;font-size:11px}.prose{max-width:46rem;font-size:13px;line-height:1.8}.prose>*+*{margin-top:.9rem}.prose h1,.prose h2,.prose h3{color:hsl(var(--foreground));line-height:1.3}.prose h1{font-size:1.5rem}.prose h1:before{content:"# ";color:hsl(var(--syntax-keyword))}.prose h2{margin-top:1.75rem;font-size:1.15rem}.prose h2:before{content:"## ";color:hsl(var(--syntax-keyword))}.prose h3{margin-top:1.25rem;font-size:1rem}.prose h3:before{content:"### ";color:hsl(var(--syntax-keyword))}.prose p,.prose li{color:hsl(var(--secondary-foreground))}.prose strong{color:hsl(var(--syntax-string));font-weight:600}.prose a{color:hsl(var(--primary))}.prose ul{padding-left:1.25rem;list-style:none}.prose ul li:before{content:"- ";color:hsl(var(--syntax-keyword));margin-left:-1rem}.prose code{background:hsl(var(--secondary));padding:.05rem .3rem}.prose pre{background:hsl(var(--background));border:1px solid hsl(var(--border));padding:1rem;overflow-x:auto}.prose blockquote{border-left:2px solid hsl(var(--primary) / .6);color:hsl(var(--muted-foreground));margin:0;padding-left:1rem}.prose img{border:1px solid hsl(var(--border))}.form{flex-direction:column;gap:.9rem;display:flex}.form label{color:hsl(var(--muted-foreground));margin-bottom:.3rem;font-size:12px;display:block}.form input,.form textarea{width:100%;font:inherit;color:hsl(var(--foreground));background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:0;padding:.55rem .75rem;font-size:13px}.form textarea{resize:vertical;min-height:8rem}.form input:focus,.form textarea:focus{border-color:hsl(var(--primary) / .6);box-shadow:0 0 0 1px hsl(var(--primary) / .3);outline:none}.form .errors{color:hsl(var(--neon-pink));margin-top:.3rem;padding:0;font-size:12px;list-style:none}.form .has-error input,.form .has-error textarea{border-color:hsl(var(--neon-pink) / .6)}.hp-field{width:1px;height:1px;overflow:hidden;position:absolute!important;left:-9999px!important}.alert{border:1px solid;padding:.6rem .8rem;font-size:12px}.alert-error{color:hsl(var(--neon-pink));border-color:hsl(var(--neon-pink) / .4);background:hsl(var(--neon-pink) / .06)}.alert-success{color:hsl(var(--neon-green));border-color:hsl(var(--neon-green) / .4);background:hsl(var(--neon-green) / .06)}.contact-grid{grid-template-columns:minmax(0,34rem) minmax(0,18rem);align-items:start;gap:1.5rem;display:grid}@media (width<=1023px){.contact-grid{grid-template-columns:minmax(0,1fr)}}.contact-list{color:hsl(var(--muted-foreground));gap:.6rem;padding:0;font-size:12px;list-style:none;display:grid}.contact-list li{align-items:center;gap:.5rem;display:flex}.contact-list a{text-decoration:none}.contact-list a:hover{color:hsl(var(--primary))}.contact-list svg{color:hsl(var(--neon-cyan));flex:none}.error-code{color:hsl(var(--neon-pink));text-shadow:0 0 20px hsl(var(--neon-pink) / .5);font-size:clamp(3rem,12vw,6rem);font-weight:700;line-height:1}.palette-backdrop{z-index:90;background:hsl(var(--background) / .55);justify-content:center;align-items:flex-start;padding:10vh 1rem 1rem;display:flex;position:fixed;inset:0}.palette{background:hsl(var(--vscode-sidebar));border:1px solid hsl(var(--primary) / .35);width:min(36rem,100%);box-shadow:0 12px 40px #00000080, 0 0 20px hsl(var(--primary) / .12)}.palette input{border:0;border-bottom:1px solid hsl(var(--border));background:hsl(var(--background));width:100%;color:hsl(var(--foreground));font:inherit;outline:none;padding:.7rem .9rem;font-size:13px}.palette ul{max-height:55vh;margin:0;padding:.3rem 0;list-style:none;overflow-y:auto}.palette li a{color:hsl(var(--secondary-foreground));align-items:center;gap:.6rem;padding:.4rem .9rem;font-size:13px;text-decoration:none;display:flex}.palette li a .hint{color:hsl(var(--muted-foreground));white-space:nowrap;margin-left:auto;font-size:11px}.palette li.active a{background:hsl(var(--primary) / .12);color:hsl(var(--foreground))}.palette .group{text-transform:uppercase;letter-spacing:.06em;color:hsl(var(--muted-foreground));padding:.5rem .9rem .2rem;font-size:10px}.palette .empty{color:hsl(var(--muted-foreground));padding:1rem .9rem;font-size:12px}.palette mark{color:hsl(var(--primary));background:0 0;font-weight:600}.terminal{border-top:1px solid hsl(var(--border));background:hsl(var(--background));flex-direction:column;flex:none;height:min(18rem,45vh);display:flex}.terminal-head{text-transform:uppercase;letter-spacing:.05em;height:2rem;color:hsl(var(--muted-foreground));border-bottom:1px solid hsl(var(--border));justify-content:space-between;align-items:center;padding:0 .5rem 0 1rem;font-size:11px;display:flex}.terminal-head .active{color:hsl(var(--foreground));border-bottom:1px solid hsl(var(--primary));padding-bottom:.35rem}.terminal-head button{cursor:pointer;color:inherit;background:0 0;border:0;padding:.25rem;display:inline-flex}.terminal-head button:hover{color:hsl(var(--foreground))}.terminal-body{cursor:text;flex:1;padding:.5rem 1rem;font-size:13px;line-height:1.55;overflow-y:auto}.terminal-body pre{font:inherit;white-space:pre-wrap;word-break:break-word;margin:0}.terminal-body a{color:hsl(var(--primary))}.terminal-prompt{align-items:baseline;gap:.5rem;display:flex}.terminal-prompt .ps1{color:hsl(var(--neon-green));white-space:nowrap}.terminal-prompt input{min-width:0;color:hsl(var(--foreground));font:inherit;caret-color:hsl(var(--primary));background:0 0;border:0;outline:none;flex:1;padding:0}.viewer{border:1px solid hsl(var(--border));background:hsl(var(--vscode-sidebar))}.viewer-bar{border-bottom:1px solid hsl(var(--border));align-items:center;gap:.6rem;padding:.4rem .6rem;font-size:12px;display:flex}.viewer-url{background:hsl(var(--background));border:1px solid hsl(var(--border));min-width:0;color:hsl(var(--muted-foreground));white-space:nowrap;text-overflow:ellipsis;flex:1;padding:.2rem .6rem;overflow:hidden}.viewer-bar button,.viewer-bar a{cursor:pointer;color:hsl(var(--muted-foreground));background:0 0;border:1px solid #0000;align-items:center;gap:.3rem;padding:.2rem .4rem;font-size:12px;text-decoration:none;display:inline-flex}.viewer-bar button:hover,.viewer-bar a:hover{color:hsl(var(--foreground))}.viewer-bar button[aria-pressed=true]{color:hsl(var(--primary));border-color:hsl(var(--primary) / .4)}.viewer-stage{background:repeating-linear-gradient(135deg, hsl(var(--background)), hsl(var(--background)) 10px, hsl(var(--vscode-editor)) 10px, hsl(var(--vscode-editor)) 20px);justify-content:center;padding:0;display:flex}.viewer-stage iframe{background:#fff;border:0;width:100%;height:70vh;transition:width .3s;display:block}.viewer-stage.mobile{padding:1rem 0}.viewer-stage.mobile iframe{border:1px solid hsl(var(--border));width:390px;max-width:100%;height:72vh}.viewer-poster{cursor:pointer;background:0 0;border:0;width:100%;padding:0;display:block;position:relative}.viewer-poster img{object-fit:cover;object-position:top;width:100%;max-height:70vh}.viewer-poster .play{background:linear-gradient(transparent, hsl(var(--background) / .9));justify-content:center;padding:1.5rem;display:flex;position:absolute;inset:auto 0 0}.lightbox{z-index:95;background:hsl(var(--background) / .92);flex-direction:column;display:flex;position:fixed;inset:0}.lightbox-bar{color:hsl(var(--muted-foreground));justify-content:space-between;align-items:center;padding:.5rem 1rem;font-size:12px;display:flex}.lightbox-bar button{border:1px solid hsl(var(--border));color:hsl(var(--foreground));cursor:pointer;background:0 0;padding:.3rem .5rem;display:inline-flex}.lightbox-stage{flex:1;justify-content:center;align-items:flex-start;padding:0 1rem 1rem;display:flex;overflow:auto}.lightbox-stage img{border:1px solid hsl(var(--border));max-width:min(100%,1280px);height:auto}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.note{color:hsl(var(--muted-foreground));align-items:center;gap:.4rem;font-size:12px;display:flex}.gallery-mobile{grid-template-columns:repeat(auto-fill,minmax(min(100%,11rem),1fr))}.gallery-mobile img{aspect-ratio:9/16}.viewer-group{border-left:1px solid hsl(var(--border));gap:.15rem;padding-left:.4rem;display:inline-flex}@media (width<=767px){.viewer-bar{flex-wrap:wrap}.viewer-url{flex-basis:100%;order:-1}}.project-grid-featured{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=1279px){.project-grid-featured{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=767px){.project-grid-featured{grid-template-columns:minmax(0,1fr)}}
