*{box-sizing:border-box;padding:0}*,body{margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0a0a0a;color:#f9fafb;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}html{scroll-behavior:smooth}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{background:#0a0a0a;color:#f9fafb;min-height:100vh;padding-bottom:100px}.container{margin:0 auto;max-width:1400px;padding:0 2rem}section{padding:96px 0}.hero{align-items:center;justify-content:center;min-height:100vh;overflow:hidden}.hero,.hero .container{display:flex;position:relative}.hero .container{flex-direction:column;gap:3rem;width:100%;z-index:1}.hero-content{grid-gap:5rem;align-items:center;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);background:hsla(0,0%,100%,.001);border:1px solid #ffffff1a;border-radius:28px;box-shadow:0 8px 64px #00000080,inset 0 1px 0 #ffffff14;display:grid;gap:5rem;grid-template-columns:1.1fr 1fr;padding:3.5rem 4rem}.hero-title-row{align-items:baseline;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.hero-title-row h2{font-size:1.5rem;font-weight:600;margin:0}.hero-title-row .role-subtitle{margin:0}.hero-left h1{-webkit-text-fill-color:#0000;-webkit-background-clip:text;background-clip:text;font-size:5rem;margin-bottom:1rem}.hero-left .tagline{color:#9ca3af;font-size:1.5rem;line-height:1.4;margin:0}.hero-right{border-left:1px solid #ffffff14;padding-left:3rem}.hero .role-subtitle{align-items:center;background:#ffffff12;border:1px solid #ffffff24;border-radius:100px;color:#fff;display:inline-flex;font-size:1.5rem;letter-spacing:.18em;margin:0 0 1.5rem;padding:.4rem 1.2rem;text-transform:uppercase}.hero .hero-bio{color:#d8dde6;font-size:1.3rem;line-height:1.85;margin:0}.hero-teaser{align-items:center;background:#ffffff05;border:1px solid #ffffff0f;border-radius:8px;cursor:pointer;display:flex;gap:.75rem;margin:4rem auto 0;padding:1rem 1.25rem;transition:border-color .3s ease,background .3s ease;width:-webkit-fit-content;width:fit-content}.hero-teaser:hover{background:#3b82f60a;border-color:#3b82f659}.teaser-project{color:#e5e7eb;flex-shrink:0;font-size:.875rem;font-weight:600}.teaser-sep{color:#374151;flex-shrink:0}.teaser-desc{color:#e5e9f1;font-size:.875rem}.teaser-badge{border:1px solid #3b82f640;border-radius:4px;color:#3b82f6;flex-shrink:0;font-size:.7rem;letter-spacing:.06em;margin-left:auto;padding:.2rem .6rem;white-space:nowrap}.hero .cta{background:#3b82f6;border-radius:8px;color:#fff;display:inline-block;margin-top:2rem;padding:1rem 2rem;text-decoration:none;transition:transform .3s}.hero .cta:hover{transform:translateY(-2px)}.site-body{position:relative}.site-body>section{position:relative;z-index:1}.section-number{font-size:1rem;font-weight:600}.section-header h2{font-size:2.5rem;margin-top:.5rem}.projects-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.project-card{background:#1a1a1a;border:1px solid #ffffff1a;border-radius:12px;opacity:0;padding:2rem;transform:translateY(30px);transition:transform .3s,border-color .3s}.project-card.featured{background:linear-gradient(135deg,#1a1a1a,#1a2a3a);grid-column:span 2}.project-card:hover{border-color:#3b82f6;transform:translateY(-4px)}.project-badge{background:#3b82f6;border-radius:4px;color:#fff;display:inline-block;font-size:.75rem;margin-bottom:1rem;padding:.25rem .75rem}.project-card h3{font-size:1.5rem;margin-bottom:1rem}.project-card p{color:#9ca3af;margin-bottom:1.5rem}.tech-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.tech-tag{background:#3b82f61a;border:1px solid #3b82f64d;border-radius:4px;color:#3b82f6;font-size:.875rem;padding:.25rem .75rem}.project-link{color:#3b82f6;text-decoration:none}.skills-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.skill-category{opacity:0;transform:translateY(20px)}.skill-category h3{color:#3b82f6;margin-bottom:1rem}.skill-tags{display:flex;flex-wrap:wrap;gap:.5rem}.skill-tag{background:#1a1a1a;border:1px solid #ffffff1a;border-radius:6px;padding:.5rem 1rem;transition:border-color .3s}.skill-tag:hover{border-color:#3b82f6}.pub-card{background:#1a1a1a;border:1px solid #ffffff1a;border-radius:8px;margin-bottom:1rem;opacity:0;padding:1.5rem;transform:translateX(-30px)}.pub-card h3{margin-bottom:.5rem}.pub-meta{color:#9ca3af;font-size:.875rem;margin-bottom:1rem}.pub-links a{color:#3b82f6;margin-right:1rem;text-decoration:none}.fade-in{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.fade-in.visible{opacity:1;transform:translateY(0)}.project-card{transition:opacity .6s ease,transform .6s ease,border-color .3s}.project-card.visible{opacity:1;transform:translateY(0)}.project-card:first-child{transition-delay:.1s}.project-card:nth-child(2){transition-delay:.2s}.project-card:nth-child(3){transition-delay:.3s}.project-card:nth-child(4){transition-delay:.4s}.skill-category{transition:opacity .5s ease,transform .5s ease}.skill-category.visible{opacity:1;transform:translateY(0)}.skill-category:first-child{transition-delay:.1s}.skill-category:nth-child(2){transition-delay:.2s}.skill-category:nth-child(3){transition-delay:.3s}.skill-category:nth-child(4){transition-delay:.4s}.pub-card{transition:opacity .6s ease,transform .6s ease}.pub-card.visible{opacity:1;transform:translateX(0)}.pub-card:nth-child(2){transition-delay:.2s}.dock-panel{align-items:flex-end;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background-color:#0a0a0acc;border:1px solid #222;border-radius:1rem;bottom:.5rem;display:flex;gap:1rem;left:50%;padding:0 .5rem .5rem;position:fixed;transform:translateX(-50%);width:-webkit-fit-content;width:fit-content;z-index:1000}.dock-item{background-color:#1a1a1acc;border:1px solid #222;border-radius:10px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;cursor:pointer;display:inline-flex;outline:none;position:relative}.dock-icon,.dock-item{align-items:center;justify-content:center}.dock-icon{display:flex}.dock-label{background-color:#1a1a1af2;border:1px solid #222;border-radius:.375rem;color:#fff;font-size:.75rem;left:50%;padding:.125rem .5rem;position:absolute;top:-1.5rem;transform:translateX(-50%);white-space:pre;width:-webkit-fit-content;width:fit-content}.dock-divider-before:before{background:#fff3;content:"";height:40px;left:-.65rem;position:absolute;width:1px}.dock-toast{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background-color:#1a1a1acc;border:1px solid #222;border-radius:10px;bottom:90px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;color:#f9fafb;font-size:.875rem;font-weight:500;padding:.75rem 1.5rem;pointer-events:none;position:fixed;transform:translateX(-50%);-webkit-user-select:none;user-select:none;z-index:999}.dock-toast:after{border-left:8px solid #0000;border-right:8px solid #0000;border-top:8px solid #1a1a1acc;bottom:-6px}.dock-toast:after,.dock-toast:before{content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);width:6px}.dock-toast:before{border-left:9px solid #0000;border-right:9px solid #0000;border-top:9px solid #222;bottom:-9px;z-index:-1}.pixel-blast-container{height:100%;left:0;pointer-events:auto;position:absolute;top:0;width:100%;z-index:0}.pixel-blast-container canvas{display:block;height:100%;width:100%}.animated-gradient-text{align-items:center;border-radius:1.25rem;cursor:pointer;display:flex;flex-direction:row;font-weight:500;justify-content:center;margin:0 auto;max-width:-webkit-fit-content;max-width:fit-content;overflow:hidden;position:relative;transition:box-shadow .5s ease-out}.animated-gradient-text.with-border{padding:.35rem .75rem}.gradient-overlay{bottom:0;pointer-events:none;right:0;z-index:0}.gradient-overlay,.gradient-overlay:before{border-radius:inherit;left:0;position:absolute;top:0}.gradient-overlay:before{background-color:#060010;content:"";height:calc(100% - 2px);left:50%;top:50%;transform:translate(-50%,-50%);width:calc(100% - 2px);z-index:-1}.text-content{background-clip:text;-webkit-background-clip:text;color:#0000;display:inline-block;position:relative;z-index:2}.card-spotlight{--mouse-x:50%;--mouse-y:50%;--spotlight-color:#ffffff0d;background-color:#111;border:1px solid #222;border-radius:1.5rem;overflow:hidden;padding:2rem;position:relative}.card-spotlight:before{background:radial-gradient(circle at var(--mouse-x) var(--mouse-y),var(--spotlight-color),#0000 80%);bottom:0;content:"";left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .5s ease}.card-spotlight:focus-within:before,.card-spotlight:hover:before{opacity:.6}.sphere-root{--radius:520px;--viewer-pad:72px;--circ:calc(var(--radius)*3.14);--rot-y:calc((360deg/var(--segments-x))/2);--rot-x:calc((360deg/var(--segments-y))/2);--item-width:calc(var(--circ)/var(--segments-x));--item-height:calc(var(--circ)/var(--segments-y));height:100%;position:relative;width:100%}.sphere-root *{box-sizing:border-box}.item,.item__image,.sphere{transform-style:preserve-3d}main.sphere-main{background:#0000;display:grid;inset:0;overflow:hidden;place-items:center;position:absolute;touch-action:none;user-select:none;-webkit-user-select:none}.stage{contain:layout paint size;display:grid;height:100%;perspective:calc(var(--radius)*2);perspective-origin:50% 50%;place-items:center;width:100%}.sphere{transform:translateZ(calc(var(--radius)*-1));will-change:transform}.overlay,.overlay--blur{inset:0;margin:auto;pointer-events:none;position:absolute;z-index:3}.overlay{background-image:radial-gradient(#ebebeb00 65%,#060010 100%);background-image:radial-gradient(#ebebeb00 65%,var(--overlay-blur-color,#060010) 100%)}.overlay--blur{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);-webkit-mask-image:radial-gradient(#ebebeb00 70%,#060010 90%);-webkit-mask-image:radial-gradient(#ebebeb00 70%,var(--overlay-blur-color,#060010) 90%);mask-image:radial-gradient(#ebebeb00 70%,#060010 90%);mask-image:radial-gradient(#ebebeb00 70%,var(--overlay-blur-color,#060010) 90%)}.item{bottom:-999px;height:calc(var(--item-height)*var(--item-size-y));left:-999px;margin:auto;right:-999px;top:-999px;transform:rotateY(calc(var(--rot-y)*(var(--offset-x) + ((var(--item-size-x) - 1)/2)))) rotateX(calc(var(--rot-x)*(var(--offset-y) - ((var(--item-size-y) - 1)/2)))) translateZ(var(--radius));transform:rotateY(calc(var(--rot-y)*(var(--offset-x) + ((var(--item-size-x) - 1)/2)) + var(--rot-y-delta, 0deg))) rotateX(calc(var(--rot-x)*(var(--offset-y) - ((var(--item-size-y) - 1)/2)) + var(--rot-x-delta, 0deg))) translateZ(var(--radius));transform-origin:50% 50%;width:calc(var(--item-width)*var(--item-size-x))}.item,.item__image{-webkit-backface-visibility:hidden;backface-visibility:hidden;position:absolute;transition:transform .3s}.item__image{-webkit-tap-highlight-color:transparent;background:#0000;border-radius:12px;border-radius:var(--tile-radius,12px);cursor:pointer;display:block;inset:10px;overflow:hidden;pointer-events:auto;touch-action:manipulation;transform:translateZ(0)}.item__image:focus{outline:none}.item__image:after{background-color:initial;background-color:var(--tint-color,#0000);border-radius:inherit;content:"";inset:0;mix-blend-mode:multiply;pointer-events:none;position:absolute}.item__image img{-webkit-backface-visibility:hidden;backface-visibility:hidden;background-color:azure;filter:none;filter:var(--image-filter,none);height:100%;object-fit:contain;pointer-events:none;width:100%}.viewer{align-items:center;display:flex;inset:0;justify-content:center;padding:var(--viewer-pad);pointer-events:none;position:absolute;z-index:20}.viewer .frame{aspect-ratio:1;border-radius:32px;border-radius:var(--enlarge-radius,32px);display:flex;height:100%}@media (max-aspect-ratio:1/1){.viewer .frame{height:auto;width:100%}}.viewer .scrim{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0006;inset:0;opacity:0;pointer-events:none;position:absolute;transition:opacity .5s ease;z-index:10}.sphere-root[data-enlarging=true] .viewer .scrim{opacity:1;pointer-events:all}.viewer .enlarge{border-radius:32px;border-radius:var(--enlarge-radius,32px);box-shadow:0 10px 30px #00000059;overflow:hidden;position:absolute;transform-origin:top left;transition:transform .5s ease,opacity .5s ease;z-index:30}.viewer .enlarge img{height:100%;object-fit:cover;width:100%}.sphere-root .enlarge-closing img,.viewer .enlarge img{filter:none;filter:var(--image-filter,none)}.sphere-root .enlarge-closing:after,.viewer .enlarge:after{background-color:initial;background-color:var(--tint-color,#0000);border-radius:inherit;content:"";inset:0;mix-blend-mode:multiply;pointer-events:none;position:absolute}.edge-fade{background:linear-gradient(180deg,#0000,#060010);background:linear-gradient(to bottom,#0000,var(--overlay-blur-color,#060010));height:120px;left:0;pointer-events:none;position:absolute;right:0;z-index:5}.edge-fade--top{top:0;transform:rotate(180deg)}.edge-fade--bottom{bottom:0}.text-rotate{display:flex;flex-wrap:wrap;position:relative;white-space:pre-wrap}.text-rotate-sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.text-rotate-word{display:inline-flex;overflow:hidden}.text-rotate-lines{display:flex;flex-direction:column;width:100%}.text-rotate-element{display:inline-block}.text-rotate-space{white-space:pre}.pixel-snow-container{contain:layout style paint;height:100%;overflow:hidden;position:relative;width:100%}.pixel-snow-container canvas{-webkit-backface-visibility:hidden;backface-visibility:hidden;display:block;height:100%;transform:translateZ(0);width:100%;will-change:transform}.live-demo-container{display:inline-block;position:relative}.demo-backdrop{animation:fadeIn .3s ease;background:#000000b3;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:999}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.live-demo-button{align-items:center;background:#10b981;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:500;gap:.5rem;padding:1rem 2rem;transition:all .3s}.live-demo-button:hover{background:#059669;transform:translateY(-2px)}.demo-dropdown{animation:slideDown .3s ease;background:#1a1a1afa;border:1px solid #3b82f64d;border-radius:12px;box-shadow:0 10px 40px #00000080;left:50%;max-height:85vh;max-width:1200px;overflow-y:auto;padding:2rem;position:fixed;scrollbar-color:#3b82f6 #0000004d;scrollbar-width:thin;top:50%;transform:translate(-50%,-50%);width:80vw;z-index:1000}.demo-dropdown::-webkit-scrollbar{width:10px}.demo-dropdown::-webkit-scrollbar-track{background:#0000004d;border-radius:10px}.demo-dropdown::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#3b82f6,#8b5cf6);border:2px solid #1a1a1afa;border-radius:10px}.demo-dropdown::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#60a5fa,#a78bfa)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.demo-code-entry{align-items:center;display:flex;flex-direction:column;gap:1.5rem;padding:2.5rem 2rem}.demo-code-entry h3{color:#f9fafb;font-size:1.5rem;margin:0}.code-hint{color:#9ca3af;font-size:.9rem;margin:0;text-align:center}.code-input{background:#1a1a1acc;border:1px solid #3b82f64d;border-radius:8px;color:#f9fafb;font-family:Courier New,monospace;font-size:1.1rem;outline:none;padding:.75rem 1rem;text-align:center;transition:all .3s;width:200px}.code-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.code-error{color:#ef4444;font-size:.875rem;margin:-.5rem 0 0}.verify-button{background:linear-gradient(135deg,#3b82f6,#8b5cf6);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 2rem;transition:all .3s}.verify-button:hover{box-shadow:0 10px 25px #3b82f64d;transform:translateY(-2px)}.demo-status{align-items:center;display:flex;flex-direction:column;gap:1rem;padding:2rem 0}.demo-status p{color:#9ca3af;margin:0}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.demo-ready{display:flex;flex-direction:column;gap:1rem}.demo-health{align-items:center;background:#10b9811a;border:1px solid #10b9814d;color:#10b981;font-weight:500;padding:.75rem}.demo-health,.demo-health-details{border-radius:8px;display:flex;gap:.5rem}.demo-health-details{background:#3b82f60d;flex-direction:column;padding:1rem}.health-item{color:#9ca3af;display:flex;font-size:.875rem;justify-content:space-between}.health-value{color:#3b82f6;font-weight:500}.launch-button{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:1rem 2rem;transition:all .3s}.launch-button:hover{background:#2563eb;transform:translateY(-2px)}.demo-launching{gap:2rem;max-height:70vh;overflow-y:auto}.demo-launching,.progress-section{display:flex;flex-direction:column}.progress-section{gap:1rem}.progress-header{color:#3b82f6;font-weight:500;gap:.5rem;margin-bottom:1.5rem}.loading-balls-container,.progress-header{align-items:center;display:flex;justify-content:center}.loading-balls-container{flex-direction:row;gap:5px;height:30px;margin:1rem 0}.ball{background:#3b82f6;border-radius:50%;height:10px;width:10px}.ball:first-child{animation:right 1s ease-in-out infinite}.ball:nth-child(2){animation:left 1.1s ease-in-out infinite}.ball:nth-child(3){animation:right 1.05s ease-in-out infinite}.ball:nth-child(4){animation:left 1.15s ease-in-out infinite}.ball:nth-child(5){animation:right 1.1s ease-in-out infinite}.ball:nth-child(6){animation:left 1.05s ease-in-out infinite}.ball:nth-child(7){animation:right 1s ease-in-out infinite}@keyframes right{0%{transform:translateY(-15px)}50%{transform:translateY(15px)}to{transform:translateY(-15px)}}@keyframes left{0%{transform:translateY(15px)}50%{transform:translateY(-15px)}to{transform:translateY(15px)}}.estimated-time{margin:1rem 0 0}.estimated-time,.status-subtext{color:#9ca3af;font-size:.875rem;text-align:center}.status-subtext{margin:.5rem 0 0}.progress-bar-container{background:#3b82f61a;border-radius:4px;height:8px;overflow:hidden;width:100%}.progress-bar-fill{background:linear-gradient(90deg,#3b82f6,#10b981);border-radius:4px;height:100%;transition:width .3s ease}.progress-info{color:#9ca3af;display:flex;font-size:.875rem;justify-content:space-between}.tutorial-section{display:flex;flex-direction:column;gap:1rem}.tutorial-section h3{color:#3b82f6;font-size:1.25rem;margin:0}.tutorial-intro{color:#9ca3af;font-size:.95rem;margin:0}.tutorial-steps{display:flex;flex-direction:column;gap:1rem}.tutorial-step{background:#3b82f60d;border:1px solid #3b82f633;border-radius:8px;display:flex;gap:1rem;padding:1rem;transition:all .3s}.tutorial-step:hover{background:#3b82f61a;border-color:#3b82f6}.step-number{align-items:center;background:#3b82f633;border:1px solid #3b82f6;border-radius:50%;color:#3b82f6;display:flex;flex-shrink:0;font-size:.875rem;font-weight:600;height:32px;justify-content:center;width:32px}.step-content{flex:1 1}.step-content h4{color:#f9fafb;font-size:.95rem;margin:0 0 .5rem}.step-content p{color:#9ca3af;font-size:.875rem;line-height:1.5;margin:0}.demo-complete{align-items:center;display:flex;flex-direction:column;gap:1rem;padding:1rem 0}.demo-complete h3{color:#10b981;font-size:1.5rem;margin:0}.demo-complete>p{color:#9ca3af;margin:0;text-align:center}.open-demo-button{align-items:center;background:#10b981;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:500;gap:.5rem;margin-top:1rem;padding:1rem 2rem;transition:all .3s}.open-demo-button:hover{background:#059669;transform:translateY(-2px)}.demo-info{border-top:1px solid #ffffff1a;display:flex;flex-direction:column;gap:.5rem;margin-top:1rem;padding-top:1rem;width:100%}.demo-duration,.demo-id,.demo-ip{color:#9ca3af;font-size:.875rem;margin:0;text-align:center}.demo-id,.demo-ip{color:#3b82f6;font-family:Courier New,monospace}.demo-error{align-items:center;display:flex;flex-direction:column;gap:1.5rem;padding:3rem 2rem}.error-title{color:#ef4444;font-size:1.75rem;font-weight:600;margin:0}.error-message{color:#d1d5db;font-size:1rem;line-height:1.6;margin:0;max-width:400px;text-align:center}.retry-button{background:#3b82f61a;border:1px solid #3b82f64d;border-radius:8px;color:#3b82f6;cursor:pointer;font-size:.95rem;font-weight:500;margin-top:.5rem;padding:.75rem 1.5rem;transition:all .3s}.retry-button:hover{background:#3b82f633;border-color:#3b82f6;transform:translateY(-2px)}@media (max-width:640px){.demo-dropdown{padding:1.5rem;width:95vw}.tutorial-step{align-items:flex-start;flex-direction:column}.step-number{align-self:flex-start}}.project-detail{background:#0a0a0a;color:#f9fafb;min-height:100vh}.project-hero{overflow:hidden;padding:120px 0 100px;position:relative}.project-hero:before{background-image:radial-gradient(#639bff21 1px,#0000 0);background-size:28px 28px;inset:0;mask-image:radial-gradient(ellipse 90% 70% at 20% 10%,#000 20%,#0000 80%);-webkit-mask-image:radial-gradient(ellipse 90% 70% at 20% 10%,#000 20%,#0000 80%)}.project-hero:after,.project-hero:before{content:"";pointer-events:none;position:absolute}.project-hero:after{background:radial-gradient(ellipse,#3b82f614 0,#0000 65%);height:500px;left:-100px;top:-80px;width:700px}.back-button{align-items:center;background:#ffffff0a;border:1px solid #ffffff14;border-radius:8px;color:#6b7280;cursor:pointer;display:inline-flex;font-size:.875rem;gap:.5rem;margin-bottom:3rem;padding:.6rem 1.25rem;position:relative;transition:color .2s,border-color .2s,background .2s,transform .2s;z-index:1}.back-button:hover{background:#3b82f612;border-color:#3b82f640;color:#f9fafb;transform:translateX(-3px)}.project-hero-content{max-width:860px;position:relative;z-index:1}.project-badge{align-items:center;background:#3b82f612;border:1px solid #3b82f633;border-radius:100px;color:#60a5fa;display:inline-flex;font-size:.7rem;font-weight:700;gap:.5rem;letter-spacing:.14em;margin-bottom:1.75rem;padding:.375rem 1rem;text-transform:uppercase}.project-badge:before{animation:badge-pulse 2.2s ease-in-out infinite;background:#3b82f6;border-radius:50%;box-shadow:0 0 0 0 #3b82f680;content:"";height:5px;width:5px}@keyframes badge-pulse{0%,to{box-shadow:0 0 0 0 #3b82f680}50%{box-shadow:0 0 0 5px #3b82f600}}.project-hero h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#fff,#e2e8f0 55%,#93c5fd);-webkit-background-clip:text;background-clip:text;font-size:5.5rem;font-weight:800;letter-spacing:-.03em;line-height:1;margin:0 0 1.25rem}.project-subtitle{color:#4b5563;font-size:1.3rem;font-weight:400;line-height:1.5;margin-bottom:1.5rem}.project-description{color:#6b7280;font-size:1rem;line-height:1.9;margin-bottom:2.5rem;max-width:740px}.project-actions{display:flex;flex-wrap:wrap;gap:1rem}.btn-primary,.btn-secondary{align-items:center;border-radius:8px;display:inline-flex;font-size:.95rem;font-weight:500;gap:.5rem;padding:.875rem 1.75rem;text-decoration:none;transition:all .2s}.btn-primary{background:#3b82f6;box-shadow:0 0 20px #3b82f640;color:#fff}.btn-primary:hover{background:#2563eb;box-shadow:0 0 30px #3b82f659;transform:translateY(-2px)}.btn-secondary{background:#ffffff0a;border:1px solid #ffffff1a;color:#f9fafb}.btn-secondary:hover{background:#ffffff12;border-color:#ffffff2e}.metrics-section{padding:0 0 90px}.metrics-grid{background:hsla(0,0%,100%,.015);border:1px solid #ffffff12;border-radius:16px;display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden}.metric-card{padding:2.75rem 2rem;position:relative;text-align:center;transition:background .25s}.metric-card+.metric-card:before{background:#ffffff12;content:"";height:64%;left:0;position:absolute;top:18%;width:1px}.metric-card:hover{background:#3b82f60a}.metric-value{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#60a5fa,#a78bfa);-webkit-background-clip:text;background-clip:text;font-size:3.25rem;font-weight:800;letter-spacing:-.02em;line-height:1;margin-bottom:.75rem}.metric-label{color:#e5e7eb;font-size:.8rem;font-weight:700;letter-spacing:.07em;margin-bottom:.5rem;text-transform:uppercase}.metric-description{color:#4b5563;font-size:.8125rem;line-height:1.5}.section-header{display:flex;flex-direction:column;gap:.6rem;margin-bottom:3rem}.section-number{align-items:center;color:#3b82f6;display:inline-flex;font-size:.7rem;font-weight:700;gap:.5rem;letter-spacing:.16em;text-transform:uppercase}.section-number:before{background:currentColor;content:"";display:inline-block;height:1px;opacity:.6;width:20px}.section-header h2{color:#f9fafb;font-size:2.4rem;font-weight:700;letter-spacing:-.02em;line-height:1.15;margin:0}.content-section{padding:80px 0}.content-block{background:#ffffff05;border:1px solid #ffffff12;border-radius:16px;margin-bottom:2rem;padding:3rem}.content-block h3{color:#e5e7eb;font-size:1.4rem;font-weight:600;letter-spacing:-.01em;margin-bottom:1.25rem}.content-block>p{color:#6b7280;font-size:.9875rem;line-height:1.9;margin-bottom:1.25rem}.content-block>p:last-child{margin-bottom:0}.content-block strong{color:#d1d5db;font-weight:600}.architecture-section{padding:80px 0}.section-intro{color:#4b5563;font-size:.9875rem;line-height:1.85;margin-bottom:3rem;max-width:720px}.architecture-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(2,1fr)}.architecture-card{background:#ffffff05;border:1px solid #ffffff12;border-radius:14px;padding:2.25rem;transition:border-color .25s,background .25s}.architecture-card:hover{background:#ffffff08;border-color:#ffffff1f}.architecture-icon{align-items:center;color:#4b5563;display:flex;height:40px;justify-content:center;margin-bottom:1.5rem;width:40px}.architecture-card h3{color:#f9fafb;font-size:1.075rem;font-weight:600;letter-spacing:-.005em;margin-bottom:.875rem}.architecture-card p{color:#4b5563;font-size:.9rem;line-height:1.75;margin:0}.bridge-features{border:1px solid #ffffff12;border-radius:12px;display:grid;grid-template-columns:1fr 1fr;margin:2rem 0 1.5rem;overflow:hidden}.bridge-feature{background:hsla(0,0%,100%,.015);padding:2.25rem}.bridge-feature:first-child{border-right:1px solid #ffffff12}.bridge-feature-label{background:#3b82f614;border:1px solid #3b82f62e;border-radius:4px;color:#3b82f6;display:inline-block;font-size:.65rem;font-weight:700;letter-spacing:.15em;margin-bottom:1rem;padding:.2rem .6rem;text-transform:uppercase}.bridge-feature h4{color:#e5e7eb;font-size:1.05rem;font-weight:600;letter-spacing:-.01em;margin-bottom:.875rem}.bridge-feature p{color:#4b5563;font-size:.9rem;line-height:1.8;margin:0}.highlights-section{padding:80px 0}.highlights-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(3,1fr)}.highlight-card{border:1px solid #ffffff0f;border-radius:12px;padding:2rem;transition:border-color .25s,background .25s}.highlight-card:hover{background:rgba(59,130,246,.025);border-color:#3b82f633}.highlight-card-index{color:#374151;font-size:.65rem;font-weight:700;letter-spacing:.12em;margin-bottom:.875rem;text-transform:uppercase}.highlight-card h3{color:#e5e7eb;font-size:.975rem;font-weight:600;letter-spacing:-.005em;margin-bottom:.75rem}.highlight-card p{color:#4b5563;font-size:.875rem;line-height:1.75;margin:0}.compliance-features{display:flex;flex-direction:column;gap:1rem;margin:2rem 0 0}.compliance-feature{grid-gap:1.75rem;align-items:start;background:rgba(139,92,246,.025);border:1px solid #8b5cf61a;border-radius:12px;display:grid;gap:1.75rem;grid-template-columns:64px 1fr;padding:1.75rem 2rem;transition:border-color .2s}.compliance-feature:hover{border-color:#8b5cf638}.compliance-feature-number{-webkit-text-stroke:1px #8b5cf640;color:#0000;font-size:2.25rem;font-weight:900;line-height:1;padding-top:2px;text-align:right;-webkit-user-select:none;user-select:none}.compliance-feature-body h4{color:#c4b5fd;font-size:1rem;font-weight:600;letter-spacing:-.005em;margin-bottom:.75rem}.compliance-feature-body p{color:#4b5563;font-size:.9rem;line-height:1.8;margin:0}.results-section{padding:80px 0}.results-content{display:flex;flex-direction:column;gap:1.5rem}.result-highlight{background:#ffffff05;border:1px solid #ffffff12;border-radius:14px;padding:2.5rem}.result-highlight h3{color:#e5e7eb;font-size:1.15rem;font-weight:600;letter-spacing:-.01em;margin-bottom:.875rem}.result-highlight p{color:#6b7280;font-size:.9375rem;line-height:1.85;margin:0}.comparison-table{background:#0d0d0d;border:1px solid #ffffff12;border-radius:14px;overflow-x:auto;padding:2.5rem}.comparison-table h4{color:#374151;font-size:.7rem;font-weight:700;letter-spacing:.12em;margin-bottom:2rem;text-transform:uppercase}.comparison-table table{border-collapse:collapse;width:100%}.comparison-table th{border-bottom:1px solid #ffffff12;color:#4b5563;font-size:.75rem;font-weight:700;letter-spacing:.08em;padding:.75rem 1.25rem;text-align:left;text-transform:uppercase}.th-blockchain{color:#f87171b3!important}.th-hybrid{color:#34d399b3!important}.th-speedup{color:#fbbf24b3!important}.comparison-table td{font-feature-settings:"tnum";border-bottom:1px solid #ffffff0a;font-size:.9375rem;font-variant-numeric:tabular-nums;padding:1rem 1.25rem}.comparison-table tr:last-child td{border-bottom:none}.comparison-table tr:hover td{background:#ffffff05}.col-query{color:#6b7280}.col-blockchain{color:#f87171}.col-hybrid{color:#34d399}.col-speedup{color:#fbbf24;font-weight:700}.tech-stack-section{background:#ffffff03;padding:80px 0}.tech-stack-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(3,1fr)}.tech-stack-category{border:1px solid #ffffff0f;border-radius:12px;padding:1.75rem}.tech-stack-category h3{color:#374151;font-size:.68rem;font-weight:700;letter-spacing:.12em;margin-bottom:1.25rem;text-transform:uppercase}.tech-list{display:flex;flex-wrap:wrap;gap:.625rem}.tech-item{border-radius:6px;cursor:default;font-size:.8125rem;font-weight:500;padding:.375rem .875rem;transition:opacity .2s}.tech-item:hover{opacity:.75}.tech-blue .tech-item{background:#3b82f61a;border:1px solid #3b82f633;color:#60a5fa}.tech-emerald .tech-item{background:#10b9811a;border:1px solid #10b98133;color:#34d399}.tech-amber .tech-item{background:#f59e0b1a;border:1px solid #f59e0b33;color:#fbbf24}.tech-teal .tech-item{background:#14b8a61a;border:1px solid #14b8a633;color:#2dd4bf}.tech-indigo .tech-item{background:#6366f11a;border:1px solid #6366f133;color:#a5b4fc}.tech-rose .tech-item{background:#f43f5e1a;border:1px solid #f43f5e33;color:#fb7185}.impact-section{padding:80px 0}.impact-content{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:1fr 1fr}.impact-block{background:#ffffff05;border:1px solid #ffffff12;border-radius:14px;padding:2.25rem;transition:border-color .25s}.impact-block:hover{border-color:#ffffff1f}.impact-block h3{color:#e5e7eb;font-size:1rem;font-weight:600;letter-spacing:-.005em;margin-bottom:.875rem}.impact-block p{color:#4b5563;font-size:.9rem;line-height:1.85;margin:0}.future-work-section{background:#ffffff03;padding:80px 0}.future-work-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(2,1fr)}.future-work-item{border:1px solid #ffffff0f;border-radius:12px;padding:2rem;transition:border-color .25s,background .25s}.future-work-item:hover{background:#8b5cf605;border-color:#8b5cf633}.future-work-item h3{color:#e5e7eb;font-size:.975rem;font-weight:600;letter-spacing:-.005em;margin-bottom:.75rem}.future-work-item p{color:#4b5563;font-size:.875rem;line-height:1.8;margin:0}.publication-section{padding:80px 0}.publication-card{background:#0d0d0d;border:1px solid #ffffff14;border-radius:20px;margin:0 auto;max-width:880px;overflow:hidden;padding:4rem;position:relative}.publication-card:before{background:radial-gradient(ellipse 55% 45% at 100% 0,#3b82f612 0,#0000 55%),radial-gradient(ellipse 45% 40% at 0 100%,#8b5cf60f 0,#0000 55%);content:"";inset:0;pointer-events:none;position:absolute}.pub-header{align-items:center;border-bottom:1px solid #ffffff0f;display:flex;gap:1.25rem;margin-bottom:2.25rem;padding-bottom:2rem;position:relative;z-index:1}.pub-header svg{color:#3b82f6;flex-shrink:0;opacity:.7}.pub-header h3{color:#374151;font-size:.7rem;font-weight:700;letter-spacing:.12em;margin:0 0 .375rem;text-transform:uppercase}.pub-venue{color:#3b82f6;font-size:.875rem;font-weight:600;margin:0}.publication-card h2{color:#f9fafb;font-size:1.6rem;font-weight:700;letter-spacing:-.015em;line-height:1.45;margin-bottom:1rem;position:relative;z-index:1}.pub-authors{color:#4b5563;font-size:.9rem;margin-bottom:1.75rem}.pub-abstract,.pub-authors{position:relative;z-index:1}.pub-abstract{color:#6b7280;font-size:.9375rem;line-height:1.9;margin-bottom:2.5rem}.pub-actions{display:flex;flex-wrap:wrap;gap:1rem;position:relative;z-index:1}.pub-link{align-items:center;background:#3b82f614;border:1px solid #3b82f633;border-radius:8px;color:#60a5fa;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s}.pub-link:hover{background:#3b82f626;border-color:#3b82f659;transform:translateY(-2px)}.back-to-top{background:#0000;border:1px solid #ffffff12;border-radius:8px;color:#374151;cursor:pointer;display:block;font-size:.875rem;margin:2rem auto 5rem;padding:.7rem 2rem;transition:color .2s,border-color .2s}.back-to-top:hover{border-color:#ffffff24;color:#9ca3af}.fade-in{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:no-preference){.project-detail .fade-in{transition:opacity .55s ease,transform .55s ease}.project-detail .fade-in:not(.visible){opacity:0;transform:translateY(14px)}.project-detail .fade-in.visible{opacity:1;transform:translateY(0)}}.demo-view{background:#0a0a0a;display:flex;flex-direction:column;height:100vh;width:100%}.demo-view-header{align-items:center;background:#1a1a1af2;border-bottom:1px solid #3b82f64d;display:flex;justify-content:space-evenly;padding:1rem 2rem;z-index:10}.demo-view-header .back-button{margin-bottom:0}.demo-info-header{align-items:center;display:flex;gap:1rem}.demo-title{color:#f9fafb;font-size:1.25rem;font-weight:600}.demo-timer{background:#3b82f61a;border:1px solid #3b82f64d;border-radius:6px;color:#3b82f6;font-family:Courier New,monospace;font-size:.95rem;font-weight:500;gap:.5rem;padding:.5rem 1rem}.demo-note,.demo-timer{align-items:center;display:flex}.demo-note{color:#94a3b8;font-size:.9rem;font-style:italic;margin:0;padding:.5rem 0;text-align:center}.demo-iframe{background:#fff;border:none;flex:1 1;width:100%}.tutorial-button-container{align-items:center;display:flex;position:relative}.tutorial-button{align-items:center;background:#3b82f61a;border:1px solid #3b82f64d;border-radius:6px;color:#3b82f6;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .3s}.tutorial-button:hover{background:#3b82f633;border-color:#3b82f6;transform:translateY(-2px)}.tutorial-dropdown{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1a1a1afa;border:1px solid #3b82f64d;border-radius:12px;box-shadow:0 8px 32px #0006;left:50%;max-height:70vh;max-width:90vw;overflow-y:auto;padding:1.5rem;position:absolute;top:calc(100% + .5rem);transform:translateX(-50%);width:600px;z-index:1000}.tutorial-dropdown-title{border-bottom:1px solid #3b82f633;color:#3b82f6;font-size:1.25rem;margin-bottom:1rem;padding-bottom:.75rem}.tutorial-dropdown-steps{display:flex;flex-direction:column;gap:1rem}.tutorial-dropdown-step{background:#3b82f60d;border:1px solid #3b82f633;border-radius:8px;display:flex;gap:1rem;padding:1rem;transition:all .3s}.tutorial-dropdown-step:hover{background:#3b82f61a;border-color:#3b82f6;transform:translateX(4px)}.tutorial-step-number{align-items:center;background:#3b82f633;border:1px solid #3b82f666;border-radius:50%;color:#3b82f6;display:flex;flex-shrink:0;font-size:.9rem;font-weight:600;height:32px;justify-content:center;width:32px}.tutorial-step-content h4{color:#f9fafb;font-size:1rem;font-weight:600;margin:0 0 .5rem}.tutorial-step-content p{color:#9ca3af;font-size:.875rem;line-height:1.6;margin:0}.tutorial-dropdown::-webkit-scrollbar{width:8px}.tutorial-dropdown::-webkit-scrollbar-track{background:#1a1a1a80;border-radius:4px}.tutorial-dropdown::-webkit-scrollbar-thumb{background:#3b82f64d;border-radius:4px}.tutorial-dropdown::-webkit-scrollbar-thumb:hover{background:#3b82f680}@media (max-width:1024px){.metrics-grid,.tech-stack-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.project-hero h1{font-size:3.5rem}.project-subtitle{font-size:1.1rem}.section-header h2{font-size:1.875rem}.metrics-grid{grid-template-columns:1fr 1fr}.architecture-grid,.future-work-grid,.impact-content{grid-template-columns:1fr}.highlights-grid,.tech-stack-grid{grid-template-columns:1fr 1fr}.bridge-features{grid-template-columns:1fr}.bridge-feature:first-child{border-bottom:1px solid #ffffff12;border-right:none}.comparison-table,.content-block,.impact-block,.result-highlight{padding:1.5rem}.publication-card{padding:2rem}.publication-card h2{font-size:1.3rem}.comparison-table td,.comparison-table th{font-size:.875rem;padding:.75rem}.demo-view-header{align-items:flex-start;flex-direction:column;gap:1rem}.demo-note{text-align:left;width:100%}.demo-info-header{align-items:flex-start;flex-direction:column;gap:.5rem;width:100%}.tutorial-dropdown{left:50%;max-height:60vh;transform:translateX(-50%);width:95vw}.tutorial-dropdown-step{align-items:flex-start;flex-direction:column}}@media (max-width:480px){.project-hero h1{font-size:2.75rem}.metrics-grid{grid-template-columns:1fr}.metric-card+.metric-card:before{display:none}.highlights-grid,.tech-stack-grid{grid-template-columns:1fr}.compliance-feature{gap:1.25rem;grid-template-columns:48px 1fr}}
/*# sourceMappingURL=main.dd087d52.css.map*/