:root{color:#f2f5ff;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#070910;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 22% -8%,#88a9ff2e,#0000 38%),radial-gradient(circle at 78% 6%,#ff70c726,#0000 36%),linear-gradient(170deg,#06070d 0%,#0b0f1d 100%);min-height:100vh;margin:0}button{font:inherit;cursor:pointer}.entry-transition{z-index:9999;pointer-events:none;background:#fff;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.entry-transition.flash{opacity:1;filter:contrast(3)brightness(2);animation:.2s ease-out forwards entry-flash}.entry-transition.fade{animation:1.2s ease-out forwards entry-fade}.entry-scanline{opacity:.6;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000014 2px 4px);position:absolute;inset:0}@keyframes entry-flash{0%{opacity:1}to{opacity:.9;filter:contrast()brightness()}}@keyframes entry-fade{0%{opacity:.9;background:#fff}30%{opacity:.7;background:#c0cfff}to{opacity:0;pointer-events:none;background:#070910}}.ambient-canvas{z-index:0;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.site-root{min-height:100vh;transition:background .8s;position:relative}.site{z-index:1;width:min(1120px,94vw);margin:0 auto;padding:2rem 0 3rem;transition:filter .6s;position:relative}.noise-overlay{z-index:2;pointer-events:none;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:256px 256px;transition:opacity .6s;animation:.15s steps(3,end) infinite noise-drift;position:fixed;inset:0}.filtered-bg .noise-overlay{opacity:.02;animation-duration:.5s}@keyframes noise-drift{0%{transform:translate(0)}33%{transform:translate(-2px,1px)}66%{transform:translate(1px,-2px)}to{transform:translate(0)}}.scanlines{z-index:2;pointer-events:none;opacity:.5;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#0000000a 2px 4px);transition:opacity .6s;position:fixed;inset:0}.filtered-bg .scanlines{opacity:.15}.site.all{text-shadow:0 0 20px #8a95ff0f}.site.filtered{filter:saturate(.4)contrast(.88)brightness(.82)hue-rotate(-8deg)}.site.filtered .hero-image{filter:saturate(.3)brightness(.75)sepia(.15)hue-rotate(190deg)}.site.filtered .glitch-shimmer{opacity:.08;animation:10s ease-in-out infinite shimmer}.site.filtered .hero-album-art{filter:saturate(.35)brightness(.78)}.site.filtered .node{border-color:#1e2236}.site.filtered .node.overflow{animation:4s infinite spike;box-shadow:0 0 8px #6478b426}.site.filtered .waveform .wave-bar{background:linear-gradient(#5a6a88,#4a5570)}.site.filtered .lyric-line{color:#8a90a8}.site-root.filtered-bg{background:radial-gradient(circle at 22% -8%,#5064a014,#0000 38%),linear-gradient(170deg,#050710 0%,#0a0d18 100%)}.hero{grid-template-columns:1.4fr 1fr;align-items:end;gap:1.2rem;display:grid}.hero-image-wrap{border:1px solid #2a2e3f;border-radius:14px;position:relative;overflow:hidden}.hero-image{object-fit:cover;object-position:center 36%;will-change:transform;width:100%;max-height:520px;transition:transform .15s ease-out;display:block}.glitch-shimmer{pointer-events:none;mix-blend-mode:screen;background:linear-gradient(120deg,#0000 30%,#a6ceff47,#ff8ce61f,#0000 70%);animation:4s ease-in-out infinite shimmer;position:absolute;inset:0}.site.all .hero-image-wrap:after{content:"";pointer-events:none;border-radius:14px;animation:3s ease-in-out infinite alternate chroma-pulse;position:absolute;inset:0;box-shadow:inset 2px 0 8px #ff50b426,inset -2px 0 8px #508cff26}@keyframes shimmer{0%,to{opacity:.15;transform:translate(-50%)}50%{opacity:.45;transform:translate(50%)}}@keyframes chroma-pulse{0%{box-shadow:inset 2px 0 8px #ff50b426,inset -2px 0 8px #508cff26}to{box-shadow:inset 3px 0 14px #ff50b440,inset -3px 0 14px #508cff40}}.hero-copy{padding-bottom:.5rem}.hero-album-art{border:1px solid #2a2e3f;border-radius:8px;width:clamp(100px,14vw,160px);height:auto;margin-bottom:1rem;box-shadow:0 4px 24px #0006}.kicker{text-transform:uppercase;letter-spacing:.2em;color:#9aa0bc;margin:0 0 .5rem;font-size:.72rem}h1{letter-spacing:-.02em;margin:0;font-size:clamp(2.2rem,6vw,5rem);line-height:.98}.tagline{color:#c3c9df;margin-top:.65rem;font-size:.95rem}.control-row{justify-content:space-between;align-items:start;gap:1rem;margin-top:1.25rem;display:flex}.signal-filter{border:1px solid #2a2e3f;border-radius:999px;align-items:center;width:fit-content;padding:.25rem;display:inline-flex}.signal-filter button{color:#9ca3af;letter-spacing:.08em;background:0 0;border:0;border-radius:999px;padding:.5rem .95rem;font-size:.72rem;font-weight:600;transition:background .2s,color .2s}.signal-filter button.active{color:#0d1020;background:#8a95ff}.now-playing{background:#0b0e18d9;border:1px solid #2a2e3f;border-radius:12px;flex-shrink:0;width:clamp(240px,30vw,340px);padding:.85rem 1rem;transition:opacity .15s}.now-playing.glitch{animation:.3s steps(4,end) forwards np-glitch}@keyframes np-glitch{0%{clip-path:inset(0);opacity:1}25%{clip-path:inset(10% 0 20%);opacity:.7}50%{clip-path:inset(30% 0 5%);opacity:.5}75%{clip-path:inset(5% 0 40%);opacity:.8}to{clip-path:inset(0);opacity:1}}.np-header{align-items:center;gap:.7rem;display:flex}.np-art{object-fit:cover;border:1px solid #2a2e3f;border-radius:6px;flex-shrink:0;width:52px;height:52px}.np-info{min-width:0}.np-label{color:#9aa0bc;letter-spacing:.1em;margin:0;font-size:.7rem}.np-info h2{white-space:nowrap;text-overflow:ellipsis;margin:.15rem 0;font-size:1rem;overflow:hidden}.np-phrase{color:#9bd7ff;font-size:.82rem}.waveform{align-items:flex-end;gap:3px;height:32px;margin-top:.65rem;display:flex}.wave-bar{width:4px;height:var(--h,4px);background:linear-gradient(#8cc6ff,#ff9ae2);border-radius:10px;min-height:3px;transition:height 80ms ease-out}.player-controls{align-items:center;gap:.6rem;margin-top:.6rem;display:flex}.ctrl-btn{color:#c3c9df;background:0 0;border:1px solid #2a2e3f;border-radius:8px;justify-content:center;align-items:center;padding:.4rem;transition:border-color .15s,color .15s;display:flex}.ctrl-btn:hover{color:#fff;border-color:#83a9ff}.play-btn{color:#8a95ff;border-color:#8a95ff;padding:.45rem .55rem}.play-btn:hover{background:#8a95ff1f}.track-map{margin-top:1.4rem}.track-flow-row{align-items:center;margin-bottom:.8rem;display:flex}.track-flow-row:last-child{margin-bottom:0}.track-flow-segment{flex:none;align-items:center;display:flex}.flow-line{background:linear-gradient(90deg,#2a2e3f,#4a5078);flex-shrink:0;width:24px;height:2px;display:block}.flow-line--trailing{background:0 0;border-top:2px dashed #3a4068;width:36px;height:0;-webkit-mask-image:linear-gradient(90deg,#000 20%,#0000004d);mask-image:linear-gradient(90deg,#000 20%,#0000004d)}.flow-line--continued{background:0 0;border-top:2px dashed #3a4068;width:36px;height:0;-webkit-mask-image:linear-gradient(90deg,#0000004d,#000 80%);mask-image:linear-gradient(90deg,#0000004d,#000 80%)}.site.all .flow-line{background:linear-gradient(90deg,#3a4068,#6a75b8);animation:2s ease-in-out infinite alternate line-pulse;box-shadow:0 0 6px #8a95ff33}.site.all .flow-line--trailing,.site.all .flow-line--continued{box-shadow:none;background:0 0;border-color:#6a75b8;animation:2s ease-in-out infinite alternate line-pulse}@keyframes line-pulse{0%{opacity:.5}to{opacity:1}}.node{text-align:left;color:#e9ebf8;background:#080a12cc;border:1px solid #2a2e3f;border-radius:12px;width:clamp(100px,8vw,130px);min-width:0;padding:.6rem .7rem;transition:transform .15s,border-color .15s,box-shadow .15s}.node:hover,.node.selected{border-color:#83a9ff;transform:translateY(-2px)}.node .index{color:#8d96b3;font-size:.68rem;display:block}.node strong{white-space:nowrap;text-overflow:ellipsis;margin-top:.15rem;font-size:.78rem;display:block;overflow:hidden}.node small{color:#9ca5c3;white-space:nowrap;text-overflow:ellipsis;margin-top:.2rem;font-size:.66rem;display:block;overflow:hidden}.node.overflow{animation:2s infinite spike}@keyframes spike{0%,to{border-color:#3a2e4f;box-shadow:0 0 4px #f96fff26}50%{border-color:#9a4fff;box-shadow:0 0 28px #f96fff73,0 0 60px #f96fff1a}}.idle-node{opacity:.2;border-style:dashed;transition:opacity .4s,border-color .3s}.idle-node.revealed{opacity:1;border-style:solid;animation:.6s forwards idle-reveal}@keyframes idle-reveal{0%{opacity:.2;filter:blur(4px)}50%{opacity:.8;filter:blur(1px)}to{opacity:1;filter:blur()}}.lyrics{background:#0a0c14db;border:1px solid #2a2e3f;border-radius:12px;min-height:180px;max-height:60vh;margin-top:1.3rem;padding:1.2rem;overflow-y:auto}.label{letter-spacing:.12em;color:#8f97b4;margin:0 0 .6rem;font-size:.72rem}.lyric-break{height:.8rem}.lyric-line{opacity:0;color:#dde0f2;margin:.3rem 0;font-size:.92rem;line-height:1.5;animation:.35s forwards rise}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.lyrics--stack .lyric-line{margin:-.05rem 0;font-weight:700;line-height:1.2;animation-name:rise-stack}@keyframes rise-stack{0%{opacity:0;transform:translateY(12px)scaleY(1.2)}to{opacity:1;transform:translateY(0)scaleY(1)}}.lyrics--mutate .lyric-line{color:#ff9ee9;font-family:Courier New,monospace}.lyrics--mutate .lyric-line:nth-child(2n){color:#b8c6ff}.mutate-text{min-width:1ch;display:inline-block}.lyrics--space .lyric-line{letter-spacing:.18em;color:#a8b4d8;animation-name:rise-space;animation-duration:.7s}@keyframes rise-space{0%{opacity:0;letter-spacing:.4em;transform:translateY(10px)}to{opacity:1;letter-spacing:.18em;transform:translateY(0)}}.lyrics::-webkit-scrollbar{width:4px}.lyrics::-webkit-scrollbar-track{background:0 0}.lyrics::-webkit-scrollbar-thumb{background:#2a2e3f;border-radius:4px}.identity{color:#9ea5bf;border-top:1px dashed #2a2e3f;margin-top:2rem;padding-top:1rem;font-size:.85rem}.identity p{margin:.2rem 0}@media (width<=900px){.hero{grid-template-columns:1fr}.control-row{flex-direction:column}.now-playing{width:clamp(240px,60vw,340px)}.track-flow-row{flex-wrap:wrap;gap:.5rem}.flow-line,.flow-line--trailing,.flow-line--continued{display:none}.track-flow-segment{flex:0 0 calc(50% - .25rem)}.node{width:100%}}@media (width<=520px){.track-flow-segment{flex:0 0 100%}.player-controls{justify-content:center}}
