body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.project-detail-overlay{align-items:flex-start;display:flex;inset:0;justify-content:flex-end;padding:2.5rem 3rem;pointer-events:none;position:fixed;z-index:1001}.project-detail-panel{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0f172a66;border:1px solid #94a3b847;border-radius:1.2rem;box-shadow:0 35px 90px #0f172a8c;color:#f8fafc;max-height:calc(100vh - 5rem);overflow-y:auto;padding:1.75rem 1.85rem;pointer-events:auto;width:min(420px,92vw)}.project-detail-panel::-webkit-scrollbar{width:6px}.project-detail-panel::-webkit-scrollbar-thumb{background:#94a3b859;border-radius:999px}.project-detail-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.4rem}.project-detail-eyebrow{font-size:.72rem;letter-spacing:.22em;opacity:.65;text-transform:uppercase}.project-detail-title{font-size:1.6rem;font-weight:600;margin-top:.45rem}.project-detail-close{background:#1e293b99;border:1px solid #94a3b866;border-radius:999px;box-shadow:0 4px 12px #0003;color:#f8fafc;cursor:pointer;font-size:.9rem;font-weight:600;padding:.55rem 1.2rem;transition:all .2s ease}.project-detail-close:hover{background:#ef444433;border-color:#ef444480;box-shadow:0 6px 16px #0000004d;transform:translateY(-1px)}.project-detail-description{font-size:.95rem;line-height:1.6;opacity:.95;white-space:pre-wrap}.project-detail-section{margin-top:1.6rem}.project-detail-section-title{font-size:.8rem;letter-spacing:.18em;margin-bottom:.75rem;opacity:.7;text-transform:uppercase}.project-detail-chip-row{display:flex;flex-wrap:wrap;gap:.5rem}.project-detail-chip{background:#4755cd2e;border:1px solid #6366f147;border-radius:999px;color:#dbeafe;font-size:.78rem;padding:.45rem .85rem}.project-detail-image-grid{display:flex;flex-direction:column;gap:1rem}.project-detail-image-wrapper{background:#1e293b99;border:1px solid #94a3b82e;border-radius:.85rem;display:block;height:auto}.project-detail-image-wrapper img{display:block;height:auto;object-fit:contain;width:100%}.project-detail-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:1.8rem}.project-detail-primary,.project-detail-secondary{align-items:center;border-radius:999px;display:inline-flex;font-size:.9rem;font-weight:600;justify-content:center;padding:.6rem 1.25rem;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.project-detail-primary{background:linear-gradient(135deg,#3b82f6eb,#38bdf8eb);box-shadow:0 18px 45px #38bdf859;color:#f8fafc}.project-detail-primary:hover{transform:translateY(-2px)}.project-detail-secondary{background:#94a3b82e;border:1px solid #94a3b859;color:#cbd5f5}.project-detail-secondary:hover{transform:translateY(-2px)}@keyframes panelSlideIn{0%{opacity:0;transform:translateX(40px) scale(.98)}to{opacity:1;transform:translateX(0) scale(1)}}@keyframes overlayFadeIn{0%{background:#0f172a00}to{background:linear-gradient(120deg,#0f172a66,#0f172a1a)}}@keyframes contentStagger{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.project-detail-panel{animation:panelSlideIn .5s cubic-bezier(.16,1,.3,1) forwards}.project-detail-actions,.project-detail-description,.project-detail-header,.project-detail-section{animation:contentStagger .6s ease-out forwards;opacity:0}.project-detail-header{animation-delay:.1s}.project-detail-description{animation-delay:.2s}.project-detail-section:first-of-type{animation-delay:.3s}.project-detail-section:nth-of-type(2){animation-delay:.4s}.project-detail-actions{animation-delay:.5s}.project-detail-close-mobile{background:#ef444426;border:1px solid #ef44444d;border-radius:.8rem;color:#fca5a5;cursor:pointer;display:none;font-weight:600;letter-spacing:.05em;margin-top:2rem;padding:1rem;text-transform:uppercase;transition:all .2s ease;width:100%}.project-detail-close-mobile:active{background:#ef444440;transform:scale(.98)}@media (max-width:768px){.project-detail-overlay{align-items:center;justify-content:center;padding:.5rem}.project-detail-panel{margin-bottom:.5rem;max-height:calc(100vh - 2rem);width:min(550px,96%)}.project-detail-close{display:none}.project-detail-close-mobile{display:block}}@media (max-width:480px){.project-detail-panel{padding:1.1rem 1rem}.project-detail-title{font-size:1.35rem}.project-detail-actions{align-items:stretch;flex-direction:column}}*{box-sizing:border-box;margin:0;padding:0}.App{-webkit-touch-callout:none;background:radial-gradient(ellipse at center,#0f0f23 0,#000 100%);height:100vh;overflow:hidden;position:relative;touch-action:none;user-select:none;-webkit-user-select:none;width:100vw}img{-webkit-user-drag:none;user-drag:none;pointer-events:none}body{background:#000;font-family:Arial,sans-serif}canvas{cursor:grab;display:block}canvas:active{cursor:grabbing}.ui-logo-container{left:.9rem;position:fixed;top:.9rem;z-index:46}.ui-logo{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));height:2.5rem;width:auto}.ui-slider-container{align-items:center;background:#0000;border-radius:.4rem;bottom:.9rem;color:#e5e7eb;display:flex;font-size:.62rem;gap:.5rem;letter-spacing:.1em;padding:.2rem;position:fixed;right:.9rem;-webkit-user-select:none;user-select:none;z-index:41}.ui-slider-label{opacity:.55}.ui-slider-input{accent-color:#60a5fa;background:#0000;cursor:pointer;width:168px}.ui-slider-value{min-width:2.1rem;opacity:.6;text-align:right}.social-buttons-container{bottom:.9rem;display:flex;flex-direction:column;gap:.65rem;left:.9rem;pointer-events:auto;position:fixed;z-index:50}@media (max-width:768px){.ui-logo-container{left:.8rem;top:.8rem}.ui-logo{height:2rem}.controls-bar-container,.ui-slider-container{display:none}.interaction-hints-container{bottom:12px!important}.social-buttons-container{align-items:center;bottom:auto;flex-direction:row;gap:.5rem;left:auto;right:.8rem;top:.8rem}}.controls-bar-container{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1e293b8c;border:1px solid #94a3b847;border-radius:.55rem;bottom:.9rem;box-shadow:0 4px 16px #0f172a8c;color:#f1f5f9;cursor:pointer;font-family:system-ui,sans-serif;font-size:.68rem;font-weight:600;left:50%;letter-spacing:.12em;line-height:1;padding:.28rem .85rem;pointer-events:auto;position:fixed;transform:translateX(-50%);transition:background .16s ease,border-color .16s ease;-webkit-user-select:none;user-select:none;z-index:40}.controls-bar-paused{background:#3b82f647}.interaction-hints-container{align-items:center;bottom:3.5rem;display:flex;flex-direction:column;gap:.3rem;left:50%;pointer-events:none;position:fixed;text-align:center;transform:translateX(-50%);-webkit-user-select:none;user-select:none;width:100%;z-index:35}.interaction-hint-text{color:#fff9;font-family:Inter,system-ui,sans-serif;font-size:.75rem;font-weight:400;letter-spacing:.05em;text-shadow:0 1px 2px #00000080}.interaction-hint-bold{color:#ffffffd9;font-weight:600}.planet-summary-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172ad1;border:1px solid #94a3b859;border-radius:.75rem;box-shadow:0 18px 48px #0f172aa6;color:#f8fafc;max-width:380px;min-width:240px;padding:.75rem 1rem;pointer-events:auto;transition:all .2s ease}.planet-summary-eyebrow{font-size:.85rem;letter-spacing:.08em;margin-bottom:.35rem;opacity:.75;text-transform:uppercase}.planet-summary-title{font-size:1.05rem;font-weight:600;margin-bottom:.5rem}.planet-summary-description{font-size:.85rem;line-height:1.35;margin-bottom:.75rem;opacity:.9}.planet-summary-tech{font-size:.75rem;letter-spacing:.12em;margin-bottom:.75rem;opacity:.7;text-transform:uppercase}.planet-summary-button{background:#3b82f633;border:none;border-radius:999px;color:#bfdbfe;cursor:pointer;font-size:.85rem;letter-spacing:.05em;padding:.45rem 1rem;text-transform:uppercase;transition:background .2s ease}.planet-summary-button:hover{background:#3b82f659}@media (max-width:768px){.ui-logo-container{left:.8rem;top:.8rem}.ui-logo{height:2rem}.ui-slider-container{align-items:flex-end;bottom:auto;flex-direction:column;gap:.2rem;right:.8rem;top:.8rem}.ui-slider-input{width:120px}.ui-slider-label{display:none}.interaction-hints-container{bottom:4.5rem}.planet-summary-card{max-width:300px;min-width:200px;padding:.6rem .85rem}.planet-summary-title{font-size:.95rem}.planet-summary-description{-webkit-line-clamp:5;line-clamp:5;-webkit-box-orient:vertical;display:-webkit-box;font-size:.8rem;line-height:1.3;overflow:hidden}}@font-face{font-display:swap;font-family:Bacley;font-style:normal;font-weight:400;src:url(/static/media/Bacley-Demo.54930a3eb07cdf3e7fed.otf) format("opentype")}.intro-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:radial-gradient(circle at 50% 55%,#00000059,#00000047 42%,#00000038 75%,#0000002e);display:flex;inset:0;justify-content:center;opacity:1;position:fixed;transition:opacity .6s ease;z-index:9999}.intro-overlay.fade-out{opacity:0;pointer-events:none}.intro-content{color:#eaf2ff;position:relative;text-align:center}.intro-ring{background:radial-gradient(closest-side,#75a4ff38,#75a4ff0f 60%,#75a4ff00);border-radius:999px;box-shadow:inset 0 0 80px 20px #3b82f61f,0 0 60px #3b82f62e;filter:blur(.2px);height:220px;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%) scale(.9);width:220px}.intro-content.play .intro-ring{animation:ringPulse 1.6s ease forwards}.intro-subtitle{color:#e2e8f0d9;font-size:clamp(12px,1.6vw,14px);letter-spacing:.28em;opacity:0;text-transform:uppercase;transform:translateY(6px)}.intro-content.play .intro-subtitle{animation:fadeUp .6s ease forwards}.intro-title{background:linear-gradient(90deg,#c7d2fe,#93c5fd 40%,#a78bfa 80%);-webkit-background-clip:text;background-clip:text;color:#0000;font-size:clamp(28px,6.2vw,64px);font-weight:700;letter-spacing:.02em;line-height:1.1;margin-bottom:6px;margin-top:10px;opacity:0;text-shadow:0 0 18px #93c5fd2e;transform:translateY(10px) scale(.98)}.intro-content.play .intro-title{animation:titleIn .9s cubic-bezier(.2,.8,.2,1) .28s forwards}.intro-underline{background:linear-gradient(90deg,#3b82f600,#3b82f6b3,#3b82f600);height:2px;margin:0 auto;opacity:0;transform:scaleX(.2);transform-origin:center;width:220px}.intro-content.play .intro-underline{animation:underlineGrow .6s ease .9s forwards}.intro-tagline{color:#e2e8f0cc;font-size:clamp(13px,1.8vw,16px);letter-spacing:.08em;margin-top:10px;opacity:0;transform:translateY(6px)}.intro-content.play .intro-tagline{animation:fadeUp .6s ease 1.2s forwards}.intro-skip{background:#02061759;border:1px solid #94a3b859;border-radius:999px;bottom:16px;color:#e2e8f0;cursor:pointer;font-size:12px;letter-spacing:.08em;padding:8px 12px;position:absolute;right:16px;text-transform:uppercase}.intro-skip:hover{background:#02061780}@keyframes fadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes titleIn{0%{opacity:0;transform:translateY(10px) scale(.98)}60%{opacity:1;transform:translateY(0) scale(1)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes underlineGrow{0%{opacity:0;transform:scaleX(.2)}30%{opacity:1}to{opacity:1;transform:scaleX(1)}}@keyframes ringPulse{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}35%{opacity:1}60%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:.7;transform:translate(-50%,-50%) scale(1)}}.filter-menu-container{align-items:flex-end;display:flex;flex-direction:column;gap:1rem;padding:1rem;pointer-events:auto;position:fixed;right:2rem;top:50%;transform:translateY(-50%);z-index:45}.filter-chip{align-items:center;background:#0000;border:none;color:#fff6;cursor:pointer;display:flex;font-family:Inter,system-ui,sans-serif;font-size:.75rem;font-weight:500;gap:.8rem;justify-content:flex-end;letter-spacing:.08em;padding:.2rem 0;position:relative;text-transform:uppercase;transition:all .3s ease;white-space:nowrap}.filter-chip:after{background-color:currentColor;border-radius:50%;box-shadow:0 0 0 #fff0;content:"";height:6px;opacity:.3;transition:all .3s ease;width:6px}.filter-chip:hover{color:#fffc;transform:translateX(-4px)}.filter-chip:hover:after{box-shadow:0 0 8px #ffffff80;opacity:.8}.filter-chip.active{color:#60a5fa;font-weight:600}.filter-chip.active:after{background-color:#60a5fa;box-shadow:0 0 10px #60a5fa,0 0 20px #60a5fa66;opacity:1;transform:scale(1.2)}@media (max-width:768px){.filter-menu-container{-ms-overflow-style:none;align-items:center;background:#0000;bottom:auto;flex-direction:row;gap:1.5rem;justify-content:center;mask-image:none;-webkit-mask-image:none;overflow-x:auto;padding:.5rem;right:50%;scrollbar-width:none;top:4.5rem;transform:translateX(50%);width:90%}.filter-menu-container::-webkit-scrollbar{display:none}.filter-chip{font-size:.7rem;gap:.5rem}.filter-chip:hover{transform:none}.filter-chip{flex-direction:column;gap:.3rem}.filter-chip:after{height:4px;width:4px}}
/*# sourceMappingURL=main.41c5fd6c.css.map*/