:root[data-ui=constellation] #home-classic{display:none}:root[data-ui=constellation] #canvas-stage{display:block}:root[data-ui=classic] #canvas-stage{display:none}:root[data-ui=constellation] body{overflow:hidden}:root[data-ui=constellation] #canvas-stage{position:fixed;inset:64px 0 0;z-index:30;perspective:1200px;perspective-origin:center center;transform-style:preserve-3d;touch-action:none;overscroll-behavior:none;overflow:hidden;-moz-user-select:none;user-select:none;-webkit-user-select:none;background:radial-gradient(circle at 22% 21%,#131f33,#131f3300 46%),radial-gradient(circle at 74% 30%,#22d3ee12,#22d3ee00 42%),radial-gradient(ellipse at 50% 50%,#0d1526,#060910);color:#eaeaea;animation:star-fade-in .32s cubic-bezier(.16,1,.3,1) both}:root[data-ui=constellation] #canvas-stage:before{content:"";position:absolute;inset:-10%;background-image:radial-gradient(rgba(255,255,255,.5) 1px,transparent 1px);background-size:28px 28px;opacity:.04;pointer-events:none;z-index:0}@keyframes star-fade-in{0%{opacity:0}to{opacity:1}}:root[data-ui=constellation] #canvas-cards{position:absolute;inset:0;z-index:2;transform-style:preserve-3d}:root[data-ui=constellation] .star-card{position:absolute;left:50%;top:50%;width:204px;height:177px;transform-origin:center center;border-radius:12px;border:1px solid color-mix(in srgb,var(--cat, #22D3EE) 42%,transparent);background:#121622b8;overflow:hidden;cursor:grab;will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden;transition:border-color .2s ease-out,box-shadow .2s ease-out,width .24s cubic-bezier(.34,1.56,.64,1),height .24s cubic-bezier(.34,1.56,.64,1),border-radius .24s ease-out}:root[data-ui=constellation] .star-card:not(.star-blur){background:#0e121cf0}:root[data-ui=constellation] .star-card.star-hover{border-color:color-mix(in srgb,var(--cat, #22D3EE) 92%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--cat, #22D3EE) 45%,transparent),0 14px 44px -8px #000000bf,0 0 24px -4px color-mix(in srgb,var(--cat, #22D3EE) 35%,transparent);transition:border-color .18s cubic-bezier(.34,1.56,.64,1),box-shadow .18s cubic-bezier(.34,1.56,.64,1)}@media(max-width:767px){:root[data-ui=constellation] .star-card{width:min(76vw,240px);height:min(66vw,208px)}}:root[data-ui=constellation] .star-card.star-blur{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}:root[data-ui=constellation] .star-card.star-focus{border-color:color-mix(in srgb,var(--cat, #22D3EE) 85%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--cat, #22D3EE) 30%,transparent),0 8px 32px -8px color-mix(in srgb,var(--cat, #22D3EE) 45%,transparent)}:root[data-ui=constellation] .star-card.star-pinning{cursor:grabbing;box-shadow:0 0 0 1px #22d3ee,0 12px 40px -6px #22d3ee8c}:root[data-ui=constellation] .star-handle{position:absolute;left:0;top:0;width:26px;height:26px;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:1;color:#eaeaea8c;background:linear-gradient(135deg,#00000052,#0000000f);border-right:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);border-radius:12px 0 10px;z-index:3;touch-action:none;cursor:grab}:root[data-ui=constellation] .star-cover{position:absolute;inset:0;z-index:0;overflow:hidden}:root[data-ui=constellation] .star-cover img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;opacity:.42;filter:saturate(.75)}:root[data-ui=constellation] .star-cover-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:26px;opacity:.5}:root[data-ui=constellation] .star-badge{position:absolute;top:10px;right:10px;z-index:2;padding:2px 8px;border-radius:999px;font-size:10px;font-weight:600;letter-spacing:.04em;color:var(--cat, #22D3EE);background:#06091099;border:1px solid color-mix(in srgb,var(--cat, #22D3EE) 35%,transparent);backdrop-filter:blur(4px)}:root[data-ui=constellation] .star-body{position:relative;z-index:2;margin-top:72px;padding:8px 13px 10px;height:calc(100% - 72px);display:flex;flex-direction:column;background:linear-gradient(180deg,#06091000,#060910db 34%,#060910f0)}:root[data-ui=constellation] .star-title{margin:0;font-size:14px;font-weight:600;line-height:1.35;color:#f2f5fa;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;flex-shrink:0;text-shadow:0 1px 6px rgba(0,0,0,.5)}:root[data-ui=constellation] .star-excerpt{margin:3px 0 0;font-size:11px;line-height:1.45;color:#cbd5e1c7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.9em;flex-shrink:0}:root[data-ui=constellation] .star-meta{margin-top:auto;display:flex;justify-content:space-between;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:10px;letter-spacing:.02em;color:#94a3b8d9;flex-shrink:0}:root[data-ui=constellation] .star-tags{display:flex;gap:6px;margin-top:4px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:9.5px;color:color-mix(in srgb,var(--cat, #22D3EE) 72%,rgba(255,255,255,.5));flex-shrink:0;overflow:hidden;white-space:nowrap}:root[data-ui=constellation] .star-controls{position:absolute;left:50%;bottom:40px;transform:translate(-50%);z-index:40;display:flex;align-items:center;gap:6px;padding:5px 6px 5px 8px;border-radius:999px;background:#0a0e17b8;border:1px solid rgba(255,255,255,.09);backdrop-filter:blur(14px);box-shadow:0 8px 28px -10px #000000b3}:root[data-ui=constellation] .star-controls button{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:none;border-radius:999px;background:#ffffff0f;color:#eaeaeacc;font-size:14px;cursor:pointer;transition:background .16s ease-out,color .16s ease-out,transform .16s ease-out}:root[data-ui=constellation] .star-controls button:hover{background:#22d3ee2e;color:#22d3ee}:root[data-ui=constellation] .star-controls button:active{transform:scale(.92)}:root[data-ui=constellation] .star-count{padding:0 8px 0 4px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:10.5px;letter-spacing:.04em;color:#94a3b8cc}:root[data-ui=constellation] .star-empty{z-index:20}@supports not (color: color-mix(in srgb,red 10%,blue)){:root[data-ui=constellation] .star-card{border-color:#22d3ee6b}:root[data-ui=constellation] .star-card.star-focus{border-color:#22d3ee}:root[data-ui=constellation] .star-badge{color:#22d3ee;border-color:#22d3ee59}}:root[data-ui=constellation] .star-card[data-tier=lite] .star-excerpt,:root[data-ui=constellation] .star-card[data-tier=lite] .star-tags{display:none}:root[data-ui=constellation] .star-card[data-tier=lite] .star-body{margin-top:96px;height:calc(100% - 96px)}:root[data-ui=constellation] .star-card[data-tier=lite] .star-title{font-size:15px;-webkit-line-clamp:3}:root[data-ui=constellation] .star-card[data-tier=dot]{width:104px;height:104px;border-radius:18px;border-width:2px}:root[data-ui=constellation] .star-card[data-tier=dot] .star-badge{display:none}:root[data-ui=constellation] .star-card[data-tier=dot] .star-cover img{opacity:.62;filter:saturate(.9)}:root[data-ui=constellation] .star-card[data-tier=dot] .star-body{margin-top:0;height:100%;padding:8px;justify-content:flex-end;opacity:0;transition:opacity .18s ease-out;background:linear-gradient(180deg,#06091000 42%,#060910eb)}:root[data-ui=constellation] .star-card[data-tier=dot].star-hover .star-body{opacity:1}:root[data-ui=constellation] .star-card[data-tier=dot] .star-title{font-size:11px;-webkit-line-clamp:2}:root[data-ui=constellation] .star-card[data-tier=dot] .star-excerpt,:root[data-ui=constellation] .star-card[data-tier=dot] .star-meta,:root[data-ui=constellation] .star-card[data-tier=dot] .star-tags{display:none}:root[data-ui=constellation] .star-card[data-tier=full]{box-shadow:0 18px 40px -22px #000000d9}:root[data-ui=constellation] .star-card[data-tier=dot] .star-cover-fallback{opacity:.32;filter:saturate(.7) brightness(.8)}:root[data-ui=constellation] .star-card[data-tier=lite] .star-cover-fallback{opacity:.45;filter:saturate(.8) brightness(.9)}:root[data-ui=constellation] .star-card[data-tier=dot] .star-cover,:root[data-ui=constellation] .star-card[data-tier=lite] .star-cover{background:#0a0e16e6}:root[data-ui=constellation] .star-card[data-tier=dot] .star-cover img{filter:saturate(.85) brightness(.72)}:root[data-ui=constellation] .star-card[data-tier=lite] .star-cover img{filter:saturate(.9) brightness(.88)}:root[data-ui=constellation] .star-controls{padding:5px 10px;gap:8px;max-width:calc(100vw - 32px);overflow-x:auto;scrollbar-width:none}:root[data-ui=constellation] .star-controls::-webkit-scrollbar{display:none}:root[data-ui=constellation] .star-chips{display:flex;align-items:center;gap:5px}:root[data-ui=constellation] .star-chip{padding:5px 10px;border-radius:999px;font-size:11px;line-height:1;white-space:nowrap;color:#e2e8f0b8;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);cursor:pointer;transition:color .16s ease-out,background .16s ease-out,border-color .16s ease-out}:root[data-ui=constellation] .star-chip:hover{color:#fff;background:#ffffff1f}:root[data-ui=constellation] .star-chip.on{color:#0b1220;font-weight:700;background:color-mix(in srgb,var(--cat, #e2e8f0) 88%,#fff);border-color:transparent}:root[data-ui=constellation] .star-sep{width:1px;height:16px;background:#ffffff24;flex:0 0 auto}:root[data-ui=constellation] .star-card.star-dim{opacity:.16;filter:blur(1.5px);pointer-events:none}:root[data-ui=constellation] .star-card{transition:border-color .2s ease-out,box-shadow .2s ease-out,opacity .22s ease-out,filter .22s ease-out,width .24s cubic-bezier(.34,1.56,.64,1),height .24s cubic-bezier(.34,1.56,.64,1),border-radius .24s ease-out}:root[data-ui=constellation] .star-track{position:absolute;inset:0;z-index:3;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:84px 0 56px}:root[data-ui=constellation] .track-spine{position:absolute;left:30px;top:0;bottom:0;width:2px;background:linear-gradient(180deg,#22d3ee00,#8b7cb399 10%,#8b7cb34d 65%,#22d3ee00)}:root[data-ui=constellation] .track-head{padding:0 20px 18px 58px}:root[data-ui=constellation] .track-title{margin:0;font-family:Xiaolai,ui-serif,serif;font-size:26px;font-weight:700;color:#eaeaea;letter-spacing:.02em}:root[data-ui=constellation] .track-sub{margin:4px 0 0;font-size:12px;color:#8b94a7}:root[data-ui=constellation] .track-list{list-style:none;margin:0;padding:0 16px 0 0}:root[data-ui=constellation] .track-item{position:relative;padding-left:58px;margin-bottom:16px;opacity:0;transform:translateY(18px);transition:opacity .48s ease-out,transform .48s cubic-bezier(.34,1.56,.64,1)}:root[data-ui=constellation] .track-item.is-in{opacity:1;transform:none}:root[data-ui=constellation] .track-dot{position:absolute;left:24px;top:28px;width:12px;height:12px;border-radius:50%;background:var(--cat, #22d3ee);box-shadow:0 0 0 4px #0a0e17eb,0 0 14px var(--cat, #22d3ee)}:root[data-ui=constellation] .track-card{display:flex;gap:12px;padding:10px;border-radius:16px;text-decoration:none;background:#0e121ceb;border:1px solid color-mix(in srgb,var(--cat, #22d3ee) 32%,transparent)}:root[data-ui=constellation] .track-cover{width:92px;height:92px;flex:0 0 auto;border-radius:12px;overflow:hidden;background:#0a0e16e6}:root[data-ui=constellation] .track-cover img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;opacity:.85}:root[data-ui=constellation] .track-cover--fallback{display:flex;align-items:center;justify-content:center;font-size:11px;color:#ffffffd9}:root[data-ui=constellation] .track-body{min-width:0;display:flex;flex-direction:column;gap:4px}:root[data-ui=constellation] .track-meta{display:flex;align-items:center;gap:8px;font-size:11px}:root[data-ui=constellation] .track-badge{padding:1px 7px;border-radius:999px;color:var(--cat, #22d3ee);border:1px solid color-mix(in srgb,var(--cat, #22d3ee) 40%,transparent)}:root[data-ui=constellation] .track-date{color:#8b94a7;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}:root[data-ui=constellation] .track-card-title{margin:0;font-size:15px;font-weight:600;line-height:1.35;color:#f2f5fa;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}:root[data-ui=constellation] .track-excerpt{margin:0;font-size:12px;line-height:1.5;color:#cbd5e1bf;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media(prefers-reduced-motion:reduce){:root[data-ui=constellation] .track-item{opacity:1;transform:none;transition:none}}
