:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f2f0e8;font-synthesis:none;text-rendering:optimizelegibility;background:#101820;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}body{place-items:center;min-height:100svh;margin:0;padding:2rem 1.5rem;display:grid}main{text-align:center;width:min(100%,32rem)}h1{letter-spacing:-.04em;margin:0 0 1rem;font-size:clamp(2rem,7vw,3rem);font-weight:600}p{color:#aab5b4;margin:0;line-height:1.6}.actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:2rem;display:flex}button,.button{min-width:8rem;min-height:3rem;font:inherit;color:#f2f0e8;cursor:pointer;background:0 0;border:1px solid #53606a;border-radius:.5rem;justify-content:center;align-items:center;padding:.75rem 1.25rem;font-weight:500;text-decoration:none;display:inline-flex}.primary{color:#101820;background:#78f5c5;border-color:#78f5c5}button:hover,.button:hover{border-color:#f2f0e8}button:focus-visible,a:focus-visible{outline-offset:4px;outline:2px solid #f9d85b}.status{min-height:3.2em;margin-top:1.5rem;font-size:.875rem}.games-page{padding:clamp(1.25rem,4vw,3.5rem) 1.25rem;display:block}.catalog,.game-shell{text-align:left;margin-inline:auto}.catalog{width:min(100%,66rem)}.game-shell{width:min(100%,32rem)}.back{color:#aab5b4;align-items:center;min-height:2.75rem;font-size:.875rem;text-decoration:none;display:inline-flex}.back:hover{color:#78f5c5}.page-heading{margin:2.5rem 0 2rem}.page-heading h1{margin-bottom:.7rem}.eyebrow{letter-spacing:.1em;text-transform:uppercase;font-size:.7rem}.page-heading .eyebrow{color:#78f5c5;margin-bottom:1rem}.game-cards{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.game-card{color:inherit;background:#15212a;border:1px solid #33414a;border-radius:1rem;text-decoration:none;overflow:hidden}.game-card:hover{border-color:#78f5c5}.card-art{border-bottom:1px solid #33414a;height:12rem}.card-copy{padding:1.5rem}.card-copy h2{justify-content:space-between;gap:.5rem;margin:.65rem 0;font-size:1.2rem;font-weight:600;display:flex}.card-copy h2 span{color:#aab5b4;font-weight:400}.card-copy>p:not(.eyebrow){min-height:3.2em;font-size:.9rem}.play-link{color:#78f5c5;margin-top:1.5rem;font-size:.85rem;display:block}.catalog-note{margin-top:2rem;font-size:.8rem}.memory-art{background:#1c3434;grid-template-rows:repeat(2,3.5rem);grid-template-columns:repeat(2,3.5rem);place-content:center;gap:.5rem;display:grid}.memory-art span{color:#a9c7bc;background:#2c4946;border-radius:.5rem;place-items:center;font-size:1.75rem;display:grid}.memory-art span:first-child,.memory-art span:last-child{color:#101820;background:#78f5c5}.lights-art{background:#302d22;grid-template-rows:repeat(3,2.25rem);grid-template-columns:repeat(3,2.25rem);place-content:center;gap:.5rem;display:grid}.lights-art span{background:#444032;border-radius:.4rem}.lights-art .lit{background:#f9d85b}.snake-art{background:#1f2b40;place-items:center;display:grid;position:relative}.snake-picture{color:#91b8ff;font-family:monospace;font-size:2.5rem;line-height:1}.food-picture{color:#f9d85b;font-size:1.5rem;position:absolute;top:3rem;right:25%}.game-toolbar{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.game-toolbar p{color:#f2f0e8;font-size:.875rem}.games-page button{touch-action:manipulation;min-width:0;min-height:2.75rem;padding:.6rem .85rem;font-size:.875rem}.games-page button:disabled{cursor:default;opacity:.45}.memory-board,.lights-board{gap:.65rem;display:grid}.memory-board{grid-template-columns:repeat(4,1fr)}.lights-board{grid-template-columns:repeat(5,1fr)}.games-page .tile{aspect-ratio:1;background:#1b2b36;border-color:#42535e;border-radius:.65rem;min-height:0;padding:0;font-size:clamp(1.5rem,6vw,2.3rem)}.games-page .tile:hover{border-color:#f2f0e8}.games-page .tile.revealed{color:#101820;background:#f2f0e8}.games-page .tile.matched{color:#78f5c5;background:#203c36;border-color:#568d78}.games-page .light{color:#728089;font-size:1.1rem}.games-page .light.on{color:#51430e;background:#f9d85b;border-color:#f9d85b}.games-page .light.hint{outline-offset:2px;outline:3px dashed #78f5c5}.puzzle-help{margin-top:1.25rem}.game-feedback{min-height:3.2em;margin-top:1.25rem;font-size:.9rem}.snake-actions{gap:.5rem;display:flex}.snake-board{aspect-ratio:1;touch-action:none;background:#1f2b40;border:1px solid #42535e;border-radius:.5rem;grid-template-columns:repeat(16,1fr);gap:1px;padding:5px;display:grid}.snake-board:focus-visible{outline-offset:4px;outline:2px solid #f9d85b}.snake-cell{border-radius:2px}.snake-cell.body{background:#6b96df}.snake-cell.head{background:#b2cfff}.snake-cell.food{background:#f9d85b;border:3px solid #1f2b40;border-radius:50%}.direction-pad{grid-template-columns:repeat(3,3rem);justify-content:center;gap:.4rem;margin-top:1rem;display:grid}.direction-pad button:first-child{grid-column:2}.direction-pad button:nth-child(2){grid-column:1}.controls-note{text-align:center;margin-top:1rem;font-size:.75rem}@media (max-width:720px){.game-cards{grid-template-columns:1fr}.catalog{max-width:28rem}.page-heading{margin-top:1.75rem}.card-copy>p:not(.eyebrow){min-height:0}}@media (max-width:360px){.game-toolbar{flex-wrap:wrap}.memory-board,.lights-board{gap:.45rem}}.flight-art{background:#91cddd;position:relative;overflow:hidden}.pixel-plane{color:#b33437;text-shadow:3px 3px #ffdf91;font-size:4rem;position:absolute;top:27%;left:43%;transform:rotate(-20deg)}.pixel-cloud{background:#fff4dc;width:4rem;height:1rem;position:absolute;top:25%;left:18%;box-shadow:1rem -1rem #fff4dc,12rem 2rem #fff4dc}.pixel-island{background:#73a06b;width:8rem;height:1.5rem;position:absolute;bottom:1.5rem;left:35%;box-shadow:0 .6rem #e9cb8c,1rem -1rem 0 -.2rem #73a06b}.lander-art{background:#080f13;place-items:center;display:grid}.lander-art svg{fill:none;stroke:#b5cfc2;stroke-width:1.5px;width:100%;max-width:28rem;height:100%}.lander-art .moon-pad{stroke:#78f5c5;stroke-width:3px}.lander-art .moon-flame{stroke:#e8c28b}.lander-art circle{fill:#7a9b8c;stroke:none}#workshop-projects{margin-top:56px}.workshop-art{color:#b9ddb6;background:radial-gradient(at 50% 85%,#314635,#172129);place-items:center;font-size:84px;display:grid}.flight-shell{text-align:left;width:min(100%,76rem);margin-inline:auto}.flight-shell .page-heading{margin:1rem 0 1.25rem}.flight-shell .page-heading h1{font-size:clamp(2rem,4vw,2.5rem)}.flight-shell .page-heading .eyebrow{margin-bottom:.5rem}.flight-stage{aspect-ratio:16/10;background:#98cee0;border:1px solid #53606a;border-radius:.75rem;max-height:78svh;position:relative;overflow:hidden}#flight-canvas{width:100%;height:100%;image-rendering:pixelated;touch-action:none;display:block}#flight-canvas:focus-visible{outline-offset:-3px;outline:2px solid #f9d85b}#instruments{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.flight-hud{pointer-events:none;color:#d8eedc;justify-content:space-between;gap:.5rem;font:.75rem ui-monospace,monospace;display:flex;position:absolute;top:1rem;left:1rem;right:1rem}.flight-hud span{background:#102b3bdf;border:1px solid #8ba4a14d;border-radius:.2rem;padding:.5rem .65rem}.flight-hud b{font-size:1rem;font-weight:500}.flight-warning{color:#ffe7b0;text-align:center;background:#612d23e8;padding:.45rem .75rem;font:600 .8rem ui-monospace,monospace;position:absolute;top:17%;left:50%;transform:translate(-50%)}.flight-overlay{text-align:center;background:#0d1e2ac4;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:1.25rem 1.25rem 18%;display:flex;position:absolute;inset:0}.flight-overlay p{color:#fff;font-size:clamp(1.3rem,4vw,2.2rem);font-weight:600}.flight-overlay span{color:#c5d4d8;max-width:32rem;font-size:.9rem}.flight-overlay label{color:#c5d4d8;flex-direction:column;gap:.5rem;font-size:.75rem;display:flex}.flight-overlay select{font:inherit;color:#f2f0e8;background:#152b37;border:1px solid #687e89;border-radius:.35rem;max-width:100%;padding:.6rem;font-size:.85rem}.flight-toolbar{justify-content:space-between;align-items:center;gap:1rem;margin:1rem 0;display:flex}.flight-toolbar p{font-size:.8rem}.flight-toolbar>div{flex-wrap:wrap;flex-shrink:0;gap:.5rem;display:flex}.flight-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;display:flex}.flight-pad,.engine-controls{align-items:center;gap:.5rem;display:flex}.flight-pad button,[data-flight]{-webkit-user-select:none;user-select:none;touch-action:none}[data-flight].held,#mouse-mode[aria-pressed=true],#flaps[aria-pressed=true]{color:#101820;background:#78f5c5}.engine-controls label{min-width:5rem;font-size:.75rem}.engine-controls output{color:#78f5c5;margin-top:.2rem;font-family:ui-monospace,monospace;display:block}.engine-controls input{accent-color:#78f5c5;width:clamp(5rem,12vw,10rem);min-height:2.75rem}.flight-shell .controls-note{text-align:left;line-height:1.8}.flight-help{color:#aab5b4;margin-top:1.5rem;font-size:.85rem}.flight-help summary{cursor:pointer;color:#d5dfd9;width:-moz-fit-content;width:fit-content;padding-block:.65rem}.flight-help p{max-width:58rem;margin-top:.75rem}.flight-help strong{color:#d5dfd9;font-weight:500}.flight-credit{margin-top:1.25rem;font-size:.7rem}.flight-credit a{color:inherit}.flight-shell:fullscreen{background:#101820;flex-direction:column;gap:.5rem;width:100vw;height:100dvh;padding:.75rem;display:flex;overflow:auto}.flight-shell:fullscreen .flight-stage{aspect-ratio:auto;flex:1;min-height:160px;max-height:none}:is(.flight-shell:fullscreen .page-heading,.flight-shell:fullscreen .back,.flight-shell:fullscreen .controls-note,.flight-shell:fullscreen .flight-help,.flight-shell:fullscreen .flight-credit){display:none}.flight-shell:fullscreen .flight-toolbar{margin:0}.flight-shell:fullscreen .flight-controls{gap:.5rem}@media (max-width:900px){.flight-toolbar{flex-direction:column;align-items:flex-start}.flight-controls{justify-content:center}}@media (max-width:600px){.flight-stage{aspect-ratio:4/5;max-height:none}.flight-hud{font-size:.6rem;inset:.5rem .5rem auto}.flight-hud span{padding:.3rem}.flight-hud b{font-size:.8rem}.flight-overlay{gap:.75rem;padding-bottom:30%}.flight-overlay span{font-size:.8rem}.flight-pad{gap:.3rem;width:100%}.flight-pad button{flex:1;padding:.65rem .3rem;font-size:.7rem}.flight-toolbar>div{gap:.35rem}.flight-toolbar button,.engine-controls button{padding:.5rem .6rem;font-size:.75rem}.engine-controls{width:100%}.engine-controls input{flex:1;min-width:3rem}.engine-controls label{min-width:3.5rem}}@media (max-height:550px) and (orientation:landscape){.flight-stage{aspect-ratio:16/9;max-height:none}}
