.sky{width:100%;height:100%;position:fixed;inset:0}.landing{box-sizing:border-box;text-align:center;flex-direction:column;justify-content:safe center;align-items:center;gap:40px;padding:48px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.landing-head{max-width:40rem;animation:.9s ease-out both rise}.landing h1{letter-spacing:-.02em;text-wrap:balance;color:#0000;text-shadow:0 0 40px #a08cff40;background:linear-gradient(120deg,#fff 20%,#cbb8ff 55%,#ffc56b 90%);-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(2rem,6vw,3.6rem);line-height:1.05}.intro{color:var(--muted);margin:14px auto 0;font-size:1.05rem}.galaxies{grid-template-columns:repeat(auto-fit,minmax(150px,200px));justify-content:center;gap:16px;width:min(760px,100%);margin:0;padding:0;list-style:none;display:grid}.galaxies li{animation:.9s ease-out both rise}.galaxies li:nth-child(2){animation-delay:.1s}.galaxies li:nth-child(3){animation-delay:.2s}.galaxies li:nth-child(n+4){animation-delay:.3s}.galaxies a{border:1px solid var(--edge);background:var(--panel);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--ink);border-radius:14px;flex-direction:column;align-items:center;gap:2px;padding:14px 14px 16px;text-decoration:none;transition:transform .25s,border-color .25s,box-shadow .25s;display:flex}.galaxies a:hover,.galaxies a:focus-visible{border-color:hsl(var(--hue) 80% 70% / 55%);box-shadow:0 0 0 1px hsl(var(--hue) 80% 70% / 20%), 0 10px 40px hsl(var(--hue) 80% 55% / 30%);outline:none;transform:translateY(-4px)}.galaxy-name{font-size:1.1rem;font-weight:600}.galaxy-id{color:var(--muted);font:var(--text-tiny) / 1.4 ui-monospace, monospace;letter-spacing:.08em}.landing-links{margin:16px 0 0}.landing-links a{color:var(--accent)}.landing code{color:var(--ink);font-family:ui-monospace,monospace}@keyframes rise{0%{opacity:0;transform:translateY(12px)}}@media (prefers-reduced-motion:reduce){.landing-head,.galaxies li{animation:none}.galaxies a{transition:none}}@media (width<=640px){.landing{gap:28px}.galaxies{grid-template-columns:repeat(2,minmax(0,1fr))}}.about{border:1px solid var(--edge);background:var(--panel);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);text-align:left;border-radius:14px;width:min(40rem,100%);padding:8px 24px 24px;line-height:1.6;animation:.9s ease-out .1s both rise}.about h2{margin:24px 0 8px;font-size:1.15rem}.about p,.about ul{margin:0 0 12px}.about a,.about-back{color:var(--accent)}.about kbd{border:1px solid var(--edge);border-radius:4px;padding:1px 6px;font-family:ui-monospace,monospace}.legend{gap:8px;margin:0;display:grid}.legend div{grid-template-columns:11rem 1fr;gap:12px;display:grid}.legend dt{font-weight:600}.legend dd{color:var(--muted);margin:0}@media (prefers-reduced-motion:reduce){.about{animation:none}}@media (width<=640px){.about{padding:4px 16px 16px}.legend div{grid-template-columns:1fr;gap:0}}:root{--ink:#e8ebf3;--muted:#9aa3b8;--panel:#0a0c16b8;--edge:#ffffff1a;--accent:#ffc56b;--text-small:12.5px;--text-tiny:12px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font:14px/1.45 ui-sans-serif,system-ui,sans-serif}html,body,:where(#root){height:100%;color:var(--ink);background:#020208;margin:0;overflow:hidden}canvas{display:block}.loader{color:var(--muted);pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex;position:fixed;inset:0}.spinner{border:2px solid var(--edge);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.9s linear infinite spin}.loader-label{font-size:var(--text-small)}@keyframes spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:3s}}.hud{pointer-events:none;justify-content:space-between;align-items:flex-start;gap:16px;display:flex;position:fixed;inset:16px}.hud.empty{flex-direction:column;justify-content:center;align-items:center}.panel{pointer-events:auto;background:var(--panel);border:1px solid var(--edge);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:10px;max-width:min(340px,100vw - 32px);padding:12px 14px}.controls{box-sizing:border-box;width:min(370px,100vw - 32px);max-width:none;padding:0;overflow:hidden}.controls .prose{padding:0 14px 12px}.controls .legend{white-space:pre-line}.meta{color:var(--muted);font-variant-numeric:tabular-nums;margin:10px 0 0}.legend{color:var(--muted);font-size:var(--text-small);margin:6px 0 0}.legend.system-keys{margin:0}.file strong{word-break:break-all;font-family:ui-monospace,monospace;font-size:var(--text-small);display:block}.file dl{grid-template-columns:auto 1fr;gap:2px 12px;margin:8px 0 0;display:grid}.file dt{color:var(--muted)}.file dd{font-variant-numeric:tabular-nums;margin:0}.kinds{color:var(--muted);font-size:var(--text-tiny);margin:8px 0 0}@media (width<=640px){.hud{flex-direction:column}}.timeline{box-sizing:border-box;grid-template-columns:auto 1fr;align-items:center;gap:6px 12px;width:min(720px,100vw - 32px);max-width:none;display:grid;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}.timeline button{background:var(--accent);color:#111;width:36px;height:36px;font-size:var(--text-small);cursor:pointer;border:none;border-radius:50%}.timeline input{width:100%;accent-color:var(--accent)}.timeline .commit{white-space:nowrap;text-overflow:ellipsis;grid-column:1/-1;gap:10px;margin:0;display:flex;overflow:hidden}.commit-meta{color:var(--muted);font-variant-numeric:tabular-nums;flex:none}.file-head{align-items:flex-start;gap:8px;display:flex}.file-head strong{flex:1}.file-head button{font:inherit;font-size:var(--text-tiny);color:var(--muted);border:1px solid var(--edge);cursor:pointer;background:0 0;border-radius:4px;flex:none;padding:0 6px}.file-head button:hover{color:var(--ink)}.file h3{font-size:var(--text-tiny);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:10px 0 0;font-weight:600}.column{flex-direction:column;gap:10px;min-height:0;max-height:100%;display:flex}.matches{margin:6px 0 0;padding:0;list-style:none}.matches button{text-align:left;width:100%;font:inherit;font-family:ui-monospace,monospace;font-size:var(--text-tiny);color:var(--ink);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;border-radius:4px;padding:3px 6px;display:block;overflow:hidden}.matches button:hover{background:#ffffff14}.matches .dir{color:var(--muted)}.swatch{vertical-align:middle;border-radius:50%;width:8px;height:8px;display:inline-block}.swatch.in{background:#4fd3ff;box-shadow:0 0 6px #4fd3ff}.swatch.out{background:#ffb347;box-shadow:0 0 6px #ffb347}.trace-label{white-space:nowrap;color:#f2f8ff;text-shadow:0 0 6px #78c8ff99;background:#040812b3;border:1px solid #78c8ff59;border-radius:4px;padding:3px 6px;font:600 11px/1 ui-monospace,monospace;display:block;transform:translateY(-22px)}.planet-label{transform:translateY(-16px)}.planet-label i{opacity:.6;font-style:normal;font-weight:400}.paths{box-sizing:border-box;flex-direction:column;width:min(340px,100vw - 32px);min-height:0;display:flex}.paths .sides{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:10px;min-height:0;display:grid}.paths section{flex-direction:column;min-height:0;display:flex}.paths h3{font-size:var(--text-tiny);color:var(--muted);margin:0;font-weight:600}.paths .count{font-variant-numeric:tabular-nums;font-weight:400}.paths .matches{max-height:30vh;overflow-y:auto}.paths [data-side=in] [aria-current] button{background:#4fd3ff24;box-shadow:inset 2px 0 #4fd3ff}.paths [data-side=out] [aria-current] button{background:#ffb34724;box-shadow:inset 2px 0 #ffb347}.trace-label.aim{border-color:#fff9}.dock{align-items:center;gap:10px;max-width:calc(100vw - 32px);display:flex;position:fixed;bottom:16px;left:50%}.icon-button{border:1px solid var(--edge);background:var(--panel);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:40px;height:40px;color:var(--muted);cursor:pointer;border-radius:50%;flex:none;place-items:center;display:grid}.icon-button:hover,.icon-button:focus-visible{color:var(--ink)}.icon-button[aria-pressed=true],.icon-button[aria-expanded=true]{color:#111;background:var(--accent);border-color:var(--accent)}.flight-keys{background:var(--panel);border:1px solid var(--edge);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--muted);font-size:var(--text-small);border-radius:10px;flex-wrap:wrap;gap:6px 14px;margin:0;padding:8px 14px;list-style:none;display:flex}.flight-keys li{align-items:center;gap:4px;display:flex}.flight-keys span{margin-left:2px}kbd{box-sizing:border-box;border:1px solid var(--edge);min-width:22px;height:22px;color:var(--ink);font:600 var(--text-tiny) / 1 ui-monospace, monospace;background:#ffffff0f;border-bottom-width:2px;border-radius:5px;place-items:center;padding:0 5px;display:inline-grid}.corner{flex-direction:column;align-items:flex-end;gap:10px;max-height:calc(100vh - 32px);display:flex;position:fixed;top:16px;right:16px}.corner-head{align-items:center;gap:10px;max-width:calc(100vw - 32px);display:flex}.file-name{text-overflow:ellipsis;white-space:nowrap;background:var(--panel);border:1px solid var(--edge);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);max-width:min(420px,100vw - 82px);color:var(--ink);font:var(--text-small) / 1.4 ui-monospace, monospace;direction:rtl;border-radius:999px;margin:0;padding:6px 12px;overflow:hidden}.home{position:fixed;top:16px;left:50%;transform:translate(-50%)}.corner-panels{flex-direction:column;gap:10px;min-height:0;display:flex;overflow-y:auto}.corner.left{align-items:flex-start;left:16px;right:auto}.search-panel{box-sizing:border-box;width:min(340px,100vw - 32px);overflow-y:auto}.search-panel input{box-sizing:border-box;width:100%;font:inherit;font-size:var(--text-small);color:var(--ink);border:1px solid var(--edge);background:#ffffff0f;border-radius:6px;padding:6px 8px}.search-panel input:focus-visible{outline:1px solid var(--accent);outline-offset:0}.follow{background:var(--panel);border:1px solid var(--edge);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:999px;gap:4px;padding:4px;display:flex;position:fixed;bottom:16px;left:16px}.follow .icon-button{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-color:#0000;width:36px;height:36px}.follow .icon-button[aria-pressed=true]{background:var(--accent)}@media (width<=640px){.dock{bottom:72px}}
