:root{--bg:#fff;--bg-card:#fff;--fg:#09090b;--muted:#71717a;--border:#e4e4e7;--primary:#09090b;--primary-fg:#fff;--primary-hover:#27272a;--card-hover:#fafafa;--font-sans:"Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"Geist Mono", monospace}.dark{--bg:#05050c;--bg-card:#1c1c1c;--fg:#f4f4f5;--muted:#a1a1aa;--border:#27272a;--primary:#f4f4f5;--primary-fg:#09090b;--primary-hover:#e4e4e7;--card-hover:#242424}*{box-sizing:border-box;margin:0;padding:0}@keyframes skeleton-loading{0%{background-color:var(--bg-card)}50%{background-color:var(--border)}to{background-color:var(--bg-card)}}.skeleton-loader{background-color:var(--bg-card);animation:2s ease-in-out infinite skeleton-loading}html,body{background-color:var(--bg);color:var(--fg);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;transition:background-color .2s,color .2s}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}.portfolio-container{max-width:42rem;margin:0 auto;padding:3rem 1.5rem}@media (width<=640px){.portfolio-container{padding:2rem 1.25rem}}.section{margin-top:3rem}.section-title{color:var(--fg);margin-bottom:1rem;font-size:.875rem;font-weight:500}.header-profile{justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;display:flex}.profile-name{letter-spacing:-.025em;color:var(--fg);font-size:1.5rem;font-weight:600}.profile-role{color:var(--muted);margin-top:.25rem;font-size:1.125rem;font-weight:500}.profile-location{color:var(--muted);margin-top:.25rem;font-size:.875rem}.profile-bio{color:var(--muted);margin-top:.75rem;font-size:.9375rem;line-height:1.6}.theme-toggle-btn{border:1px solid var(--border);width:2.25rem;height:2.25rem;color:var(--fg);border-radius:.375rem;justify-content:center;align-items:center;transition:background-color .2s;display:inline-flex}.theme-toggle-btn:hover{background-color:var(--border)}.actions-row{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:2.5rem;display:flex}.btn-resume{background-color:var(--primary);height:2.25rem;color:var(--primary-fg);white-space:nowrap;border-radius:.25rem;flex-shrink:0;justify-content:center;align-items:center;gap:.5rem;padding:0 1rem;font-size:.8125rem;font-weight:500;transition:background-color .2s,transform .15s;display:inline-flex}.btn-resume:hover{background-color:var(--primary-hover);transform:translateY(-1px)}.social-link{color:var(--fg);opacity:.8;justify-content:center;align-items:center;transition:opacity .2s,transform .2s;display:inline-flex}.social-link:hover{opacity:1;transform:translateY(-1px)}.contact-pill{border:1px solid var(--border);background-color:var(--bg-card);height:2.25rem;color:var(--fg);white-space:nowrap;border-radius:.25rem;flex-shrink:0;align-items:center;gap:.5rem;padding:0 .875rem;font-size:.8125rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.contact-pill:hover{border-color:var(--muted);background-color:var(--border);color:var(--fg);transform:translateY(-1px)}.contact-pill svg{width:.9375rem;height:.9375rem;color:var(--muted);flex-shrink:0;transition:color .2s}.contact-pill:hover svg{color:var(--fg)}.social-icon-btn{border:1px solid var(--border);background-color:var(--bg-card);width:2.25rem;height:2.25rem;color:var(--fg);border-radius:.25rem;flex-shrink:0;justify-content:center;align-items:center;text-decoration:none;transition:all .2s;display:inline-flex}.social-icon-btn:hover{border-color:var(--muted);background-color:var(--border);color:var(--fg);transform:translateY(-1px)}.social-icon-btn svg{width:.9375rem;height:.9375rem;color:var(--muted);transition:color .2s}.social-icon-btn:hover svg{color:var(--fg)}.contact-cards-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;display:grid}.contact-card{border:1px solid var(--border);background-color:var(--bg-card);min-width:0;color:var(--fg);border-radius:.25rem;align-items:center;gap:.875rem;padding:1rem;text-decoration:none;transition:all .2s;display:flex}.contact-card:hover{border-color:var(--fg);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.contact-card-icon{background-color:var(--border);width:2.5rem;height:2.5rem;color:var(--fg);border-radius:.25rem;flex-shrink:0;justify-content:center;align-items:center;transition:background-color .2s,color .2s;display:flex}.contact-card:hover .contact-card-icon{background-color:var(--fg);color:var(--bg)}.contact-card-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;font-weight:500;display:block;overflow:hidden}.contact-card-value{color:var(--fg);white-space:nowrap;text-overflow:ellipsis;margin-top:.125rem;font-size:.8125rem;font-weight:500;display:block;overflow:hidden}.tech-grid{flex-wrap:wrap;gap:.5rem;display:flex}.tech-pill{border:1px solid var(--border);background-color:var(--bg-card);color:var(--muted);cursor:default;border-radius:.25rem;align-items:center;gap:.5rem;padding:.25rem .625rem;font-size:.875rem;transition:border-color .2s,color .2s,transform .2s;display:inline-flex}.tech-pill:hover{color:var(--fg);border-color:var(--muted);transform:translateY(-1px)}.tech-pill svg{width:1rem;height:1rem;transition:color .2s,fill .2s}.tech-pill[data-tech=javascript]:hover svg{color:#f7df1e}.tech-pill[data-tech=typescript]:hover svg{color:#3178c6}.tech-pill[data-tech=python]:hover svg{color:#3776ab}.tech-pill[data-tech=java]:hover svg{color:#007396}.tech-pill[data-tech=csharp]:hover svg{color:#239120}.tech-pill[data-tech=cpp]:hover svg{color:#00599c}.tech-pill[data-tech=sql]:hover svg{color:#cc292b}.tech-pill[data-tech=react]:hover svg{color:#61dafb}.tech-pill[data-tech=express]:hover svg{color:#888}.tech-pill[data-tech=nodejs]:hover svg{color:#5fa04e}.tech-pill[data-tech=mongodb]:hover svg{color:#47a248}.tech-pill[data-tech=azure]:hover svg{color:#0089d6}.projects-grid{grid-template-columns:repeat(2,1fr);gap:2rem 1.5rem;display:grid}@media (width<=640px){.projects-grid{grid-template-columns:1fr;gap:1.75rem}}.project-card{cursor:pointer;text-align:left;flex-direction:column;display:flex}.project-img-wrapper{aspect-ratio:16/9;border:1px solid var(--border);background-color:var(--bg-card);border-radius:.375rem;width:100%;position:relative;overflow:hidden}.project-img{object-fit:cover;width:100%;height:100%;transition:transform .3s cubic-bezier(.4,0,.2,1)}.project-card:hover .project-img{transform:scale(1.05)}.project-header{justify-content:space-between;align-items:center;margin-top:.625rem;display:flex}.project-title{color:var(--fg);font-size:1.125rem;font-weight:500}.project-badge{border:1px solid var(--border);color:var(--muted);border-radius:.25rem;padding:.125rem .375rem;font-size:.75rem}.project-link-icon{color:var(--muted);align-items:center;transition:color .2s;display:inline-flex}.project-card:hover .project-link-icon{color:var(--fg)}.project-desc{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:.375rem;font-size:.875rem;line-height:1.45;display:-webkit-box;overflow:hidden}.timeline-list{flex-direction:column;gap:1.25rem;display:flex}.timeline-item{justify-content:space-between;align-items:flex-start;display:flex}.timeline-role{color:var(--fg);font-size:.9375rem;font-weight:500}.timeline-company{color:var(--muted);font-size:.875rem}.timeline-bullets{color:var(--muted);margin-top:.375rem;padding-left:1.25rem;font-size:.875rem}.timeline-bullets li{margin-bottom:.25rem}.timeline-date{color:var(--muted);white-space:nowrap;font-size:.875rem}@media (width<=640px){.timeline-item{flex-direction:column;gap:.25rem}}.showcase-view{animation:.25s ease-out fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.btn-back{color:var(--muted);border:1px solid var(--border);border-radius:.25rem;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.375rem .75rem;font-size:.875rem;font-weight:500;transition:color .2s,border-color .2s,background-color .2s;display:inline-flex}.btn-back:hover{color:var(--fg);border-color:var(--fg);background-color:var(--border)}.showcase-header{margin-bottom:1.5rem}.showcase-title{letter-spacing:-.025em;color:var(--fg);font-size:1.75rem;font-weight:600}.showcase-date{color:var(--muted);margin-top:.25rem;font-size:.875rem}.showcase-hero-img-wrapper{aspect-ratio:16/9;border:1px solid var(--border);background-color:var(--bg-card);border-radius:.25rem;width:100%;margin-bottom:2rem;overflow:hidden}.showcase-hero-img{object-fit:cover;width:100%;height:100%}.showcase-wiring-layout{grid-template-columns:1fr 1fr;align-items:center;gap:1.5rem;display:grid}.showcase-wiring-img-wrapper{border:1px solid var(--border);background-color:var(--bg-card);border-radius:.25rem;width:100%;max-width:480px;overflow:hidden}.showcase-wiring-img{width:100%;height:auto;display:block}.showcase-wiring-text{color:var(--muted);font-size:.875rem;line-height:1.65}@media (width<=768px){.showcase-wiring-layout{grid-template-columns:1fr}}.showcase-tech-list{flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;display:flex}.showcase-tech-badge{font-size:.75rem;font-family:var(--font-mono);border:1px solid var(--border);color:var(--muted);border-radius:.25rem;padding:.25rem .5rem}.showcase-section{margin-bottom:2.5rem}.showcase-section-title{color:var(--fg);margin-bottom:1rem;font-size:.875rem;font-weight:500}.showcase-highlights{color:var(--muted);padding-left:1.25rem;font-size:.875rem;line-height:1.7}.showcase-highlights li{margin-bottom:.5rem}.showcase-disclaimer{color:var(--muted);border:1px solid var(--border);background-color:var(--bg-card);border-radius:.25rem;align-items:flex-start;gap:.625rem;margin-bottom:1.5rem;padding:.75rem 1rem;font-size:.8125rem;line-height:1.55;display:flex}.showcase-disclaimer svg{width:1rem;height:1rem;color:var(--muted);flex-shrink:0;margin-top:.125rem}.sprints-container{flex-direction:column;gap:.875rem;margin-bottom:1.25rem;display:flex}.sprint-row-item{border:1px solid var(--border);background-color:var(--bg-card);border-radius:.25rem;justify-content:space-between;align-items:center;padding:.875rem 1rem;transition:border-color .2s;display:flex}.sprint-row-item:hover{border-color:var(--muted)}.sprint-row-info{flex-direction:column;gap:.125rem;display:flex}.sprint-row-title{color:var(--fg);font-size:.875rem;font-weight:500}.sprint-row-desc{color:var(--muted);font-size:.8125rem}.sprint-row-badge{font-family:var(--font-mono);border:1px solid var(--border);color:var(--fg);background-color:var(--bg);white-space:nowrap;border-radius:.25rem;padding:.25rem .625rem;font-size:.75rem;font-weight:500}.sprint-summary-banner{border:1px solid var(--border);background-color:var(--bg-card);border-radius:.25rem;justify-content:space-between;align-items:center;padding:.875rem 1rem;font-size:.875rem;display:flex}.sprint-summary-label{color:var(--muted)}.sprint-summary-value{font-family:var(--font-mono);color:var(--fg);font-weight:600}.video-showcase-grid{flex-direction:column;gap:2.25rem;display:flex}.video-item-block{flex-direction:column;gap:.625rem;display:flex}.video-item-header{flex-direction:column;gap:.125rem;display:flex}.video-item-title{color:var(--fg);font-size:.9375rem;font-weight:500}.video-item-desc{color:var(--muted);font-size:.8125rem;line-height:1.45}.video-wrapper{border:1px solid var(--border);background-color:#000;border-radius:.25rem;width:100%;overflow:hidden}.video-element{width:100%;height:auto;display:block}.feature-cards-grid{grid-template-columns:repeat(2,1fr);gap:.875rem;display:grid}@media (width<=640px){.feature-cards-grid{grid-template-columns:1fr}}.feature-detail-card{border:1px solid var(--border);background-color:var(--bg-card);border-radius:.25rem;padding:1rem 1.125rem;transition:border-color .2s}.feature-detail-card:hover{border-color:var(--muted)}.feature-detail-title{color:var(--fg);align-items:center;gap:.5rem;margin-bottom:.375rem;font-size:.875rem;font-weight:500;display:flex}.feature-detail-title svg{width:.875rem;height:.875rem;color:var(--muted)}.feature-detail-desc{color:var(--muted);font-size:.8125rem;line-height:1.5}.footer{border-top:1px solid var(--border);color:var(--muted);flex-direction:column;align-items:center;gap:.75rem;margin-top:4rem;padding-top:2rem;font-size:.875rem;display:flex}.footer-nav{align-items:center;gap:1.25rem;display:flex}.footer-nav a:hover{color:var(--fg)}.btn-learn-more{color:#3b82f6;cursor:pointer;background-color:#3b82f614;border:1px solid #3b82f64d;border-radius:.25rem;align-items:center;gap:.4rem;margin-top:.75rem;padding:.35rem .75rem;font-size:.8125rem;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}:root:not(.dark) .btn-learn-more{color:#2563eb;background-color:#2563eb0f;border-color:#2563eb40}.btn-learn-more:hover{color:#60a5fa;background-color:#3b82f629;border-color:#3b82f6;transform:translate(3px)}:root:not(.dark) .btn-learn-more:hover{color:#1d4ed8;background-color:#2563eb1f;border-color:#2563eb}.btn-learn-more svg{transition:transform .2s}.btn-learn-more:hover svg{transform:translate(2px)}.showcase-quote-box{border-left:3px solid var(--fg);background-color:var(--bg-card);border-radius:0 .25rem .25rem 0;align-items:flex-start;gap:.875rem;margin-bottom:1.75rem;padding:1.125rem 1.25rem;display:flex}.showcase-quote-icon{width:1.25rem;height:1.25rem;color:var(--muted);flex-shrink:0;margin-top:.125rem}.showcase-quote-text{color:var(--fg);margin:0;font-size:.9375rem;font-style:italic;line-height:1.6}.bg-blob{filter:blur(80px);z-index:-1;opacity:.6;pointer-events:none;border-radius:50%;animation:15s ease-in-out infinite alternate blob-float;position:fixed}.blob-1{background:radial-gradient(circle,#64c8ff40 0%,#64c8ff00 70%);width:40vw;height:40vw;top:-10vh;left:-10vw}.blob-2{background:radial-gradient(circle,#c864ff33 0%,#c864ff00 70%);width:50vw;height:50vw;animation-delay:-5s;bottom:-20vh;right:-10vw}.dark .blob-1{background:radial-gradient(circle,#3296ff26 0%,#3296ff00 70%)}.dark .blob-2{background:radial-gradient(circle,#9632ff26 0%,#9632ff00 70%)}@keyframes blob-float{0%{transform:translate(0)scale(1)}50%{transform:translate(5vw,10vh)scale(1.1)}to{transform:translate(-5vw,-5vh)scale(.9)}}.project-card,.timeline-item,.contact-card{-webkit-backdrop-filter:blur(16px);background:#fff6;box-shadow:0 4px 30px #0000000d;border:1px solid #fff6!important}.dark .project-card,.dark .timeline-item,.dark .contact-card{background:#1c1c1c66;box-shadow:0 4px 30px #0003;border:1px solid #ffffff0d!important}@keyframes reveal-up{0%{opacity:0;filter:blur(8px);transform:translateY(30px)}to{opacity:1;filter:blur();transform:translateY(0)}}.portfolio-container>*{animation:.8s cubic-bezier(.16,1,.3,1) both reveal-up}.portfolio-container>:first-child{animation-delay:.1s}.portfolio-container>:nth-child(2){animation-delay:.2s}.portfolio-container>:nth-child(3){animation-delay:.3s}.portfolio-container>:nth-child(4){animation-delay:.4s}.portfolio-container>:nth-child(5){animation-delay:.5s}.portfolio-container>:nth-child(6){animation-delay:.6s}.portfolio-container>:nth-child(7){animation-delay:.7s}.portfolio-container>:nth-child(8){animation-delay:.8s}:root{--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Icons", "Helvetica Neue", Arial, sans-serif}.theme-toggle-btn{border-radius:50%!important}.btn-resume,.contact-pill,.tech-pill,.btn-back,.btn-learn-more{border-radius:999px!important}.social-icon-btn,.contact-card-icon{border-radius:50%!important}.project-img-wrapper,.showcase-hero-img-wrapper,.showcase-wiring-img-wrapper{border:none!important;border-radius:16px!important}.project-badge,.tech-pill{background:#96969626!important;border:none!important}.timeline-item{background:var(--bg-card);border-radius:16px!important;padding:1.25rem!important}.project-card,.dark .project-card{-webkit-backdrop-filter:none!important;box-shadow:none!important;background:0 0!important;border:none!important;padding:0!important}.project-card .project-img-wrapper{-webkit-backdrop-filter:blur(20px)saturate(180%)!important;background:#ffffff80!important;border:none!important;box-shadow:0 4px 30px #0000000d!important}.dark .project-card .project-img-wrapper{background:#1c1c1c80!important;border:none!important}.contact-card,.timeline-item{-webkit-backdrop-filter:blur(20px)saturate(180%)!important;background:#fff9!important;border:none!important;border-radius:16px!important;box-shadow:0 8px 32px #0000000a!important}.dark .contact-card,.dark .timeline-item{background:#1c1c1c99!important;border:none!important;box-shadow:0 8px 32px #0003!important}.profile-name,.section-title,.project-title,.showcase-title{letter-spacing:-.02em!important;font-weight:600!important}
