:root{color-scheme:dark;--bg:#080f10;--panel:#0b1415;--ink:#d5e9e5;--muted:#8aa5a1;--teal:#68dbc5;--line:#29423e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--ink);font-family:'Courier New',monospace}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--teal);outline-offset:5px}header{min-height:100px;margin:0 5%;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-weight:bold;font-size:22px;letter-spacing:-1px}.brand span{display:block;font-size:12px;letter-spacing:2px;color:var(--muted);margin-top:8px}nav{display:flex;align-items:center;gap:28px}nav a,nav button{font-size:12px;letter-spacing:1px}nav button{border:0;background:none;color:var(--ink)}nav #motion{padding:11px;border:1px solid var(--line);color:var(--muted)}main{max-width:1500px;margin:auto;padding:50px 5% 70px}.hero{display:grid;grid-template-columns:.85fr 1.15fr;gap:7%;align-items:center}.eyebrow{font-size:12px;letter-spacing:2px;color:var(--teal);line-height:1.7}h1{font-size:clamp(45px,6.7vw,96px);line-height:1.04;letter-spacing:-5px;font-weight:normal;margin:25px 0 28px}h1 em{font-style:normal;color:var(--teal)}.text-cursor{font-size:.6em;color:var(--teal)}.bio{font-size:clamp(18px,1.8vw,24px);line-height:1.55;max-width:420px;margin:0 0 35px}.primary{display:inline-flex;gap:32px;padding:16px 19px;border:1px solid var(--teal);font-size:14px;color:var(--teal);box-shadow:4px 4px #1c3a34}.primary:hover{background:#17342f}.small-note{color:var(--muted);font-size:14px;line-height:1.8;margin-top:35px}.universe{min-width:0}.map{position:relative;aspect-ratio:1.16;background:#10191a;border:2px solid #49615d;box-shadow:4px 4px #000;overflow:hidden}.map canvas{position:absolute;inset:0;width:100%;height:100%}.map-top{position:relative;display:flex;justify-content:space-between;gap:10px;padding:12px 15px;font-size:12px;letter-spacing:1px;color:var(--muted);border-bottom:1px solid #29423e66;background:#0c1515a6}.destination{position:absolute;background:#0b1715db;border:1px solid #355b53;color:#b9e5dc;padding:10px 12px;text-align:left;font-size:14px;z-index:2}.destination small{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}.destination:hover{border-color:var(--teal)}.d1{top:18%;left:7%}.d2{bottom:17%;right:6%}#ship{position:absolute;left:50%;top:55%;width:112px;transform:translate(-50%,-50%);pointer-events:none;z-index:1}#ship img{display:block;width:100%;height:132px;object-fit:contain;image-rendering:pixelated;animation:float 4s ease-in-out infinite}#ship span{display:block;text-align:center;font-size:12px;color:var(--muted);white-space:nowrap;margin-top:5px}.coordinates{position:absolute;bottom:13px;left:15px;color:var(--muted);font-size:12px}.transmission{display:flex;gap:10px;align-items:center;padding:14px;margin-top:9px;border:3px ridge #47645d;color:var(--teal);font-size:16px;line-height:1.5;background:#07110f}.transmission>span:first-child{font-size:26px}.console{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px}.console p{font-size:12px;color:var(--muted);line-height:1.6;margin:0}.console p span{display:block}.console button{border:1px solid var(--line);background:none;color:var(--muted);font-size:12px;padding:10px;white-space:nowrap}.touch{display:none}.projects{margin-top:90px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px}h2{font-size:clamp(26px,3vw,40px);font-weight:normal;letter-spacing:-1.5px;margin:12px 0 0}h2 span{color:var(--teal)}.section-heading p{font-size:14px;color:var(--muted);line-height:1.6}.archive-window{border:1px solid #49615d;box-shadow:6px 6px #000}.bar{background:#29433e;border-bottom:1px solid #637e77;padding:9px 13px;font-size:14px;display:flex;justify-content:space-between;align-items:center;color:#d7eee6}.archive-body{padding:25px 30px;background:var(--panel)}.archive-note{font-size:14px;line-height:1.7;color:var(--muted);margin:0 0 22px}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button,.tag{font:inherit;font-size:12px;line-height:1.5;background:transparent;border:1px solid #385b52;padding:7px 11px;color:#adcec4}.filters button[aria-pressed=true]{background:var(--teal);border-color:var(--teal);color:#06241a}.filters button:hover,.tag:hover{border-color:var(--teal)}.result-count{font-size:12px;color:var(--muted);margin:22px 0 14px}.log{border-top:1px solid var(--line);padding:25px 0;display:grid;grid-template-columns:100px 1fr;gap:24px}.log-meta{font-size:12px;color:var(--muted);line-height:1.7}.log-meta strong{display:block;color:var(--teal);font-weight:normal;margin-bottom:6px}.log h3{font-size:22px;font-weight:normal;letter-spacing:-.5px;margin:0 0 12px}.log p{font-size:16px;line-height:1.7;max-width:780px;color:#aec7c0;margin:0 0 17px}.tags{display:flex;flex-wrap:wrap;gap:7px}.tag{padding:4px 9px}.log details{margin-top:18px}.log summary{cursor:pointer;color:var(--teal);font-size:14px}.log details p{margin-top:14px}.status{display:inline-block;font-size:12px;letter-spacing:1px;color:var(--teal);margin-bottom:12px}.archive-footer{padding:12px 18px;display:flex;justify-content:space-between;font-size:12px;color:var(--muted);border-top:1px solid var(--line)}footer{margin:0 5%;border-top:1px solid var(--line);padding:25px 0;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}#cursor{position:fixed;left:0;top:0;width:22px;height:22px;border:1px solid var(--teal);transform:translate(-50%,-50%);pointer-events:none;z-index:10000;opacity:0}#cursor.visible{opacity:.7}dialog{width:min(560px,92vw);max-height:85dvh;border:3px ridge #77938a;padding:0;background:var(--panel);color:var(--ink);box-shadow:12px 12px #0008}dialog::backdrop{background:#020b0ad1;backdrop-filter:blur(3px)}dialog .bar button{background:#b1c5bd;color:#091710;border:2px outset #d3e5dc;font-size:20px;line-height:20px}#content{padding:28px}#content h2{color:var(--teal);margin:0 0 20px}#content p{font-size:16px;line-height:1.7}.dialog-foot{border-top:1px solid var(--line);padding:14px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:12px;color:var(--muted)}.dialog-foot button{border:1px solid var(--teal);background:none;color:var(--teal);padding:9px}.blink{animation:blink 1.4s steps(1) infinite}.paused #ship img,.paused .blink{animation:none}.paused #cursor{display:none}@keyframes float{50%{transform:translateY(-8px) rotate(5deg)}}@keyframes blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}#ship img,.blink{animation:none}}@media(pointer:coarse){#cursor{display:none}.touch{display:flex;gap:9px;margin-top:15px}.touch button{flex:1;min-height:44px;background:#152b24;border:1px solid #456b5e;color:var(--teal);touch-action:none}.console p{font-size:0}.console p span{font-size:12px}.console p:before{content:'Use the touch controls to drift.';font-size:12px}}@media(max-width:800px){header{padding:20px 0;align-items:flex-start}.brand{font-size:18px}nav{gap:12px;flex-wrap:wrap;justify-content:flex-end}nav a{display:none}main{padding-top:35px}.hero{grid-template-columns:1fr;gap:35px}h1{font-size:clamp(55px,12vw,85px);letter-spacing:-3px;margin-top:18px}h1 br{display:none}h1 em:before{content:' '}.bio{max-width:550px;margin-bottom:25px}.small-note{margin-top:25px}.map{aspect-ratio:1.2}.projects{margin-top:60px}.section-heading{display:block}.section-heading p{margin:16px 0 0}.archive-body{padding:20px 18px}.log{grid-template-columns:1fr;gap:10px}.log-meta{display:flex;gap:15px}.log h3{font-size:20px}.archive-footer{font-size:12px;padding:12px}.brand span{letter-spacing:1px;font-size:12px}footer{line-height:1.6}footer span:last-child{max-width:140px;text-align:right}}@media(max-width:420px){nav{max-width:130px}nav button{font-size:12px}.map-top{font-size:12px;letter-spacing:0;padding:10px}.map-top span:last-child{display:none}.destination{font-size:12px;padding:8px}.d1{left:4%;top:16%}.d2{right:4%;bottom:14%}.transmission{font-size:14px}#ship{width:90px}#ship img{height:105px}.archive-footer span:last-child{display:none}}
[hidden]{display:none!important}.planet{position:absolute;display:flex;flex-direction:column;align-items:center;text-align:center;width:142px;z-index:2}.planet-art{display:block;position:relative;width:112px;height:112px;overflow:hidden;transition:transform .2s}.planet-art img{position:absolute;top:0;width:300%;max-width:none;height:100%;image-rendering:pixelated}.planet-one{left:0}.planet-two{left:-100%}.planet-three{left:-200%}.planet:hover .planet-art,.planet:focus-visible .planet-art{transform:translateY(-5px)}.planet-label{font-size:14px;color:var(--teal);letter-spacing:1px;background:#0b1715e8;border:1px solid #355b53;padding:8px;white-space:nowrap}.planet-label small{display:block;font-size:12px;color:var(--muted);letter-spacing:0;margin-bottom:5px}.p-projects{left:5%;top:12%}.p-bio{right:4%;top:11%}.p-skills{left:39%;bottom:8%}#ship{z-index:3;width:70px}#ship img{height:85px}#ship span{font-size:12px}.transmission #flight-status{font-size:14px}.route-page,.projects.route-page{margin-top:0;min-height:65vh}.return-link{display:inline-block;color:var(--teal);font-size:14px;margin:0 0 38px;padding:8px 0}.bio-layout{display:grid;grid-template-columns:220px 1fr;align-items:center;gap:60px;max-width:880px;margin-top:50px}.bio-layout>img{width:100%;max-height:310px;object-fit:contain;image-rendering:pixelated}.bio-layout .bio{font-size:28px;max-width:560px}.skills-intro{font-size:16px;line-height:1.7;color:var(--muted);margin:22px 0 35px}.skill-group{margin:0 0 38px}.skill-group h3{font-size:20px;font-weight:normal}.skill-group>p{font-size:14px;color:var(--muted);line-height:1.7}.skill-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.skill-card{background:var(--panel);border:1px solid var(--line);text-align:left;padding:22px;color:var(--ink);font-size:16px;display:flex;flex-direction:column;gap:20px}.skill-card small{font-size:12px;color:var(--teal)}.skill-card:hover{border-color:var(--teal)}header [aria-current=page]{color:var(--teal);text-decoration:underline;text-underline-offset:6px}header nav{gap:20px}.map{aspect-ratio:1.05}#ship img{animation-duration:5s}@media(max-width:800px){header nav a{display:inline-block;font-size:12px}header nav{max-width:235px;gap:12px}.planet{width:115px}.planet-art{width:82px;height:82px}.planet-label{font-size:12px;padding:6px}.p-skills{left:calc(50% - 57px);bottom:8%}.bio-layout{grid-template-columns:120px 1fr;gap:25px}.bio-layout .bio{font-size:22px}.skill-list{grid-template-columns:repeat(2,1fr)}.map{aspect-ratio:1.15}}@media(max-width:440px){header{flex-direction:column;gap:18px}header nav{max-width:none;width:100%;justify-content:space-between;gap:8px}nav #motion{font-size:12px;padding:8px}.planet{width:105px}.planet-art{width:73px;height:73px}.planet-label small{font-size:12px}.planet-label{letter-spacing:0}.p-projects{left:3%;top:11%}.p-bio{right:3%;top:11%}.p-skills{left:calc(50% - 52px);bottom:8%}#ship{width:52px}#ship img{height:65px}#ship span{display:none}.bio-layout{grid-template-columns:1fr;gap:22px;margin-top:30px}.bio-layout>img{height:140px;width:110px}.skill-list{grid-template-columns:1fr}.map{aspect-ratio:1}.coordinates{font-size:12px}.primary{gap:15px}}@media(prefers-reduced-motion:reduce){.planet-art{transition:none}}
/* Reference-inspired terminal: charcoal space, gray beveled rails, teal phosphor. */
:root{--bg:#1d1d1d;--panel:#101112;--ink:#e2e5e4;--muted:#a5afac;--teal:#6de9cc;--line:#454747}body{background:#1d1d1d}header{min-height:78px;margin:0 3%;border-bottom:3px ridge #646666}.brand{font-size:20px;letter-spacing:0}header nav #motion{border:2px outset #727474;background:#303232;color:#d8dfdc}main{padding:25px 3% 50px;max-width:1500px}.hero{display:flex;flex-direction:column;gap:22px}.intro{width:100%;display:grid;grid-template-columns:1fr 1fr;column-gap:30px;align-items:center}.intro .eyebrow{grid-column:1;font-size:12px;color:#959f9b}.intro h1{grid-column:1;font-size:38px;line-height:1.2;letter-spacing:-2px;margin:5px 0 8px}.intro h1 br{display:none}.intro h1 em:before{content:' '}.intro h1 em{color:#e1e8e4}.text-cursor{color:var(--teal)}.intro .bio{grid-column:2;grid-row:1/3;font-size:18px;margin:0;max-width:470px;color:var(--teal)}.intro .primary{display:none}.intro .small-note{grid-column:1/3;font-size:12px;letter-spacing:1px;margin:8px 0 0;color:#a4aaa6}.universe{width:100%}.map{height:clamp(410px,57vh,680px);aspect-ratio:auto;background:#1e1e1e;border:0;border-bottom:4px ridge #8a8c8b;box-shadow:none}.map-top{background:transparent;border:0;font-size:12px;padding:14px 18px;color:#a4a8a6}.planet{width:180px}.planet-art{width:130px;height:173.333px;margin-bottom:-24px}.planet-art img{width:400%;height:100%;max-width:none}.planet-one{left:-100%}.planet-two{left:-200%}.planet-three{left:-300%}.p-projects{left:12%;top:9%}.p-bio{right:13%;top:6%}.p-skills{left:calc(50% - 90px);bottom:7%}.planet-label{background:#111313;border:2px outset #626766;color:#7df7df;box-shadow:3px 3px #090a0a;letter-spacing:2px;font-weight:bold}.planet-label small{color:#a6b0ab;font-weight:normal}.p-bio .planet-label{border-bottom-color:#a896e6}.p-skills .planet-label{border-bottom-color:#e7a3d5}#ship{width:110px;will-change:left,top}#ship>.astronaut-sprite{display:block;margin:0;width:110px;height:146.667px;position:relative;overflow:hidden}#ship .astronaut-sprite img{position:absolute;top:0;left:0;width:400%;height:100%;max-width:none;object-fit:fill;animation:none;image-rendering:pixelated}#ship>span:last-child{margin-top:-25px;font-size:12px;color:#c7ceca}#cursor{width:9px;height:9px;border:1px solid #7df7df;box-shadow:0 0 0 1px #111;will-change:transform;transition:none}#cursor.visible{opacity:1}.transmission{background:#0a0c0c;border:6px ridge #6e7371;margin:0 4%;padding:13px 18px;color:#58dec9;font-weight:bold;text-shadow:1px 1px #26766a;box-shadow:0 3px #080909;gap:12px}.transmission #flight-status{font-size:clamp(16px,2vw,23px);line-height:1.4}.transmission>span:first-child{font-size:30px}.signal-track{height:12px;background:#101112;border:3px inset #626563;margin:11px 15% 0}.signal-track span{display:block;width:6%;height:100%;background:#da669f;box-shadow:2px 0 #8666d1}.console{margin:14px 4% 0}.console button{border:2px outset #6c706e;background:#303332;color:#cfdbd5}.coordinates{color:#a4ada7}.bar{background:#454a48;border:2px outset #868c88;color:#e0e5e2;font-weight:bold}.archive-window{border:4px ridge #7c817e;box-shadow:6px 6px #0b0d0c}.archive-body{background:#101212}.archive-note{margin-top:20px}.section-heading{border-bottom:2px groove #686b69;padding-bottom:20px}.route-page .eyebrow{color:#8cefd9}.log-meta span{font-size:12px;line-height:1.6}.log{grid-template-columns:135px 1fr;gap:30px}.log h3{font-size:24px;color:#e5eee9}.log .organization{font-size:14px;color:#aab5af;margin:0 0 15px}.status{color:#7bedcc}.legend{display:flex;gap:10px 22px;flex-wrap:wrap;font-size:12px}.legend span:before{content:'■ ';color:var(--tag)}[data-color=cyan]{--tag:#7fefff;--tag-bg:#102b31}[data-color=purple]{--tag:#c0a2ff;--tag-bg:#261a3d}[data-color=pink]{--tag:#ff9be9;--tag-bg:#361b32}[data-color=teal]{--tag:#7cf3cb;--tag-bg:#133128}.legend span{color:var(--tag)}.tag,.filters button{color:var(--tag,#c5d5ce);background:var(--tag-bg,#1b2420);border:1px solid var(--tag,#697d73);font-size:14px}.filters button[aria-pressed=true]{background:var(--tag,#7cf3cb);border-color:var(--tag,#7cf3cb);color:#111416;box-shadow:2px 2px #000}.filters button:hover,.tag:hover{border-color:white}.skill-group h3{color:var(--tag)}.skill-card{border:2px outset #777e79;border-left:4px solid var(--tag);background:var(--tag-bg);color:var(--tag);box-shadow:3px 3px #0a0c0b}.skill-card small{color:#c3cbc5}.skill-card:hover{border-color:var(--tag)}div.skill-card{cursor:default}.bio-astronaut{display:block;position:relative;width:210px;height:280px;overflow:hidden}.bio-astronaut img{position:absolute;top:0;left:0;width:400%;height:100%;max-width:none;image-rendering:pixelated}.bio-layout{border:4px ridge #787d79;background:#151717;padding:25px;max-width:1000px}.bio-layout .primary{border:2px outset #6f8178;background:#1a2922;box-shadow:3px 3px #000}.archive-footer,footer{color:#aeb7b1}footer{margin:0 3%;border-top:3px ridge #646666}.return-link{color:#7bf1d0}.primary{box-shadow:3px 3px #000}
@media(max-width:800px){.intro h1{font-size:32px;letter-spacing:-1px}.intro .bio{font-size:16px}.map{height:470px}.planet{width:140px}.planet-art{width:105px;height:140px;margin-bottom:-20px}.p-projects{left:5%;top:9%}.p-bio{right:5%;top:9%}.p-skills{left:calc(50% - 70px);bottom:7%}.planet-label{letter-spacing:1px}.log{grid-template-columns:1fr;gap:10px}.bio-layout{grid-template-columns:130px 1fr;gap:20px}.bio-astronaut{width:130px;height:173.333px}.bio-layout .bio{font-size:20px}.transmission{margin:0 1%;border-width:5px;padding:12px}.console{margin:14px 1% 0}}
@media(max-width:440px){main{padding-top:20px}.intro{display:block}.intro h1{font-size:30px;margin:9px 0 13px}.intro .bio{font-size:16px;line-height:1.5}.intro .small-note{font-size:12px;line-height:1.7;margin-top:14px}.map{height:420px}.planet-art{width:85px;height:113.333px;margin-bottom:-16px}.planet{width:125px}.p-projects{left:1%;top:8%}.p-bio{right:1%;top:10%}.p-skills{left:calc(50% - 62px);bottom:9%}.planet-label{letter-spacing:0}.planet-label small{font-size:12px}.coordinates{bottom:10px}.bio-layout{grid-template-columns:1fr;padding:20px}.bio-astronaut{width:110px;height:146.667px}.log h3{font-size:21px}.filters button{font-size:14px}.transmission #flight-status{font-size:16px}.map-top{padding:10px}.legend{gap:10px}.archive-body{padding:18px 14px}}
/* Restore the first iteration's left-column / right-scene layout. */
:root{--bg:#000;--panel:#000}body{background:#000}header{height:96px;margin:0 4%;border-bottom:1px solid #353b38}header>nav>a{display:none}main{max-width:1600px;margin:auto;padding:48px 4% 32px}.hero{display:grid;grid-template-columns:minmax(290px,.8fr) minmax(480px,1.6fr);gap:6%;align-items:start}.intro{display:block;padding-top:10px;min-width:0}.intro .eyebrow{font-size:12px;letter-spacing:2px;line-height:1.7;color:var(--teal);margin-bottom:26px;overflow-wrap:anywhere}.intro h1{font-size:clamp(38px,4.2vw,66px);line-height:1.06;letter-spacing:-3px;font-weight:normal;margin:0 0 24px}.intro h1 br{display:block}.intro h1 em{color:var(--teal)}.intro h1 em:before{content:none}.intro .bio{font-size:18px;line-height:1.65;color:#c3d3cb;max-width:355px;margin:0}.text-cursor{display:none}.intro .side-nav{display:block;max-width:360px;margin:30px 0;width:100%}.side-nav a{display:flex;align-items:center;width:100%;border-top:1px solid #353b38;padding:15px 0;font-size:16px;letter-spacing:0;color:#e0eae5}.side-nav a:last-child{border-bottom:1px solid #353b38}.side-nav a span{color:#94a79c;font-size:12px;margin-right:20px}.side-nav a b{color:var(--teal);margin-left:auto}.side-nav a:hover{color:#e4a3e3}.captain-log{max-width:360px;border:1px solid #767e79;box-shadow:4px 4px #181c19;background:#000}.captain-log .bar{font-size:14px;padding:7px 9px;background:#252b27;border:1px outset #777f79;font-weight:normal}.captain-log p{font-size:14px;line-height:1.8;margin:12px;padding:0 2px}.captain-log p span{color:#9eada4}.intro .small-note{font-size:12px;letter-spacing:1px;margin-top:26px;color:#96a79c;line-height:1.7}.universe{width:100%;min-width:0}.map{height:auto;aspect-ratio:1;max-height:760px;background:#000;border:2px solid #7f8781;box-shadow:5px 5px #181c19}.map-top{background:#000;color:#8b9e91}.planet{width:140px}.planet-art{width:100px;height:133.333px;margin-bottom:-23px}.planet-label{font-size:12px;letter-spacing:1px;background:#000;border:1px solid #59695e;padding:7px}.planet-label small{font-size:12px}.p-projects{top:9%;left:4%}.p-bio{top:9%;right:4%}.p-skills{bottom:12%;left:auto;right:6%}#ship{width:125px}#ship>.astronaut-sprite{width:125px;height:166.667px}#ship>span:last-child{margin-top:-28px}.transmission{margin:14px 0 0;background:#000;border:5px ridge #787e79;padding:13px 12px}.transmission #flight-status{font-size:clamp(15px,1.6vw,22px);line-height:1.45}.signal-track{margin:12px 12% 0;background:#000}.console{margin:19px 0 0;gap:12px}.console p{font-size:12px}.console button{background:#151a16}.coordinates{background:#000}.archive-body,.bio-layout{background:#000}.skill-card{background:#000}.archive-window{background:#000}.map canvas{background:#000}footer{margin:0 4%;border-top:1px solid #353b38;padding:23px 0}.route-page{background:#000}
@media(max-width:1050px) and (min-width:701px){.hero{grid-template-columns:minmax(260px,.85fr) minmax(340px,1.15fr);gap:4%}.intro h1{font-size:42px}.planet{width:112px}.planet-art{width:80px;height:106.667px;margin-bottom:-20px}.planet-label{letter-spacing:0;padding:6px}.map{min-height:420px}.console{align-items:flex-start}.transmission #flight-status{font-size:16px}.intro .bio{font-size:16px}.captain-log p{font-size:14px}}
@media(max-width:700px){header{height:auto;min-height:82px;flex-direction:row;align-items:center;padding:15px 0}header>nav{width:auto;max-width:115px}main{padding:24px 4% 32px}.hero{display:flex;flex-direction:column;gap:24px}.intro{display:contents}.intro .eyebrow{order:0;margin:0}.intro h1{order:1;font-size:42px;margin:0}.intro h1 br{display:none}.intro h1 em:before{content:' '}.intro .bio{order:2;font-size:16px;max-width:none;margin:0}.universe{order:3}.intro .side-nav{order:4;max-width:none;margin:5px 0}.captain-log{order:5;max-width:none;width:100%}.intro .small-note{order:6;margin:0}.map{height:auto;aspect-ratio:1;min-height:360px}.planet{width:115px}.planet-art{width:82px;height:109.333px;margin-bottom:-20px}.p-projects{left:3%}.p-bio{right:3%}.p-skills{right:5%;bottom:13%}.transmission #flight-status{font-size:16px}#ship{width:110px}#ship>.astronaut-sprite{width:110px;height:146.667px}.console{align-items:center}.brand{font-size:18px}.brand span{font-size:12px}.side-nav a{display:flex!important}.planet-label{letter-spacing:0}.map-top{font-size:12px}}
#page-stars{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:-1}body{isolation:isolate}.planet{width:185px}.planet-art{width:175px;height:175px;margin-bottom:-10px}.planet-art img{width:300%;height:100%}.planet-one{left:0}.planet-two{left:-100%}.planet-three{left:-200%}.p-projects{left:1%;top:7%}.p-bio{right:1%;top:7%}.p-skills{right:7%;bottom:9%}#ship>.astronaut-sprite{transform:rotate(var(--astronaut-angle,0deg));transform-origin:50% 50%;transition:transform 90ms linear;will-change:transform}.empty-logs{padding:25px 0;font-size:16px;line-height:1.7;color:var(--muted)}@media(max-width:1050px){.planet{width:145px}.planet-art{width:138px;height:138px;margin-bottom:0}.p-projects{left:0}.p-bio{right:0}.p-skills{right:4%;bottom:8%}}@media(max-width:440px){.planet{width:135px}.planet-art{width:128px;height:128px}.p-projects{top:8%;left:0}.p-bio{top:8%;right:0}.p-skills{bottom:10%;right:3%}}@media(prefers-reduced-motion:reduce){#ship>.astronaut-sprite{transition:none}}.paused #ship>.astronaut-sprite{transition:none}
/* Compact central cluster with coarse pixel art. */
.planet{width:170px}.planet-art{width:160px;height:160px;margin-bottom:-10px}.p-projects{left:calc(34% - 85px);top:calc(35% - 80px);right:auto;bottom:auto}.p-bio{left:calc(65% - 85px);top:calc(34% - 80px);right:auto;bottom:auto}.p-skills{left:calc(52% - 85px);top:calc(66% - 80px);right:auto;bottom:auto}.planet-label{padding:6px;background:#070713e8;border-color:#8af1e9;box-shadow:3px 3px #100a22}.planet-label small{font-size:12px}.map canvas{image-rendering:pixelated}@media(max-width:1050px){.planet{width:132px}.planet-art{width:126px;height:126px;margin-bottom:-6px}.p-projects{left:calc(31% - 66px);top:calc(31% - 63px)}.p-bio{left:calc(69% - 66px);top:calc(32% - 63px)}.p-skills{left:calc(51% - 66px);top:calc(66% - 63px)}}@media(max-width:440px){.planet{width:120px}.planet-art{width:114px;height:114px}.p-projects{left:calc(30% - 60px);top:calc(31% - 57px)}.p-bio{left:calc(70% - 60px);top:calc(32% - 57px)}.p-skills{left:calc(51% - 60px);top:calc(66% - 57px)}}
.intro h1,.intro h1 em,.brand,#bio-heading{font-weight:700}.quick-links{padding:8px 13px}.quick-links a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;font-size:14px;line-height:1.5;color:var(--teal)}.quick-links a+a{border-top:1px solid #353b38}.quick-links a:hover{color:#ff9be9}.planet{width:190px}.planet-art{width:184px;height:184px}.p-projects{left:calc(29% - 95px);top:calc(30% - 92px)}.p-bio{left:calc(71% - 95px);top:calc(31% - 92px)}.p-skills{left:calc(51% - 95px);top:calc(71% - 92px)}@media(max-width:1050px){.planet{width:150px}.planet-art{width:144px;height:144px}.p-projects{left:calc(28% - 75px);top:calc(28% - 72px)}.p-bio{left:calc(72% - 75px);top:calc(29% - 72px)}.p-skills{left:calc(51% - 75px);top:calc(70% - 72px)}}@media(max-width:440px){.planet{width:132px}.planet-art{width:128px;height:128px}.p-projects{left:calc(27% - 66px);top:calc(27% - 64px)}.p-bio{left:calc(73% - 66px);top:calc(28% - 64px)}.p-skills{left:calc(51% - 66px);top:calc(71% - 64px)}}
.home-preview{max-width:360px;margin:-10px 0 26px;border:1px solid #7cded1;background:#030a09;box-shadow:4px 4px #15172a;animation:preview-open 240ms ease-out}.home-preview .bar{background:#24332e}.home-preview .bar button{border:1px outset #87988f;background:#34413a;color:#e1f9ed;font:inherit;cursor:pointer;padding:0 6px}.home-preview>a{display:block;padding:18px;color:#d4e8df}.home-preview>a:hover{background:#0b1d19}.home-preview h2{font-size:23px;font-weight:bold;letter-spacing:0;margin:0 0 12px;color:var(--teal)}.home-preview p{font-size:14px;line-height:1.7;margin:0 0 16px}.preview-cta{font-size:14px;color:#ec9adf}.side-nav a[aria-expanded=true]{color:#ec9adf}.planet[aria-expanded=true] .planet-label{border-color:#ec9adf}#ship>.astronaut-sprite{transition:transform 220ms ease-out}@keyframes preview-open{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:700px){.home-preview{order:5;width:100%;max-width:none;margin:0}.captain-log{order:6}.intro .small-note{order:7}}@media(prefers-reduced-motion:reduce){.home-preview{animation:none}#ship>.astronaut-sprite{transition:none}}
.intro h1{letter-spacing:-.8px;line-height:1.13}.brand{letter-spacing:.5px}.planet-label{border:3px ridge #99d9d0;box-shadow:4px 4px #111025,inset 0 0 0 2px #0d1818;padding:8px 10px;background:#03090ceF}.planet-label small{margin-bottom:7px}.console{justify-content:flex-start}.console p{font-size:14px;line-height:1.6}#ship[data-landed]>.astronaut-sprite{transform:rotate(0deg)}@media(max-width:440px){.intro h1{font-size:40px;letter-spacing:-.5px}.planet-label{padding:6px;border-width:3px}}
.p-projects{left:calc(71% - 95px);top:calc(31% - 92px)}.p-bio{left:calc(29% - 80px);top:calc(30% - 78px);width:160px}.p-bio .planet-art{width:156px;height:156px}.skill-card[aria-pressed=true]{outline:2px solid var(--tag);outline-offset:3px}.skill-projects{border:3px ridge #78948a;background:#000;padding:24px;scroll-margin-top:25px}.skill-projects h3{font-size:24px;color:var(--teal);margin:0 0 15px}.skill-projects>p{font-size:14px;color:var(--muted)}.skill-project-result{padding:20px 0;border-top:1px solid var(--line)}.skill-project-result h4{font-size:21px;font-weight:normal;margin:0 0 12px}.skill-project-result p{font-size:16px;line-height:1.7}.skill-project-result .organization{font-size:14px;color:var(--muted)}.skill-project-result a{display:inline-block;color:var(--teal);padding:8px 0;font-size:14px}@media(max-width:1050px){.p-projects{left:calc(72% - 75px);top:calc(29% - 72px)}.p-bio{left:calc(28% - 65px);top:calc(28% - 61px);width:130px}.p-bio .planet-art{width:122px;height:122px}}@media(max-width:440px){.p-projects{left:calc(73% - 66px);top:calc(28% - 64px)}.p-bio{left:calc(27% - 60px);top:calc(27% - 54px);width:120px}.p-bio .planet-art{width:108px;height:108px}.skill-projects{padding:18px}}
.intro .file-stack{display:flex;flex-direction:column;gap:14px;align-items:stretch;max-width:360px;width:100%;margin:28px 0}.file-window{border:3px outset #9dd7cc;background:#07110e;box-shadow:5px 5px #14201c;color:#dbece5}.file-window summary{position:relative;display:flex;align-items:center;gap:10px;list-style:none;cursor:pointer;background:#22342e;padding:18px 15px;font-size:23px;font-weight:bold;line-height:1.2;letter-spacing:.5px}.file-window summary::-webkit-details-marker{display:none}.file-icon{font-size:18px;color:#83e9d2}.file-toggle{margin-left:auto;border:2px outset #b5d5c7;background:#33453d;min-width:29px;text-align:center;font-size:20px;line-height:26px}.file-toggle:before{content:'+'}.file-window[open] .file-toggle:before{content:'×'}.file-window[open] summary{border-bottom:2px groove #5c776b}.file-content{display:block;padding:18px;color:#d4e8df}.file-content p{font-size:15px;line-height:1.7;margin:0 0 14px}.file-content>span{font-size:14px;color:#88eed8}.file-content:hover{background:#10271e}.file-window summary:hover{background:#2c4037}@media(max-width:700px){.intro .file-stack{order:4;max-width:none;margin:0}.captain-log{order:5}.intro .small-note{order:6}}@media(pointer:fine){body:not(.paused) .map,body:not(.paused) .map *{cursor:none}}

html{scroll-padding-top:90px}body{overflow-x:hidden}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #98f4e4;outline-offset:5px}.skip-link{position:fixed;top:-100px;left:16px;z-index:11000;background:#000;color:#a9ffe9;padding:12px}.skip-link:focus{top:16px}
.launch-active{overflow:hidden}#launch-screen[hidden]{display:none}#launch-screen{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;background:#000;padding:max(20px,env(safe-area-inset-top)) 20px;color:#b2f4e5;cursor:auto}.launch-panel{width:min(430px,100%);border:4px outset #99cec1;background:#07110e;box-shadow:8px 8px #182721;font-family:monospace}.launch-panel .bar{padding:12px;font-size:12px}.launch-body{text-align:center;padding:28px 22px}.launch-port{height:180px;display:grid;place-items:center;border:3px inset #749d90;background:#000;margin-bottom:24px}.launch-port .astronaut-sprite{transform:scale(1.7);animation:launch-float 1.6s ease-in-out infinite alternate}.launch-title{font-size:18px;line-height:1.5;letter-spacing:1px}.launch-track{height:14px;border:1px solid #a2d3c5;padding:3px}.launch-track>span{display:block;height:100%;background:#82ead4;transform-origin:left;animation:launch-fill 1.8s ease-out both}#launch-status{font-size:13px;min-height:36px;color:#b6cfc5}#skip-launch{font:13px monospace;padding:10px 16px;border:2px outset #96c4b5;background:#22342e;color:#e3f6ed;cursor:pointer}@keyframes launch-float{from{translate:0 5px}to{translate:0 -5px}}@keyframes launch-fill{from{transform:scaleX(.03)}to{transform:scaleX(1)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}#launch-screen{display:none}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.launch-port .astronaut-sprite{display:block;position:relative;width:90px;height:120px;overflow:hidden;transform:none}.launch-port .astronaut-sprite img{position:absolute;left:0;top:0;width:400%;height:100%;max-width:none;object-fit:fill;image-rendering:pixelated}

.project-photo{margin:22px 0;max-width:760px;border:2px solid #527e71;background:#000;padding:5px}.project-photo img{display:block;width:100%;height:auto;image-rendering:auto}
