.constellation:where(.astro-4ck2yqkv){margin:1.5rem 0 3rem;border-block:1px solid hsl(var(--border));padding-block:clamp(1.25rem,4vw,2rem) .8rem}.constellation-copy:where(.astro-4ck2yqkv){display:grid;grid-template-columns:minmax(0,1.1fr) minmax(16rem,.9fr);gap:2rem;align-items:end}.kicker:where(.astro-4ck2yqkv){margin:0 0 .55rem;color:hsl(var(--muted-foreground));font-size:.65rem;font-weight:650;letter-spacing:.14em;text-transform:uppercase}.constellation-copy:where(.astro-4ck2yqkv) h2:where(.astro-4ck2yqkv){max-width:17ch;margin:0;font-size:clamp(1.35rem,3vw,2.1rem);font-weight:550;letter-spacing:-.035em;line-height:1.15}.constellation-copy:where(.astro-4ck2yqkv)>p:where(.astro-4ck2yqkv){max-width:28rem;margin:0;color:hsl(var(--muted-foreground));font-size:.79rem;line-height:1.7}.avatar-fallback:where(.astro-4ck2yqkv){display:none}.friend-stars:where(.astro-4ck2yqkv) a:where(.astro-4ck2yqkv):has(img.avatar-failed) .avatar-fallback:where(.astro-4ck2yqkv){display:grid}.friend-stars:where(.astro-4ck2yqkv) a:where(.astro-4ck2yqkv):has(img.avatar-failed) img:where(.astro-4ck2yqkv){display:none}.sky:where(.astro-4ck2yqkv){position:relative;min-height:clamp(22rem,53vw,29rem);margin-top:1rem;overflow:hidden;isolation:isolate}.orbits:where(.astro-4ck2yqkv){position:absolute;inset:0;width:100%;height:100%;color:hsl(var(--primary));opacity:.22}.orbits:where(.astro-4ck2yqkv) ellipse:where(.astro-4ck2yqkv),.orbits:where(.astro-4ck2yqkv) line:where(.astro-4ck2yqkv){fill:none;stroke:currentColor;stroke-width:1;stroke-dasharray:4 8}.open-stars:where(.astro-4ck2yqkv) i:where(.astro-4ck2yqkv){position:absolute;left:var(--x);top:var(--y);width:.32rem;height:.32rem;border:1px solid hsl(var(--primary) / .5);border-radius:999px;background:hsl(var(--background));box-shadow:0 0 0 .35rem hsl(var(--primary) / .05);animation:breathe 3.4s var(--d) ease-in-out infinite}.self:where(.astro-4ck2yqkv){position:absolute;z-index:2;left:50%;top:50%;display:grid;justify-items:center;transform:translate(-50%,-50%)}.self-ring:where(.astro-4ck2yqkv){display:grid;width:clamp(5rem,13vw,6.5rem);aspect-ratio:1;place-items:center;border:1px solid hsl(var(--primary) / .65);border-radius:999px;background:hsl(var(--background));box-shadow:0 0 0 .45rem hsl(var(--primary) / .08),0 0 3rem hsl(var(--primary) / .15)}.self:where(.astro-4ck2yqkv) img:where(.astro-4ck2yqkv){width:calc(100% - .45rem);height:calc(100% - .45rem);border-radius:inherit;object-fit:cover}.self:where(.astro-4ck2yqkv) strong:where(.astro-4ck2yqkv){margin-top:.65rem;font-size:.77rem;font-weight:650;letter-spacing:.08em}.self:where(.astro-4ck2yqkv) small:where(.astro-4ck2yqkv){color:hsl(var(--muted-foreground));font-size:.61rem}.friend-stars:where(.astro-4ck2yqkv){margin:0;padding:0;list-style:none}.friend-stars:where(.astro-4ck2yqkv) li:where(.astro-4ck2yqkv){position:absolute;z-index:3;left:var(--x);top:var(--y);transform:translate(-50%,-50%)}.friend-stars:where(.astro-4ck2yqkv) a:where(.astro-4ck2yqkv){position:relative;display:grid;width:3.25rem;aspect-ratio:1;place-items:center;border:1px solid hsl(var(--border));border-radius:999px;background:hsl(var(--background));color:hsl(var(--foreground));text-decoration:none;box-shadow:0 0 0 .3rem hsl(var(--background));transition:border-color .18s ease,transform .18s ease}.friend-stars:where(.astro-4ck2yqkv) a:where(.astro-4ck2yqkv):hover,.friend-stars:where(.astro-4ck2yqkv) a:where(.astro-4ck2yqkv):focus-visible{border-color:hsl(var(--primary));transform:translateY(-.2rem)}.friend-stars:where(.astro-4ck2yqkv) img:where(.astro-4ck2yqkv),.friend-stars:where(.astro-4ck2yqkv) a:where(.astro-4ck2yqkv)>span:where(.astro-4ck2yqkv):first-child{display:grid;width:calc(100% - .35rem);height:calc(100% - .35rem);place-items:center;border-radius:inherit;object-fit:cover;background:hsl(var(--muted))}.star-label:where(.astro-4ck2yqkv){position:absolute;bottom:calc(100% + .6rem);left:50%;display:grid;min-width:10rem;border:1px solid hsl(var(--border));border-radius:.65rem;padding:.6rem;background:hsl(var(--background));box-shadow:0 .7rem 2rem hsl(var(--foreground) / .08);opacity:0;pointer-events:none;transform:translate(-50%,.25rem);transition:opacity .15s ease,transform .15s ease}.friend-stars:where(.astro-4ck2yqkv) a:where(.astro-4ck2yqkv):hover .star-label:where(.astro-4ck2yqkv),.friend-stars:where(.astro-4ck2yqkv) a:where(.astro-4ck2yqkv):focus-visible .star-label:where(.astro-4ck2yqkv){opacity:1;transform:translate(-50%)}.star-label:where(.astro-4ck2yqkv) strong:where(.astro-4ck2yqkv){font-size:.75rem}.star-label:where(.astro-4ck2yqkv) small:where(.astro-4ck2yqkv){color:hsl(var(--muted-foreground));font-size:.65rem}.empty-sky:where(.astro-4ck2yqkv){position:absolute;z-index:2;right:clamp(0rem,5vw,3rem);bottom:clamp(1rem,5vw,3.25rem);max-width:14rem;border-left:1px solid hsl(var(--border));padding-left:.9rem}.empty-sky:where(.astro-4ck2yqkv)>span:where(.astro-4ck2yqkv){color:hsl(var(--muted-foreground));font-size:.61rem;letter-spacing:.1em;text-transform:uppercase}.empty-sky:where(.astro-4ck2yqkv) p:where(.astro-4ck2yqkv){margin:.35rem 0 .65rem;color:hsl(var(--muted-foreground));font-size:.72rem;line-height:1.55}.empty-sky:where(.astro-4ck2yqkv) a:where(.astro-4ck2yqkv){font-size:.7rem;font-weight:600;text-decoration:none}.constellation:where(.astro-4ck2yqkv) footer:where(.astro-4ck2yqkv){display:flex;justify-content:flex-end;gap:.4rem;color:hsl(var(--muted-foreground));font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.6rem;letter-spacing:.08em}@keyframes breathe{50%{opacity:.35;transform:scale(.8)}}@media(max-width:620px){.constellation-copy:where(.astro-4ck2yqkv){grid-template-columns:1fr;gap:.8rem}.sky:where(.astro-4ck2yqkv){min-height:23rem}.orbits:where(.astro-4ck2yqkv){transform:scale(1.35)}.empty-sky:where(.astro-4ck2yqkv){right:.25rem;bottom:.5rem;max-width:10rem}}@media(prefers-reduced-motion:reduce){.open-stars:where(.astro-4ck2yqkv) i:where(.astro-4ck2yqkv){animation:none}.friend-stars:where(.astro-4ck2yqkv) a:where(.astro-4ck2yqkv),.star-label:where(.astro-4ck2yqkv){transition:none}.friend-stars:where(.astro-4ck2yqkv) a:where(.astro-4ck2yqkv):hover,.friend-stars:where(.astro-4ck2yqkv) a:where(.astro-4ck2yqkv):focus-visible{transform:none}}
