.rd-root{--rd-black:var(--bg,#050706);--rd-black-soft:var(--panel,#0a0d0b);--rd-green:var(--acid,#b8ff3c);--rd-green-deep:var(--acid-deep,#9be21f);--rd-green-spotify:var(--spotify,#1db954);--rd-acid-rgb:184, 255, 60;--rd-glow:rgba(var(--rd-acid-rgb), .2);--rd-gray:var(--muted,#a7b0aa);--rd-white:var(--ink,#f5f7f6);background:var(--rd-black);color:var(--rd-white);position:relative;overflow-x:hidden}.rd-root ::selection{background:rgba(var(--rd-acid-rgb), .3);color:var(--acid-ink,#0c1100)}.rd-mono{font-family:var(--font-geist-mono), ui-monospace, monospace}.rd-grid-bg{background-image:radial-gradient(rgba(var(--rd-acid-rgb), .06) 1px, transparent 1px);background-size:32px 32px}.rd-radar{aspect-ratio:1;border-radius:50%;width:100%;position:relative}.rd-radar__ring{border:1px solid rgba(var(--rd-acid-rgb), .14);border-radius:50%;position:absolute;inset:0}.rd-radar__ring--2{border-color:rgba(var(--rd-acid-rgb), .12);inset:14%}.rd-radar__ring--3{border-color:rgba(var(--rd-acid-rgb), .1);inset:30%}.rd-radar__ring--4{border-color:rgba(var(--rd-acid-rgb), .08);inset:46%}.rd-radar__cross{border-radius:50%;position:absolute;inset:0}.rd-radar__cross:before,.rd-radar__cross:after{content:"";background:rgba(var(--rd-acid-rgb), .1);position:absolute}.rd-radar__cross:before{width:1px;top:0;bottom:0;left:50%;transform:translate(-50%)}.rd-radar__cross:after{height:1px;top:50%;left:0;right:0;transform:translateY(-50%)}.rd-radar__sweep{background:conic-gradient(from 0deg, rgba(var(--rd-acid-rgb), 0) 0deg, rgba(var(--rd-acid-rgb), 0) 280deg, rgba(var(--rd-acid-rgb), .05) 320deg, rgba(var(--rd-acid-rgb), .35) 358deg, rgba(var(--rd-acid-rgb), .55) 360deg);border-radius:50%;animation:6s linear infinite rd-spin;position:absolute;inset:0;-webkit-mask:radial-gradient(circle,#000 60%,#0000 100%);mask:radial-gradient(circle,#000 60%,#0000 100%)}.rd-radar__core{background:var(--rd-green);width:10px;height:10px;box-shadow:0 0 18px 3px var(--rd-glow);border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.rd-blip{background:var(--rd-green);width:7px;height:7px;box-shadow:0 0 10px 1px rgba(var(--rd-acid-rgb), .55);border-radius:50%;animation:4s ease-in-out infinite rd-blip-pulse;position:absolute}.rd-blip:after{content:"";border:1px solid rgba(var(--rd-acid-rgb), .5);border-radius:50%;animation:4s ease-out infinite rd-ping;position:absolute;inset:-4px}@keyframes rd-spin{to{transform:rotate(360deg)}}@keyframes rd-ping{0%{opacity:.9;transform:scale(.6)}70%{opacity:0;transform:scale(3.2)}to{opacity:0;transform:scale(3.2)}}@keyframes rd-blip-pulse{0%,to{opacity:.35}50%{opacity:1}}.rd-tag{letter-spacing:.08em;text-transform:uppercase;color:var(--rd-white);border:1px solid rgba(var(--rd-acid-rgb), .25);-webkit-backdrop-filter:blur(6px);box-shadow:0 0 20px -8px var(--rd-glow);white-space:nowrap;background:#0a0d0bb3;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:11px;animation:6s ease-in-out infinite rd-float;display:inline-flex;position:absolute}.rd-tag:before{content:"";background:var(--rd-green);width:5px;height:5px;box-shadow:0 0 6px 1px var(--rd-green);border-radius:50%}@keyframes rd-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.rd-net{aspect-ratio:1;width:100%;max-width:30rem;margin-inline:auto;position:relative}.rd-net__svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.rd-net__edge{stroke:rgba(var(--rd-acid-rgb), .12);stroke-width:.3px}.rd-net__pulse{stroke:var(--rd-green);stroke-width:.5px;stroke-linecap:round;stroke-dasharray:8 92;filter:drop-shadow(0 0 2px rgba(var(--rd-acid-rgb), .65));animation:3.2s linear infinite rd-net-flow}@keyframes rd-net-flow{0%{stroke-dashoffset:100px;opacity:0}15%{opacity:1}85%{opacity:1}to{stroke-dashoffset:0;opacity:0}}.rd-net__core{background:radial-gradient(circle at 50% 35%, rgba(var(--rd-acid-rgb), .18), #0a0d0beb);border:1px solid rgba(var(--rd-acid-rgb), .55);width:30%;height:30%;box-shadow:0 0 44px -8px var(--rd-glow), inset 0 0 24px -10px rgba(var(--rd-acid-rgb), .45);z-index:2;border-radius:22px;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.rd-net__core-person{width:32%;color:var(--rd-green)}.rd-net__core-person svg{width:100%;height:auto;display:block}.rd-net__core-wave{gap:2px;height:20px}.rd-net__core-label{letter-spacing:.14em;text-transform:uppercase;color:var(--acid-ink,#0c1100);background:var(--rd-green);box-shadow:0 0 18px -6px var(--rd-glow);white-space:nowrap;border-radius:999px;padding:3px 12px;font-size:10px;font-weight:700;position:absolute;bottom:-12px;left:50%;transform:translate(-50%)}.rd-net__node{z-index:1;border-radius:50%;animation:5.5s ease-in-out infinite rd-net-bob;position:absolute;transform:translate(-50%,-50%)}.rd-net__node-inner{width:100%;height:100%;box-shadow:0 0 14px -4px var(--rd-glow);border:1px solid;border-radius:50%;justify-content:center;align-items:center;display:flex}.rd-net__node-inner svg{width:58%;height:auto;display:block}@keyframes rd-net-bob{0%,to{transform:translate(-50%,-50%)}50%{transform:translate(-50%,calc(-50% - 8px))}}.rd-net__legend{background:#0a0d0bd1;border:1px solid #ffffff0f;border-radius:999px;gap:18px;padding:6px 14px;display:flex;position:absolute;bottom:-14px;left:50%;transform:translate(-50%)}.rd-net__legend-item{color:var(--rd-gray);white-space:nowrap;align-items:center;gap:6px;font-size:11px;display:inline-flex}.rd-net__legend-dot{border-radius:50%;width:9px;height:9px}.rd-net__legend-dot--artist{background:var(--rd-green);box-shadow:0 0 8px 1px var(--rd-green)}.rd-net__legend-dot--curator{border:1.5px solid rgba(var(--rd-acid-rgb), .7);background:0 0}.rd-wave{align-items:center;gap:3px;height:40px;display:flex}.rd-wave span{background:linear-gradient(to top, rgba(var(--rd-acid-rgb), .3), var(--rd-green));border-radius:2px;width:3px;animation:1.1s ease-in-out infinite rd-wave-bounce;display:block}@keyframes rd-wave-bounce{0%,to{opacity:.5;height:18%}50%{opacity:1;height:100%}}.rd-overlay{z-index:80;-webkit-backdrop-filter:blur(3px);background:radial-gradient(circle,#050c08f0,#020302fc);flex-direction:column;justify-content:center;align-items:center;animation:.5s both rd-fade-in;display:flex;position:fixed;inset:0}.rd-scanline{background:linear-gradient(90deg, transparent, rgba(var(--rd-acid-rgb), .6), transparent);height:1px;animation:2.4s linear infinite rd-scan-move;position:absolute;left:0;right:0}@keyframes rd-scan-move{0%{opacity:0;top:-5%}10%{opacity:1}90%{opacity:1}to{opacity:0;top:105%}}@keyframes rd-fade-in{0%{opacity:0}to{opacity:1}}.rd-progress{background:#ffffff14;border-radius:2px;width:100%;height:2px;overflow:hidden}.rd-progress__bar{background:linear-gradient(90deg, var(--rd-green-spotify), var(--rd-green));height:100%;box-shadow:0 0 12px var(--rd-glow);transition:width .4s cubic-bezier(.5,0,0,1)}.rd-glow-text{text-shadow:0 0 24px rgba(var(--rd-acid-rgb), .3)}.rd-card{-webkit-backdrop-filter:blur(14px);background:#0a0d0b8c;border:1px solid #ffffff0f}.rd-card--green{border-color:rgba(var(--rd-acid-rgb), .18);box-shadow:0 0 40px -20px var(--rd-glow)}.rd-btn-primary{background:var(--rd-green);color:var(--acid-ink,#0c1100);box-shadow:0 0 0 0 var(--rd-glow);transition:transform .25s,box-shadow .25s,background .25s}.rd-btn-primary:hover{background:var(--rd-green-deep);box-shadow:0 10px 30px -12px var(--rd-glow);transform:translateY(-2px)}.rd-btn-ghost{color:var(--rd-white);border:1px solid #ffffff24;transition:border-color .25s,background .25s}.rd-btn-ghost:hover{border-color:rgba(var(--rd-acid-rgb), .5);background:rgba(var(--rd-acid-rgb), .06)}@keyframes rd-reveal-up{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}.rd-reveal{animation:.8s cubic-bezier(.5,0,0,1) both rd-reveal-up}.rd-input:focus{border-color:var(--rd-green);box-shadow:0 0 20px -8px var(--rd-glow);outline:none}.rd-acc-body{grid-template-rows:0fr;transition:grid-template-rows .35s;display:grid}.rd-acc-body--open{grid-template-rows:1fr}.rd-acc-body>div{overflow:hidden}@media (prefers-reduced-motion:reduce){.rd-radar__sweep,.rd-blip,.rd-blip:after,.rd-tag,.rd-wave span,.rd-net__pulse,.rd-net__node,.rd-scanline{animation:none!important}}
