#root{max-width:1280px;margin:0 auto;padding:2rem}.logo{will-change:filter;height:6em;padding:1.5em;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:20s linear infinite logo-spin}}.card{padding:2em}.read-the-docs{color:#888}.PLA8LW_section{flex-direction:column;justify-content:flex-start;align-items:center;width:100%;min-height:auto;padding:5rem 2rem;display:flex;position:relative;overflow:hidden}.PLA8LW_section:before{content:"";pointer-events:none;background:radial-gradient(#667eea0d 0%,#0000 70%);position:absolute;top:0;bottom:0;left:0;right:0}.PLA8LW_section:nth-child(2n){background-color:#000000d9}.PLA8LW_section:nth-child(odd){background-color:#000000bf}.PLA8LW_section:first-child{justify-content:center;min-height:calc(100vh - 80px)}@media (max-width:768px){.PLA8LW_section{padding:3rem 1rem}.PLA8LW_section:first-child{min-height:calc(100vh - 60px)}}.O30nSq_header{text-align:center;margin-bottom:3rem}.O30nSq_header h2{-webkit-text-fill-color:transparent;background:linear-gradient(135deg,#fff 0%,#e0e0e0 100%);-webkit-background-clip:text;background-clip:text;margin-bottom:.5rem;font-size:2.5rem;font-weight:800}.O30nSq_header .O30nSq_subtitle{color:#9ca3af;margin:0;font-size:1.125rem}.O30nSq_filterButtons{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-bottom:3rem;display:flex}.O30nSq_filterButtons .O30nSq_filterButton{color:#9ca3af;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:100px;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;transition:background .2s,color .2s,transform .15s}.O30nSq_filterButtons .O30nSq_filterButton:hover{color:#e5e7eb;background:#ffffff14;transform:translateY(-1px)}.O30nSq_filterButtons .O30nSq_filterButton.O30nSq_active{color:#c7d2fe;background:linear-gradient(135deg,#6366f133 0%,#8b5cf633 100%);border-color:#6366f166;box-shadow:0 0 20px #6366f126}.O30nSq_projectsGrid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:2rem;width:100%;max-width:1200px;margin:0 auto;display:grid}@media (max-width:768px){.O30nSq_projectsGrid{grid-template-columns:1fr;gap:1.5rem}}@media (min-width:1024px){.O30nSq_projectsGrid{grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}}.O30nSq_projectCard{cursor:pointer;will-change:transform;animation:.5s ease-out both O30nSq_fadeInUp}.O30nSq_projectCard .O30nSq_cardInner{background:linear-gradient(135deg,#ffffff0d 0%,#ffffff05 100%);border:1px solid #ffffff14;border-radius:16px;flex-direction:column;height:100%;transition:border-color .2s,box-shadow .2s;display:flex;overflow:hidden;box-shadow:0 4px 16px #0000001a}.O30nSq_projectCard .O30nSq_cardInner:hover{border-color:#6366f14d;transform:translateY(-4px);box-shadow:0 8px 24px #00000026}.O30nSq_imageWrapper{aspect-ratio:16/9;background:linear-gradient(135deg,#0a0a0a 0%,#1a1a1a 100%);width:100%;position:relative;overflow:hidden}.O30nSq_imageWrapper .O30nSq_imagePlaceholder{width:100%;height:100%;position:relative}.O30nSq_imageWrapper .O30nSq_imagePlaceholder:before{content:"";opacity:0;background:linear-gradient(135deg,#6366f11a 0%,#8b5cf61a 100%);transition:opacity .6s;position:absolute;top:0;bottom:0;left:0;right:0}.O30nSq_imageWrapper .O30nSq_imagePlaceholder.O30nSq_loaded:before{opacity:0}.O30nSq_imageWrapper .O30nSq_imagePlaceholder:not(.O30nSq_loaded):before{opacity:1}.O30nSq_imageWrapper .O30nSq_projectMedia{object-fit:cover;object-position:center top;width:100%;height:100%;transition:transform .3s}.O30nSq_imageWrapper .O30nSq_noImage{background:linear-gradient(135deg,#1a1a1a 0%,#2a2a2a 100%);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.O30nSq_imageWrapper .O30nSq_noImage svg{color:#ffffff1a;font-size:3rem}.O30nSq_projectCard:hover .O30nSq_imageWrapper .O30nSq_projectMedia{transform:scale(1.02)}.O30nSq_statusBadge{text-transform:uppercase;letter-spacing:.05em;background:#000000e6;border:1px solid #ffffff1a;border-radius:100px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.75rem;font-weight:600;transition:all .3s;display:flex;position:absolute;top:1rem;right:1rem}.O30nSq_statusBadge svg{font-size:.875rem}.O30nSq_statusBadge.O30nSq_statusCompleted{color:#86efac;border-color:#86efac33}.O30nSq_statusBadge.O30nSq_statusCompleted:hover{background:#86efac26;box-shadow:0 0 20px #86efac4d}.O30nSq_statusBadge.O30nSq_statusInProgress{color:#93c5fd;border-color:#93c5fd33}.O30nSq_statusBadge.O30nSq_statusInProgress:hover{background:#93c5fd26;box-shadow:0 0 20px #93c5fd4d}.O30nSq_statusBadge.O30nSq_statusPlanned{color:#c4b5fd;border-color:#c4b5fd33}.O30nSq_statusBadge.O30nSq_statusPlanned:hover{background:#c4b5fd26;box-shadow:0 0 20px #c4b5fd4d}.O30nSq_statusBadge.O30nSq_statusOnHold{color:#fca5a5;border-color:#fca5a533}.O30nSq_statusBadge.O30nSq_statusOnHold:hover{background:#fca5a526;box-shadow:0 0 20px #fca5a54d}.O30nSq_content{flex-direction:column;flex:1;gap:1rem;padding:1.75rem;display:flex}.O30nSq_content .O30nSq_title{color:#f9fafb;letter-spacing:-.02em;margin:0;font-size:1.375rem;font-weight:700;line-height:1.3;transition:color .3s}.O30nSq_projectCard:hover :is(.O30nSq_content .O30nSq_title){-webkit-text-fill-color:transparent;background:linear-gradient(135deg,#c7d2fe 0%,#ddd6fe 100%);-webkit-background-clip:text;background-clip:text}.O30nSq_content .O30nSq_description{color:#9ca3af;-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1;margin:0;font-size:.875rem;line-height:1.6;display:-webkit-box;overflow:hidden}.O30nSq_content .O30nSq_skills{flex-wrap:wrap;gap:.5rem;display:flex}.O30nSq_content .O30nSq_skills .O30nSq_skill{color:#a5b4fc;background:#6366f11a;border:1px solid #6366f133;border-radius:100px;padding:.25rem .75rem;font-size:.75rem;font-weight:500;transition:all .3s}.O30nSq_content .O30nSq_skills .O30nSq_skill:hover{background:#6366f133;transform:translateY(-1px)}.O30nSq_content .O30nSq_skills .O30nSq_moreSkills{color:#6b7280;align-items:center;padding:.25rem .75rem;font-size:.75rem;display:flex}.O30nSq_content .O30nSq_actions{align-items:center;gap:.75rem;margin-top:.5rem;display:flex}.O30nSq_content .O30nSq_actions .O30nSq_viewDetails{color:#c7d2fe;cursor:pointer;background:linear-gradient(135deg,#6366f126 0%,#8b5cf626 100%);border:1px solid #6366f14d;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;transition:background .2s,transform .2s;display:flex}.O30nSq_content .O30nSq_actions .O30nSq_viewDetails svg{font-size:.75rem;transition:transform .3s}.O30nSq_content .O30nSq_actions .O30nSq_viewDetails:hover{background:linear-gradient(135deg,#6366f133 0%,#8b5cf633 100%);transform:translateY(-1px)}.O30nSq_content .O30nSq_actions .O30nSq_viewDetails:hover svg{transform:translate(2px)}.O30nSq_content .O30nSq_actions .O30nSq_viewDetails:active{transform:translateY(0)}.O30nSq_content .O30nSq_actions .O30nSq_externalLink{color:#9ca3af;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;justify-content:center;align-items:center;width:44px;height:44px;transition:all .3s;display:flex}.O30nSq_content .O30nSq_actions .O30nSq_externalLink svg{font-size:1rem}.O30nSq_content .O30nSq_actions .O30nSq_externalLink:hover{color:#e5e7eb;background:#ffffff1a;border-color:#fff3;transform:translateY(-1px)}@keyframes O30nSq_fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:640px){.O30nSq_header{margin-bottom:2rem}.O30nSq_header h2{font-size:2rem}.O30nSq_header .O30nSq_subtitle{font-size:1rem}.O30nSq_filterButtons{margin-bottom:2rem}.O30nSq_filterButtons .O30nSq_filterButton{padding:.5rem 1rem;font-size:.8125rem}.O30nSq_content{padding:1.5rem}.O30nSq_content .O30nSq_title{font-size:1.25rem}.O30nSq_content .O30nSq_description{font-size:.8125rem}}@media (prefers-contrast:high){.O30nSq_cardInner,.O30nSq_statusBadge,.O30nSq_skill,.O30nSq_filterButton{border-width:2px}}@media (prefers-reduced-motion:reduce){.O30nSq_projectCard,.O30nSq_projectMedia,.O30nSq_filterButton,.O30nSq_viewDetails svg{transition:none}@keyframes O30nSq_shimmer{0%,to{opacity:.5}}}.-EtZJW_projectDetail{color:#fff;background:#0a0a0a;min-height:100vh;padding-bottom:5rem}.-EtZJW_navigation{max-width:1400px;margin:0 auto;padding:2rem}@include glassmorphism();.-EtZJW_navigation .-EtZJW_backButton{color:#fff;cursor:pointer;transition:all$duration-normal$ease-out-cubic;border-radius:12px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:1rem;display:inline-flex}.-EtZJW_navigation .-EtZJW_backButton:hover{background:#ffffff1a;border-color:#667eea4d;transform:translate(-4px)}.-EtZJW_projectHeader{max-width:1400px;margin:0 auto;padding:0 2rem 3rem}.-EtZJW_projectHeader .-EtZJW_headerContent h1{font-size:3.5rem;font-weight:800}@include gradient-text(linear-gradient(135deg,#fff 0%,#e0e0e0 100%));.-EtZJW_projectHeader .-EtZJW_headerContent h1{letter-spacing:-.03em;margin-bottom:1.5rem;line-height:1.1}@media (max-width:768px){.-EtZJW_projectHeader .-EtZJW_headerContent h1{font-size:2.5rem}}.-EtZJW_projectHeader .-EtZJW_projectMeta{flex-wrap:wrap;align-items:center;gap:2rem;display:flex}.-EtZJW_projectHeader .-EtZJW_projectMeta .-EtZJW_status{background:#ffffff1a;border-radius:10px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:1rem;font-weight:600;display:inline-flex}.-EtZJW_projectHeader .-EtZJW_projectMeta .-EtZJW_status.-EtZJW_completed{color:#4ade80}.-EtZJW_projectHeader .-EtZJW_projectMeta .-EtZJW_status.-EtZJW_inProgress{color:#60a5fa}.-EtZJW_projectHeader .-EtZJW_projectMeta .-EtZJW_status.-EtZJW_planned{color:#a78bfa}.-EtZJW_projectHeader .-EtZJW_projectMeta .-EtZJW_status.-EtZJW_onHold{color:#f87171}.-EtZJW_projectHeader .-EtZJW_projectMeta .-EtZJW_projectLink{color:#818cf8;transition:color$duration-normal ease;align-items:center;gap:.5rem;font-weight:500;text-decoration:none;display:flex}.-EtZJW_projectHeader .-EtZJW_projectMeta .-EtZJW_projectLink:hover{color:#6366f1;text-decoration:underline}.-EtZJW_errorContainer{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.-EtZJW_errorContainer h1{margin-bottom:1rem;font-size:3rem}@include gradient-text(linear-gradient(135deg,#f87171 0%,#ef4444 100%));.-EtZJW_errorContainer p{color:#9ca3af;margin-bottom:2rem;font-size:1.2rem}.-EtZJW_errorContainer .-EtZJW_backLink{color:#818cf8;align-items:center;gap:.5rem;font-weight:500;text-decoration:none;display:inline-flex}@include hover-lift(-4px);.-EtZJW_projectImage{max-width:1400px;margin:0 auto 4rem;padding:0 2rem}.-EtZJW_projectImage .-EtZJW_media{object-fit:cover;border-radius:24px;width:100%;height:auto;max-height:700px;overflow:hidden;box-shadow:0 20px 60px #00000080}@include glassmorphism(10px,.02);.-EtZJW_projectInfo{max-width:1200px;margin:0 auto;padding:0 2rem}.-EtZJW_projectInfo h2{margin-bottom:2rem;font-size:2.5rem;font-weight:700}@include gradient-text(linear-gradient(135deg,#667eea 0%,#764ba2 100%));.-EtZJW_projectInfo h3{color:#e0e0e0;margin-bottom:1.5rem;font-size:1.5rem;font-weight:600}.-EtZJW_projectInfo p{color:#b3b3b3;margin-bottom:1.5rem;font-size:1.1rem;line-height:1.8}.-EtZJW_description{margin-bottom:4rem}.-EtZJW_description p{font-size:1.2rem;line-height:1.9}.-EtZJW_categories,.-EtZJW_technologies{margin-bottom:3rem}.-EtZJW_categoryList{flex-wrap:wrap;gap:1rem;display:flex}@include glassmorphism();.-EtZJW_categoryList .-EtZJW_category{color:#a5b4fc;background:linear-gradient(135deg,#667eea1a 0%,#764ba21a 100%);border-radius:12px;padding:.75rem 1.5rem;font-size:1rem;font-weight:500}.-EtZJW_skillGrid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;display:grid}@include glassmorphism();@include card-hover-animation();.-EtZJW_skillGrid .-EtZJW_skill{text-align:center;color:#e0e0e0;background:linear-gradient(135deg,#ffffff0d 0%,#ffffff05 100%);border:1px solid #667eea33;border-radius:10px;padding:.75rem 1rem;font-size:.9rem;font-weight:600}.-EtZJW_changelog{margin-top:4rem}.-EtZJW_changelog .-EtZJW_changelogList{flex-direction:column;gap:1.5rem;display:flex}@include glassmorphism();.-EtZJW_changelog .-EtZJW_changelogItem{border-radius:12px;flex-direction:column;gap:.5rem;padding:1.5rem;display:flex}.-EtZJW_changelog .-EtZJW_changelogItem .-EtZJW_date{color:#9ca3af;font-size:.9rem;font-weight:600}.-EtZJW_changelog .-EtZJW_changelogItem p{margin:0;font-size:1rem;line-height:1.6}.-EtZJW_caseStudy{margin-top:4rem}@include glassmorphism();.-EtZJW_caseStudy .-EtZJW_comingSoon{text-align:center;background:linear-gradient(135deg,#667eea0d 0%,#764ba20d 100%);border-radius:20px;padding:3rem}.-EtZJW_caseStudy .-EtZJW_comingSoon p{color:#9ca3af;margin-bottom:1.5rem;font-size:1.1rem}.-EtZJW_caseStudy .-EtZJW_comingSoon ul{text-align:left;max-width:500px;margin:0 auto;padding:0;list-style:none}.-EtZJW_caseStudy .-EtZJW_comingSoon ul li{color:#b3b3b3;padding:.75rem 0 .75rem 2rem;position:relative}.-EtZJW_caseStudy .-EtZJW_comingSoon ul li:before{content:"→";color:#667eea;font-weight:700;position:absolute;left:0}@media (max-width:768px){.-EtZJW_projectHeader .-EtZJW_headerContent h1,.-EtZJW_projectInfo h2{font-size:2rem}.-EtZJW_projectInfo h3{font-size:1.25rem}.-EtZJW_skillGrid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}}.Pol8Fa_loadingContainer{color:#9ca3af;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex}.Pol8Fa_loadingContainer p{margin-top:1rem;font-size:1.1rem}.Pol8Fa_spinner{text-align:center;width:70px}.Pol8Fa_spinner>div{background-color:#818cf8;border-radius:100%;width:14px;height:14px;animation:1.4s ease-in-out infinite both Pol8Fa_sk-bouncedelay;display:inline-block}.Pol8Fa_spinner .Pol8Fa_bounce1{animation-delay:-.32s}.Pol8Fa_spinner .Pol8Fa_bounce2{animation-delay:-.16s}@keyframes Pol8Fa_sk-bouncedelay{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}:root{--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#ffffffde;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#242424;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}html{scroll-behavior:smooth}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:#0000004d}::-webkit-scrollbar-thumb{background:linear-gradient(#667eea 0%,#764ba2 100%);border-radius:6px;transition:all .3s}::-webkit-scrollbar-thumb:hover{background:linear-gradient(#764ba2 0%,#667eea 100%)}.skip-link{color:#fff;z-index:10000;background:#667eea;border-radius:0 0 4px;padding:8px 16px;font-weight:600;text-decoration:none;transition:top .3s;position:absolute;top:-40px;left:0}.skip-link:focus{outline-offset:2px;outline:3px solid #fff;top:0}a{color:#667eea;-webkit-text-decoration:inherit;text-decoration:inherit;font-weight:500;transition:color .3s}a:hover{color:#764ba2}body{background-color:#1a1a1a;min-width:320px;min-height:100vh;margin:0}#root{flex-direction:column;min-height:100vh;display:flex}h1{font-size:3.2em;line-height:1.1}button{cursor:pointer;background-color:#1a1a1a;border:1px solid #0000;border-radius:8px;padding:.6em 1.2em;font-family:inherit;font-size:1em;font-weight:500;transition:border-color .25s}button:hover{border-color:#646cff}button:focus{outline:4px auto -webkit-focus-ring-color}button:focus-visible{outline:4px auto -webkit-focus-ring-color}a:focus-visible{outline-offset:3px;border-radius:4px;outline:2px solid #667eea}button:focus-visible{outline-offset:3px;border-radius:4px;outline:2px solid #667eea}select:focus-visible{outline-offset:3px;border-radius:4px;outline:2px solid #667eea}input:focus-visible{outline-offset:3px;border-radius:4px;outline:2px solid #667eea}textarea:focus-visible{outline-offset:3px;border-radius:4px;outline:2px solid #667eea}@media (prefers-contrast:high){a:focus-visible{outline-offset:2px;outline:3px solid}button:focus-visible{outline-offset:2px;outline:3px solid}}
