:root{--bg-dark: #0f0f11;--text-light: #e4e4e7;--text-muted: #a1a1aa;--accent: #3b82f6}*{margin:0;padding:0;box-sizing:border-box}body{background-color:var(--bg-dark);color:var(--text-light);font-family:Inter,sans-serif;line-height:1.8;scroll-behavior:smooth}nav{position:fixed;top:0;right:0;width:100%;display:flex;justify-content:flex-end;padding:30px 50px;background:#0f0f11d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;transition:padding .3s ease}nav.scrolled{padding:15px 50px;border-bottom:1px solid rgba(255,255,255,.05)}nav a{color:var(--text-light);text-decoration:none;margin-left:40px;font-size:.9rem;font-weight:400;letter-spacing:1px;transition:color .3s ease}nav a:hover{color:var(--accent)}section{min-height:100vh;display:flex;flex-direction:column;justify-content:center;max-width:800px;margin:0 auto;padding:100px 20px 20px}.fade-in-section{opacity:0;transform:translateY(40px);transition:opacity .8s ease-out,transform .8s ease-out}.fade-in-section.is-visible{opacity:1;transform:translateY(0)}h1{font-size:3rem;font-weight:600;margin-bottom:10px;color:#fff}h2{font-size:2rem;font-weight:400;margin-bottom:20px;color:var(--accent)}p{color:var(--text-muted);margin-bottom:20px;font-size:1.05rem;text-align:justify}.highlight{color:var(--text-light);font-weight:600}.profile-wrapper{display:flex;align-items:center;gap:40px;margin-bottom:30px}.profile-photo{width:150px;height:150px;border-radius:50%;background-color:#27272a;object-fit:cover;border:2px solid var(--accent)}.intro-text h3{font-size:1.2rem;font-weight:300;color:var(--text-muted)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;margin-top:40px}.project-card{background:#18181b;border:1px solid rgba(255,255,255,.05);border-radius:12px;overflow:hidden;transition:transform .3s ease,border-color .3s ease;text-decoration:none;display:flex;flex-direction:column}.project-card:hover{transform:translateY(-5px);border-color:var(--accent)}.project-image{width:100%;height:180px;background-color:#27272a;object-fit:cover}.project-content{padding:20px;display:flex;flex-direction:column;flex-grow:1}.project-title{color:var(--text-light);font-size:1.25rem;font-weight:600;margin-bottom:10px}.project-desc{color:var(--text-muted);font-size:.95rem;margin-bottom:20px;line-height:1.5;flex-grow:1}.project-tags{display:flex;flex-wrap:wrap;gap:8px}.tag{background:#3b82f61a;color:var(--accent);padding:4px 10px;border-radius:20px;font-size:.8rem;font-weight:600}.timeline{position:relative;max-width:800px;margin:40px auto 0;padding-left:30px;border-left:2px solid #27272a}.timeline-item{position:relative;margin-bottom:40px}.timeline-item:last-child{margin-bottom:0}.timeline-item:before{content:"";position:absolute;left:-37px;top:6px;width:12px;height:12px;border-radius:50%;background-color:var(--accent);box-shadow:0 0 10px #3b82f680;border:3px solid var(--bg-dark)}.timeline-date{display:inline-block;font-size:.85rem;color:var(--accent);font-weight:600;margin-bottom:8px;letter-spacing:1px;background:#3b82f61a;padding:4px 12px;border-radius:20px}.timeline-title{font-size:1.3rem;color:var(--text-light);font-weight:600;margin-bottom:4px}.timeline-company{font-size:1.05rem;color:#a1a1aa;font-weight:400;margin-bottom:12px}.timeline-desc{color:var(--text-muted);font-size:.95rem;line-height:1.6}.skills-container{display:flex;flex-direction:column;gap:30px;margin-top:30px}.skill-category h3{color:var(--text-light);font-size:1.1rem;font-weight:600;margin-bottom:15px;border-bottom:1px solid #27272a;padding-bottom:8px}.skill-list{display:flex;flex-wrap:wrap;gap:12px}.skill-item{background-color:#18181b;border:1px solid rgba(255,255,255,.05);padding:10px 18px;border-radius:8px;color:var(--text-muted);font-size:.95rem;transition:all .3s ease;cursor:default}.skill-item:hover{border-color:var(--accent);color:var(--text-light);transform:translateY(-3px);box-shadow:0 4px 12px #3b82f61a}.detail-container{max-width:900px;margin:0 auto;padding:100px 20px 40px;min-height:100vh;animation:fadeUp .6s ease forwards}.back-link{display:inline-flex;align-items:center;color:var(--text-muted);text-decoration:none;font-size:1rem;margin-bottom:30px;transition:color .3s ease}.back-link:hover{color:var(--accent)}.detail-header h1{font-size:2.5rem;color:var(--text-light);margin-bottom:15px}.detail-tags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}.detail-image{width:100%;height:auto;max-height:450px;object-fit:cover;border-radius:12px;margin-bottom:40px;border:1px solid rgba(255,255,255,.05)}.detail-content{color:var(--text-muted);font-size:1.1rem;line-height:1.8}.detail-content h3{color:var(--text-light);font-size:1.5rem;margin:30px 0 15px}.detail-links{display:flex;gap:15px;margin-top:40px}.btn{padding:12px 24px;border-radius:8px;text-decoration:none;font-weight:600;transition:all .3s ease}.btn-primary{background-color:var(--accent);color:#fff}.btn-primary:hover{background-color:#2563eb}.btn-secondary{background-color:transparent;border:1px solid var(--text-muted);color:var(--text-light)}.btn-secondary:hover{border-color:var(--text-light)}@font-face{font-family:Silkscreen;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/silkscreen-regular.ttf) format("truetype")}@font-face{font-family:Silkscreen;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/silkscreen-bold.ttf) format("truetype")}.space-app{--space-bg: #080e1c;--space-line: #263044;--space-muted: #919eb4;--space-cream: #eee8dc;--space-cyan: #8bcec8;color:var(--space-cream);background:var(--space-bg);font-family:Segoe UI,Arial,sans-serif;line-height:1.6;position:relative;isolation:isolate;min-height:100svh}.space-app *,.space-app *:before,.space-app *:after{box-sizing:border-box}.space-app a{color:inherit;text-decoration:none}.space-app button{font:inherit;color:inherit;cursor:pointer}.space-app button,.space-app a{-webkit-tap-highlight-color:transparent}.space-app p{color:var(--space-muted);text-align:left;margin:0;font-size:14px}.space-app h1,.space-app h2,.space-app h3{color:var(--space-cream);margin:0}.space-app h1{font-family:Consolas,Courier New,monospace;font-size:clamp(28px,3.1vw,49px);font-weight:700;line-height:1.2;letter-spacing:-2px}.space-app h2{font-size:24px;font-weight:600}.space-app button:focus-visible,.space-app a:focus-visible{outline:2px solid #b9f0de;outline-offset:7px}.space-app .micro{font:10px/1.5 Consolas,Courier New,monospace;letter-spacing:1.8px;text-transform:uppercase;color:var(--space-muted)}.space-map-page{display:flex;flex-direction:column;height:100svh;min-height:740px;overflow:hidden}.starfield{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none}.star{position:absolute;width:2px;height:2px;background:#cddbe3;box-shadow:0 0 4px #b4d1dc30;animation:twinkle 6s var(--delay) infinite alternate}.cross-star{width:3px;height:3px;background:#acbabd}.cross-star:before,.cross-star:after{content:"";position:absolute;background:inherit;opacity:.7}.cross-star:before{width:1px;height:9px;left:1px;top:-3px}.cross-star:after{width:9px;height:1px;top:1px;left:-3px}.nebula{position:absolute;width:80%;height:70%;filter:blur(60px);opacity:.16;transform:rotate(-30deg);border-radius:50%}.nebula-one{top:10%;left:6%;background:radial-gradient(ellipse,#55537a,transparent 65%)}.nebula-two{top:25%;right:-20%;background:radial-gradient(ellipse,#225966,transparent 65%)}.space-header{position:relative;z-index:20;display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:25px;height:92px;padding:0 3.4%;border-bottom:1px solid #ffffff10}.space-brand{display:flex;align-items:center;gap:14px;font:700 15px/1.5 Consolas,monospace;letter-spacing:2px;white-space:nowrap}.brand-symbol{color:#e9b887;font-size:36px}.space-brand small{display:block;color:var(--space-muted);font-size:8px;font-weight:400;letter-spacing:1.4px;margin-top:3px}.header-center{display:flex;align-items:center;gap:8px;font:9px Consolas,monospace;letter-spacing:1px;color:#9eaaad}.online-dot{width:5px;height:5px;display:inline-block;background:#9bd4ab;box-shadow:0 0 8px #9bd4ab60}.header-actions{display:flex;align-items:center;gap:22px}.space-header button{border:0;background:none;font:10px Consolas,monospace;padding:8px 0;text-transform:uppercase;letter-spacing:1px}.space-languages{display:flex;gap:12px}.space-languages button{color:#8491a6}.space-languages button[aria-pressed=true]{color:#f5e8cf;border-bottom:1px solid #f5e8cf}.space-header .index-button{border:1px solid #526077;padding:9px 12px}.space-header .fullscreen-button{font-size:22px}.space-app .planet-index{position:absolute;width:300px;top:78px;right:3.4%;padding:24px;border:1px solid #546379;background:#101928;display:flex;flex-direction:column;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:7px 7px #03071280}.planet-index a{margin:0;font:13px Consolas,monospace;display:flex;gap:18px;padding:16px 0;border-bottom:1px solid #ffffff13}.planet-index a span{margin-left:auto}.planet-index a:hover{color:var(--space-cyan)}.space-main{position:relative;flex:1;min-height:0;width:93.2%;margin:0 auto;display:flex;flex-direction:column}.map-intro{padding-top:34px;width:65%;position:relative;z-index:2;pointer-events:none}.map-intro .micro{color:#a5b5bb;margin-bottom:13px}.map-intro .micro span{width:5px;height:5px;display:inline-block;background:#d6b186;margin-right:7px}.map-intro h1 span{color:#90b9b7}.map-intro>p:last-child{font-size:12px;max-width:430px;margin-top:13px;line-height:1.8}.sector-label{position:absolute;top:53px;right:0;text-align:right}.sector-label .micro{display:block;font-size:9px}.sector-coordinate{display:block;font:9px Consolas,monospace;color:#59687d;margin-top:8px}.space-map{position:relative;flex:1;min-height:350px;margin-top:-8px}.travel-paths{position:absolute;width:100%;height:100%;inset:0;overflow:visible;pointer-events:none}.travel-paths ellipse{fill:none;stroke:#7189a0;stroke-width:.6;opacity:.16}.travel-paths path{fill:none;stroke:#7189a0;stroke-width:.65;stroke-dasharray:3 8;opacity:.23}.map-cross{position:absolute;font:20px Consolas,monospace;color:#57667b;opacity:.6}.cross-one{top:43%;left:6%}.cross-two{top:10%;right:8%}.planet{position:absolute;left:var(--x);top:var(--y);width:200px;transform:translate(-50%,-50%);text-align:center;z-index:3;display:flex;flex-direction:column;align-items:center;padding:0 5px 8px;outline-offset:0!important}.planet-art{width:clamp(120px,12vw,186px);height:auto;overflow:visible;image-rendering:pixelated;filter:drop-shadow(6px 10px 0 #00000027);transition:transform .3s,filter .3s;animation:planet-float 7s ease-in-out infinite}.planet:nth-of-type(2n) .planet-art{animation-delay:-3s}.planet-label{font:700 12px/1.5 Consolas,Courier New,monospace;text-transform:uppercase;letter-spacing:2px;color:var(--planet-color);white-space:nowrap}.planet-label small{opacity:.55;font-size:9px;letter-spacing:1px;margin-right:3px}.label-arrow{display:inline-block;opacity:0;font-size:12px;transition:opacity .2s}.planet-subtitle{display:block;font:10px/1.7 Consolas,monospace;color:#95a0b2;white-space:nowrap;margin-top:6px}.planet-enter{position:absolute;top:calc(100% + 5px);opacity:0;transform:translateY(-5px);font:10px Consolas,monospace;color:var(--space-cream);background:#142233;border:1px solid var(--planet-color);padding:8px 12px;text-transform:uppercase;white-space:nowrap;transition:opacity .2s,transform .2s}.planet-enter b{color:var(--planet-color);padding-left:15px}.planet-orbit{position:absolute;top:26%;width:62%;height:42%;border:1px dashed var(--planet-color);border-radius:50%;opacity:0;transition:opacity .2s;transform:rotate(-25deg);z-index:-1}.planet.is-active .planet-art,.planet:focus-visible .planet-art{transform:translateY(-7px);filter:drop-shadow(0 0 15px color-mix(in srgb,var(--planet-color) 25%,transparent))}.planet.is-active .planet-enter,.planet:focus-visible .planet-enter{opacity:1;transform:none}.planet.is-active .planet-orbit{opacity:.5}.planet.is-active .label-arrow{opacity:1}.planet-projects .planet-art{width:clamp(140px,14vw,210px)}.planet-classic .planet-art{width:clamp(90px,9vw,140px)}.spaceship{position:absolute;width:33px;left:0;top:0;pointer-events:none;z-index:6;transform:translate(-50%,-50%)}.ship-body{transform:rotate(var(--ship-angle,35deg));transition:none}.ship-body svg{width:33px;filter:drop-shadow(0 0 9px #97cddc30)}.spaceship>span{font:7px Consolas,monospace;letter-spacing:1px;color:#788ca1;position:absolute;top:52px;left:0;white-space:nowrap}.engine-flame{transform-origin:12px 23px;animation:flame .2s steps(2) infinite alternate}.is-moving .engine-flame{animation-duration:.1s}.ship-target{width:55px;height:55px;border:1px dashed #8aa7bb2b;border-radius:50%;position:absolute;top:-5px;left:-11px}.asteroid{position:absolute;left:9%;top:75%;background:none;border:0;width:38px;padding:5px;transform:rotate(25deg);opacity:.7}.asteroid svg{width:100%}.discovery{position:absolute;left:5%;top:90%;font:10px Consolas,monospace;color:#c1cdb5}.map-bottom-line{display:flex;justify-content:space-between;padding:13px 0 16px;font:8px Consolas,monospace;letter-spacing:1.5px;color:#677b90}.map-bottom-line>span:first-child{color:#b1bbb8}.space-footer{margin:0 3.4%;display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid #ffffff17;min-height:106px;padding:18px 0}.flight-manual>div{font:10px Consolas,monospace;color:#a9b5c1;margin-top:8px}.flight-manual kbd{color:#e9d4b3;font:11px Consolas,monospace;padding-right:5px}.flight-manual kbd:nth-of-type(2){padding-left:14px}.flight-manual small{font:8px Consolas,monospace;color:#66798f}.assistant-message{display:flex;gap:15px;align-items:center}.assistant-icon{font-size:27px;color:#a7b6b7}.assistant-message strong{font:11px Consolas,monospace;color:#d0d9d7}.assistant-message p{font-size:10px;margin-top:5px}.location-hud{min-width:150px;text-align:right}.location-hud strong{display:block;font:11px Consolas,monospace;margin-top:8px}.location-hud .online-dot{margin-right:8px}.location-hud a{font:9px Consolas,monospace;color:var(--space-cyan);display:block;padding-top:6px}.tutorial{position:fixed;z-index:30;bottom:123px;left:50%;transform:translate(-50%);width:min(380px,90%);border:1px solid #667b8a;background:#152230;padding:20px 24px;box-shadow:5px 5px #02071188}.tutorial:after{content:"";position:absolute;width:10px;height:10px;background:#152230;border-right:1px solid #667b8a;border-bottom:1px solid #667b8a;left:50%;bottom:-6px;transform:rotate(45deg)}.tutorial p{font-size:12px;line-height:1.8;margin:12px 0;color:#c3cdd5}.tutorial button{border:0;background:none;padding:0;color:#cde6cb;font:11px Consolas,monospace}.mobile-tip{display:none}.boot-screen{position:fixed;z-index:100;inset:0;background:#080e1c;display:flex;align-items:center;justify-content:center;flex-direction:column;font:18px Consolas,monospace;letter-spacing:3px;animation:boot-out .15s .5s both;pointer-events:none}.boot-screen p{margin:15px 0;font:10px Consolas,monospace}.boot-progress{height:4px;width:230px;background:#82bbae;transform-origin:left;animation:boot-progress .5s steps(8) both}.skip-link{position:fixed;top:-100px;left:20px;z-index:9999;background:#e8e4d7;color:#111b29;padding:10px}.skip-link:focus{top:10px}.route-loading{min-height:100svh;display:grid;place-items:center;background:#080e1c;color:#b9dbcc;font-size:40px}.missing-page{padding:20vh 10%}.missing-page a{display:inline-block;border:1px solid #8bcec8;padding:14px;margin-top:30px}.planet-page{padding-bottom:1px}.retro-page-main{width:min(1120px,88%);margin:0 auto;padding-top:36px;animation:page-in .4s ease both}.back-to-space{display:inline-block;color:#adc6c7!important;text-transform:uppercase;font:11px Consolas,monospace;letter-spacing:1px;padding:8px 0}.retro-page-heading{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:45px 0 48px;border-bottom:1px solid #ffffff21;margin-bottom:40px}.retro-page-heading .micro{color:var(--planet-color);margin-bottom:16px}.retro-page-heading h1{font-size:clamp(30px,4vw,54px);letter-spacing:-1.5px}.retro-page-heading p:last-child{max-width:650px;margin-top:20px;line-height:1.8}.retro-page-heading>.planet-art{width:180px;flex-shrink:0}.retro-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;font:11px Consolas,monospace;color:#a9b6c5}.retro-filters{display:flex;gap:10px;flex-wrap:wrap}.retro-filters button{font:11px Consolas,monospace;background:none;border:1px solid #3a4b60;padding:10px 16px}.retro-filters button[aria-pressed=true]{color:#0a1720;background:var(--planet-color);border-color:var(--planet-color)}.retro-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.retro-project{background:#111b2b;border:1px solid #314055;box-shadow:4px 4px #030915;overflow:hidden}.retro-project-image{position:relative;display:block;height:245px;border-bottom:1px solid #314055;overflow:hidden;background:#dce3e8}.retro-project-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.retro-project-image:hover img{transform:scale(1.04)}.retro-project-image>span{position:absolute;bottom:0;left:0;background:#080e1ce8;padding:8px 14px;font:10px Consolas,monospace;text-transform:uppercase}.retro-project-copy{padding:26px}.retro-project-copy h2{font-size:22px;margin-bottom:14px}.retro-project-copy p{font-size:14px;line-height:1.8;min-height:50px}.retro-chips{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.retro-chips>span{border:1px solid #40546a;padding:6px 10px;font:11px Consolas,monospace;color:#b9ceda;background:#18283a}.retro-project-links{display:flex;flex-wrap:wrap;gap:20px}.retro-project-links a{font:11px/1.8 Consolas,monospace;color:var(--planet-color);border-bottom:1px solid #5b696955}.retro-profile{display:grid;grid-template-columns:260px 1fr;gap:65px}.retro-profile aside>img{width:100%;max-height:320px;object-fit:cover;object-position:top;border:1px solid #5c9c8a;filter:saturate(.65);margin-bottom:24px;box-shadow:7px 7px #2a5b5340}.retro-profile aside h2{margin:12px 0}.retro-profile aside p{margin:12px 0;font-size:13px}.profile-stats{border-block:1px solid #35485a;margin:26px 0;padding:18px 0}.profile-stats>div{display:flex;gap:20px;align-items:center;padding:8px 0}.profile-stats strong{width:45px;font:23px Consolas,monospace;color:var(--planet-color)}.profile-stats small{color:#b1b8c5;font-size:12px}.retro-biography article{padding:0 0 35px;margin-bottom:30px;border-bottom:1px solid #293a4f}.retro-biography h2{margin:8px 0 20px}.retro-biography p{margin-bottom:20px;line-height:1.95;font-size:15px}.mission-log{max-width:850px;margin:0 auto}.mission-log>p{margin-bottom:30px;color:var(--planet-color)}.mission-log article{display:flex;gap:35px;position:relative;padding-bottom:55px}.mission-log article:before{content:"";position:absolute;left:19px;width:1px;height:100%;background:#514665}.log-node{background:#1a1d32;width:40px;height:40px;display:grid;place-items:center;flex-shrink:0;z-index:1;border:1px solid #807398;color:var(--planet-color);font:11px Consolas,monospace}.log-date{font:12px Consolas,monospace;color:var(--planet-color)}.mission-log h2{margin:15px 0 8px}.mission-log h3{font-size:15px;color:#c3bed8;font-weight:400;margin-bottom:20px}.mission-log p{line-height:1.9}.retro-skills{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.retro-skills>p{grid-column:1/-1;color:var(--planet-color)}.retro-skills article{padding:30px;background:#111f30;border-top:3px solid var(--planet-color)}.retro-skills h2{font-size:20px;margin-top:15px}.retro-skills .retro-chips{gap:12px}.communication{max-width:850px;margin:auto}.communication>p:first-child{color:var(--planet-color);margin-bottom:25px}.communication>a{display:flex;align-items:center;gap:30px;padding:30px 15px;border-top:1px solid #594359;transition:background .2s}.communication>a:hover{background:#c082b312}.channel-number{color:var(--planet-color);font:12px Consolas,monospace}.communication a div{flex:1;min-width:0}.communication small{display:block;font:11px Consolas,monospace;color:#b99aaf;margin-bottom:8px}.communication strong{font-size:clamp(14px,2vw,22px);font-weight:400;overflow-wrap:anywhere}.communication a>span:last-child{color:var(--planet-color);font-size:24px}.communication>p:last-child{border-top:1px solid #594359;padding-top:28px}.retro-page-footer{display:flex;justify-content:space-between;gap:25px;border-top:1px solid #ffffff20;margin-top:70px;padding:25px 0;color:#8392a8;font:10px/1.8 Consolas,monospace}.retro-page-footer a{color:#b4c3b9}.retro-project-detail{max-width:850px;margin:auto}.retro-project-detail>img{display:block;width:100%;max-height:500px;object-fit:contain;background:#dce3e8;margin-top:30px}.retro-project-detail h2{margin:30px 0 16px}.retro-project-detail p,.retro-project-detail li{color:#a6b5c7;font-size:15px;line-height:1.9}.retro-project-detail ul{padding-left:20px;margin-bottom:30px}.retro-project-detail li{margin:8px 0}.classic-space-link{font:10px Consolas,monospace;text-decoration:none;justify-self:end}.demo-nav{grid-template-columns:auto 1fr auto auto!important;gap:24px!important}@keyframes twinkle{to{opacity:.25}}@keyframes planet-float{0%,to{translate:0 0}50%{translate:0 -5px}}@keyframes flame{to{transform:scaleY(.55)}}@keyframes boot-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes boot-out{to{opacity:0}}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(min-width:1600px){.space-main{width:88%}.space-header{padding-inline:6%}.space-footer{margin-inline:6%}.map-intro{padding-top:40px}.space-map{min-height:440px}.planet-art{width:200px}.planet-projects .planet-art{width:235px}.planet-classic .planet-art{width:160px}.planet-label{font-size:14px}.planet-subtitle{font-size:11px}}@media(max-width:1100px){.header-center{display:none}.header-actions{gap:15px}.sector-label{max-width:250px}.sector-coordinate,.assistant-message{display:none}.planet{width:175px}.planet-subtitle{font-size:9px}.planet-label{letter-spacing:1px}.map-intro h1{font-size:36px}.retro-profile{gap:35px;grid-template-columns:220px 1fr}.demo-nav-links{justify-self:center}}@media(max-height:820px)and (min-width:761px){.space-map-page{min-height:680px}.space-header{height:76px}.map-intro{padding-top:24px}.map-intro h1{font-size:32px}.map-intro>p:last-child{margin-top:8px}.map-intro .micro{margin-bottom:8px}.space-map{min-height:330px;margin-top:0}.planet-art{width:120px}.planet-projects .planet-art{width:145px}.planet-classic .planet-art{width:100px}.planet-subtitle{font-size:9px}.space-footer{min-height:92px}.tutorial{bottom:110px}}@media(max-width:760px){.space-map-page{height:auto;min-height:100svh;overflow:clip}.space-header{height:80px;padding:0 5%;gap:12px}.space-brand{font-size:12px;gap:9px;letter-spacing:1px}.space-brand small{font-size:6px;letter-spacing:.6px}.brand-symbol{font-size:28px}.header-actions{gap:14px}.fullscreen-button{display:none}.space-header .index-button{font-size:17px;padding:3px 8px}.index-button span{display:none}.space-header button{font-size:10px}.space-languages{gap:9px}.space-main{width:90%}.map-intro{width:100%;padding-top:38px}.map-intro h1{font-size:clamp(29px,7.5vw,42px)}.map-intro>p:last-child{max-width:330px;font-size:12px}.map-intro .micro{font-size:8px}.sector-label{position:static;text-align:left;margin-top:32px}.sector-label .micro{font-size:8px}.space-map{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 10px;padding:28px 0 40px;min-height:0;margin-top:0;flex:none}.planet{position:relative;left:auto;top:auto;width:100%;transform:none;padding:0 0 12px;min-height:190px}.planet-art,.planet-projects .planet-art{width:146px}.planet-classic .planet-art{width:130px;margin-top:16px}.planet-subtitle{white-space:normal;font-size:9px;max-width:150px;min-height:28px}.planet-label{font-size:11px}.planet-enter,.travel-paths,.spaceship,.asteroid,.map-cross,.discovery{display:none}.planet-orbit{width:70%}.map-bottom-line{font-size:7px;gap:20px;letter-spacing:.6px}.space-footer{margin-inline:5%;min-height:100px;padding:20px 0;gap:10px}.flight-manual>div{font-size:0;max-width:170px}.flight-manual>small{display:none}.flight-manual>div:after{content:"TAP / CLICK →";font:10px Consolas,monospace}.flight-manual kbd{display:none}.space-footer .micro{font-size:8px;letter-spacing:1px}.location-hud{min-width:0}.location-hud strong{font-size:10px}.location-hud a{display:none}.tutorial{position:fixed;bottom:20px;width:min(350px,90%)}.tutorial:after{display:none}.tutorial .desktop-tip{display:none}.tutorial .mobile-tip{display:block}.space-app .planet-index{right:5%;top:69px;max-width:90%}.retro-page-main{width:88%;padding-top:24px}.retro-page-heading{padding:28px 0;margin-bottom:28px;gap:10px}.retro-page-heading>.planet-art{width:95px}.retro-page-heading h1{font-size:31px}.retro-page-heading p:last-child{font-size:12px}.retro-project-grid{grid-template-columns:1fr}.retro-toolbar{align-items:flex-start;flex-direction:column}.retro-project-image{height:230px}.retro-profile{grid-template-columns:1fr}.retro-profile aside{max-width:370px}.retro-profile aside img{max-width:240px;display:block}.retro-biography p{font-size:14px}.retro-skills{grid-template-columns:1fr}.mission-log article{gap:20px}.mission-log h2{font-size:20px}.communication>a{padding:25px 0;gap:15px}.retro-page-footer{font-size:8px}.demo-nav{grid-template-columns:1fr auto!important;gap:8px!important}.classic-space-link{position:fixed;bottom:16px;left:16px;padding:12px 16px;border:1px solid #7c877b;background:#e8ece6;z-index:1001;box-shadow:3px 3px #0002}}@media(prefers-reduced-motion:reduce){.space-app *,.space-app *:before,.space-app *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.space-app .boot-screen,.spaceship .engine-flame{display:none}}.mobile-controls{display:none}.retro-page-main:focus,.space-main:focus{outline:none}@media(max-height:820px)and (min-width:761px){.planet-art{width:150px}.planet-projects .planet-art{width:175px}.planet-classic .planet-art{width:125px}}@media(max-width:760px){.flight-manual>div:after{display:none}.mobile-controls{display:block;max-width:180px;font:10px/1.8 Consolas,monospace;color:#a9b5c1;margin-top:8px}}@media(pointer:coarse){.spaceship{display:none}}@media(max-width:760px){.flight-manual .desktop-controls{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}.space-brand,.planet-label,.boot-screen{font-family:Silkscreen,Consolas,monospace}.space-app h1{font-family:Silkscreen,Consolas,monospace;font-weight:400;letter-spacing:-1px;font-size:clamp(27px,2.5vw,42px);line-height:1.35}.map-intro h1{font-size:clamp(27px,2.5vw,42px)}.planet-label{font-size:11px;letter-spacing:0}.space-brand{font-size:14px;letter-spacing:0}.space-brand small{font-family:Consolas,monospace}.retro-page-heading h1{font-size:clamp(23px,3vw,42px);overflow-wrap:anywhere}@media(max-height:820px)and (min-width:761px){.map-intro h1{font-size:27px}}@media(max-width:760px){.map-intro h1{font-size:clamp(24px,6.6vw,32px);letter-spacing:-1px}.space-brand{font-size:11px}.planet-label{font-size:10px}.retro-page-heading h1{font-size:23px}}@media(max-width:760px){.space-languages button{min-width:28px;min-height:40px}.space-header .index-button{min-width:40px;min-height:40px}.header-actions{gap:10px}}.engine-trail{position:absolute;inset:0;width:100%;height:100%;z-index:4;pointer-events:none}.space-map .spaceship{left:0;top:0;height:44px;z-index:6;will-change:transform}.space-map .ship-body{transform:rotate(var(--ship-angle,35deg));transition:none;height:44px}.space-map .engine-flame{animation:idle-engine .32s steps(3) infinite alternate}.space-map .is-moving .engine-flame{animation:flame .12s steps(3) infinite alternate}.space-map .ship-target{width:38px;height:38px;top:3px;left:-3px;opacity:.5}@media(pointer:fine)and (min-width:761px){.space-map.ship-pointer-ready,.space-map.ship-pointer-ready *{cursor:none!important}}.planet-subtitle{opacity:0;transition:opacity .2s}.planet.is-active .planet-subtitle,.planet:focus-visible .planet-subtitle{opacity:1}.planet-label{transition:transform .2s,text-shadow .2s}.planet.is-active .planet-label{transform:scale(1.04);text-shadow:0 0 12px color-mix(in srgb,var(--planet-color) 35%,transparent)}.planet.is-active .planet-art{transform:translateY(-5px) scale(1.03)}.planet-orbit:after{content:"";position:absolute;width:4px;height:4px;background:var(--planet-color);top:10%;left:18%;opacity:.7;animation:orbit-beacon 5s steps(4) infinite}.planet.is-active .planet-orbit{animation:orbit-lock 3s ease-in-out infinite}.travel-paths{z-index:1}.travel-paths ellipse{stroke-dasharray:2 5}.orbit-traveler{fill:#b6d8d2;opacity:.45}.star-layer{position:absolute;inset:-8px}.space-map-page .star-layer-0{transform:translate3d(calc(var(--parallax-x,0px) * -.25),calc(var(--parallax-y,0px) * -.25),0)}.space-map-page .star-layer-1{transform:translate3d(calc(var(--parallax-x,0px) * -.6),calc(var(--parallax-y,0px) * -.6),0)}.space-map-page .star-layer-2{transform:translate3d(calc(var(--parallax-x,0px) * -1),calc(var(--parallax-y,0px) * -1),0)}.space-map-page .nebula{transform:translate3d(calc(var(--parallax-x,0px) * -1.5),calc(var(--parallax-y,0px) * -1.5),0) rotate(-30deg);transition:transform 1.2s ease-out}.asteroid{animation:asteroid-idle 19s ease-in-out infinite alternate}.ambient-events{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}.ambient-object{position:absolute;opacity:0;animation-duration:var(--event-duration);animation-fill-mode:both;animation-timing-function:linear}.ambient-npc{width:22px;animation-name:npc-flight}.ambient-drifter{width:18px;animation-name:asteroid-pass}.ambient-meteor{width:65px;height:1px;background:linear-gradient(90deg,transparent,#bddbd6);animation-name:meteor-pass;transform:rotate(-25deg)}.planet-life{pointer-events:none}.observatory-light{animation:observatory-glow 7s ease-in-out infinite}.observatory-star{animation:pixel-sparkle 9s steps(3) infinite;transform-origin:33px 5px}.terminal-blink{animation:terminal-blink 3.7s steps(2) infinite}.data-packet{animation:data-packet 5s steps(6) infinite}.factory-light{animation:terminal-blink 5s steps(2) infinite}.city-windows{animation:window-glow 8s steps(3) infinite}.city-beacon{animation:terminal-blink 4s steps(2) infinite}.commuter-light{animation:commuter 13s linear infinite}.crystal-sparkle{animation:pixel-sparkle 6.5s steps(3) infinite;transform-origin:29px 4px}.crystal-energy{animation:observatory-glow 5s ease-in-out infinite}.radio-wave{transform-origin:29px 10px;animation:radio-signal 5s ease-out infinite}.radio-wave-two{animation-delay:.7s}.planet.is-active .radio-wave{animation-duration:2.5s;stroke-width:.9px}.relay-beacon{animation:terminal-blink 3s steps(2) infinite}.crt-scanline{animation:crt-scan 5s steps(5) infinite}.crt-cursor{animation:terminal-blink 1.8s steps(2) infinite}.planet-signal{z-index:10;display:flex;align-items:center;gap:22px;border-left:2px solid var(--planet-color);padding-left:16px;min-width:300px}.signal-copy strong{display:block;font:12px Silkscreen,Consolas,monospace;color:var(--planet-color);margin:4px 0}.signal-copy .micro{font-size:8px;letter-spacing:1px}.signal-copy small{display:block;font:8px Consolas,monospace;color:#b5c8ce}.signal-action{border:1px solid var(--planet-color);padding:10px 12px;font:10px Consolas,monospace;white-space:nowrap;text-transform:uppercase}.signal-action:hover{background:#91d9d416}.keyboard-entry{display:none;margin-left:8px;color:#c9e7dd}.touch-entry{margin-left:8px}@media(pointer:fine)and (min-width:761px){.keyboard-entry{display:inline}.touch-entry{display:none}}.sound-control{position:relative;color:#c5d1d5}.space-header .music-toggle{white-space:nowrap;color:#c5d1d5;min-width:48px}.music-panel{position:absolute;top:40px;right:0;z-index:40;background:#111f30;border:1px solid #597185;padding:22px;width:270px;box-shadow:5px 5px #03091590;color:#e6e9dd;font:12px/1.6 Consolas,monospace}.space-header .music-panel button,.music-panel button{border:1px solid #57716b;background:#172f34;padding:10px 12px;width:100%;display:flex;justify-content:space-between;font:11px Consolas,monospace;color:#cce4d6;cursor:pointer;margin:18px 0}.music-panel label{display:flex;justify-content:space-between;font:11px Consolas,monospace}.music-panel input{width:100%;margin:14px 0;accent-color:#9cd1be;cursor:pointer;min-height:25px}.space-app .music-panel p,.music-panel p{font:10px/1.7 Consolas,monospace;color:#a4bcc8;margin:0;text-align:left}.music-panel .micro{color:#a4bcc8;font:10px Consolas,monospace;text-transform:uppercase}.music-panel :focus-visible{outline:2px solid #bce2ce;outline-offset:4px}.sound-floating{position:fixed;z-index:1100;bottom:18px;right:20px;background:#152331;border:1px solid #6b7f8a;padding:10px 14px}.sound-floating .music-toggle{border:0;background:none;color:#d2e4da;font:12px Consolas,monospace;cursor:pointer}.sound-floating .music-panel{top:auto;bottom:45px;right:0}.warp-overlay{position:fixed;inset:0;z-index:200;overflow:hidden;pointer-events:all;cursor:progress}.warp-veil{position:absolute;inset:0;background:repeating-linear-gradient(0deg,#0b1b2c 0px 3px,#112a3d 3px 4px);animation:warp-veil .48s ease both}.warp-overlay>i{position:absolute;top:50%;left:50%;width:100vmax;height:2px;background:linear-gradient(90deg,transparent 10%,#8bd9da99 65%,transparent 95%);transform-origin:0 0;animation:warp-streak .48s ease-out both}.warp-return>i{animation-direction:reverse}.is-warping .planet.is-active .planet-art{animation:departure-pulse .28s ease-out both}.is-warping .spaceship .ship-body{animation:ship-departure .28s ease-in both}@keyframes idle-engine{0%{transform:scaleY(.65)}to{transform:scaleY(.9)}}@keyframes orbit-beacon{50%{opacity:.15}}@keyframes orbit-lock{50%{opacity:.25}}@keyframes asteroid-idle{to{translate:10px -6px;rotate:6deg}}@keyframes npc-flight{0%{opacity:0;transform:translate(calc(var(--direction) * -50vw))}10%,85%{opacity:.4}to{opacity:0;transform:translate(calc(var(--direction) * 65vw))}}@keyframes asteroid-pass{0%{opacity:0;transform:translate(-50px,-20px) rotate(0)}15%,80%{opacity:.35}to{opacity:0;transform:translate(190px,90px) rotate(50deg)}}@keyframes observatory-glow{0%,to{opacity:.25}50%{opacity:.9}}@keyframes pixel-sparkle{0%,65%,to{opacity:0;transform:scale(.5)}75%,85%{opacity:.85;transform:scale(1)}}@keyframes terminal-blink{0%,70%,to{opacity:.85}75%,85%{opacity:.2}}@keyframes data-packet{0%,70%{opacity:0;translate:0 0}75%{opacity:.9}95%,to{translate:11px 0;opacity:0}}@keyframes window-glow{0%,to{opacity:.5}45%{opacity:1}65%{opacity:.3}}@keyframes commuter{0%,15%{opacity:0;translate:0 0}20%,75%{opacity:.7}90%,to{opacity:0;translate:23px -10px}}@keyframes radio-signal{0%,45%,to{opacity:0;transform:scale(.85)}55%{opacity:.7}80%{opacity:0;transform:scale(1.2)}}@keyframes crt-scan{0%{translate:0 0;opacity:0}15%,65%{opacity:.3}85%,to{translate:0 5px;opacity:0}}@keyframes warp-veil{0%{opacity:0}50%,65%{opacity:1}to{opacity:0}}@keyframes warp-streak{0%{opacity:0;transform:rotate(var(--angle)) scaleX(.02)}45%{opacity:.55}to{opacity:0;transform:rotate(var(--angle)) scaleX(1.5)}}@keyframes departure-pulse{to{scale:1.07;opacity:.4}}@keyframes ship-departure{to{translate:var(--departure-x,35px) var(--departure-y,-25px);opacity:.2}}@media(max-width:1100px){.planet-signal{min-width:260px;gap:12px}.signal-copy small{max-width:130px}.signal-action{padding:9px;font-size:9px}}@media(max-width:760px){.engine-trail,.planet-signal{display:none}.planet-subtitle{opacity:1}.music-panel{position:fixed;top:75px;right:5%;width:270px}.space-header .music-toggle{min-height:40px;padding:0}.sound-floating .music-panel{top:auto;bottom:70px;right:20px}.ambient-npc{width:15px;opacity:.25}}@media(max-width:420px){.space-brand{font-size:9px;gap:6px}.space-brand small{font-size:5px;letter-spacing:.3px}.brand-symbol{font-size:23px}.space-languages{gap:3px}.header-actions{gap:6px}.space-header{gap:8px}.space-header .music-toggle{font-size:10px;min-width:40px}}@media(prefers-reduced-motion:reduce){.engine-trail,.ambient-events{display:none!important}.star-layer,.space-map-page .nebula{transform:none!important;transition:none!important}.warp-overlay{display:none}.planet-orbit,.planet-life *,.asteroid{animation:none!important}.planet.is-active .planet-art,.planet.is-active .planet-label{transform:none!important}.space-map .engine-flame{display:block;transform:scaleY(.7)}}@media(min-width:761px)and (max-width:980px){.planet-art{width:125px}.planet-projects .planet-art{width:145px}.planet-classic .planet-art{width:105px}.map-intro>p:last-child{max-width:350px}.space-map{margin-top:14px}.planet-signal{gap:10px;min-width:250px;padding-left:12px}.signal-copy strong{font-size:10px}.flight-manual{max-width:270px}}@media(prefers-reduced-motion:reduce){.orbit-traveler{display:none}}.warp-enter{cursor:none}.ambient-npc svg{transform:scaleX(var(--direction))}.ambient-meteor{transform:rotate(var(--meteor-angle)) scaleX(var(--direction))}@keyframes meteor-pass{0%{opacity:0;translate:calc(var(--direction) * 100px) -50px}20%{opacity:.6}to{opacity:0;translate:calc(var(--direction) * -130px) 65px}}.warp-overlay{z-index:4000}
