.voice-stage .orb-instrument{place-items:center;width:200px;height:200px;margin:8px auto 28px;display:grid;position:relative}.voice-stage .orb-orbit{color:#a8e8ef;opacity:.7;width:100%;height:100%;position:absolute;inset:0}.voice-stage .voice-orb{isolation:isolate;background:linear-gradient(140deg,#e3d5ff,#7762b9 40%,#242137 75%,#b6a8ee);border-radius:50%;width:122px;height:122px;margin:0;padding:1px;position:relative;box-shadow:0 0 48px #9070d31c}.voice-stage .voice-orb span{border-radius:inherit;background:radial-gradient(at 28% 23%,#e3d8ffb3 0%,#0000 30%),radial-gradient(at 72% 70%,#9e74f080,#0000 42%),radial-gradient(at 38% 38%,#a88adc,#55407e 40%,#201c36 72%,#0c0e17 100%);width:100%;height:100%;display:block;position:relative;overflow:hidden;box-shadow:inset 0 1px 8px #e8d9ff70,inset -14px -18px 28px #060810c9}.voice-stage .voice-orb span:before{content:"";filter:blur(8px);animation:12s linear infinite orb-flow;animation-play-state:var(--orb-play,running);background:radial-gradient(at 35% 32%,#e5d4ffdb,#0000 29%),radial-gradient(at 68% 60%,#a66decde,#0000 36%),radial-gradient(at 30% 75%,#786bdfb3,#0000 32%);border-radius:46%;position:absolute;inset:-45%}.voice-stage .voice-orb span:after{content:"";filter:blur(10px);mix-blend-mode:screen;animation:9s linear infinite reverse orb-flow;animation-play-state:var(--orb-play,running);background:radial-gradient(at 65% 30%,#eddaff80,#0000 30%),radial-gradient(at 30% 65%,#bda6f099,#0000 30%);border-radius:50%;position:absolute;inset:-25%}.voice-stage .voice-orb[data-live=true]{box-shadow:0 0 55px #9c76df35}.voice-stage:has([data-live=true]) .orb-orbit{animation:32s linear infinite orb-orbit-turn}.voice-stage>p{letter-spacing:-.015em}.voice-stage>span{letter-spacing:.025em}.voice-stage .voice-pair{justify-content:center;align-items:center;gap:20px;display:flex}.voice-stage .voice-pair .orb-instrument{flex:none;margin:8px 0 28px}.voice-stage .voice-cat{--cat-level:0;transform-origin:50% 100%;width:170px;height:145px;transform:translateY(calc(var(--cat-level) * -5px)) rotate(calc(var(--cat-level) * 3deg));pointer-events:none;flex:none;margin-bottom:20px;transition:transform 90ms ease-out}.voice-stage .voice-cat img{background:#000;border-radius:16px;width:100%;height:100%;display:block;transform:scaleX(-1)}@keyframes orb-orbit-turn{to{transform:rotate(360deg)}}@keyframes orb-flow{0%{transform:rotate(0)translate(3%,2%)}to{transform:rotate(360deg)translate(3%,2%)}}@media (max-width:560px){.voice-stage .voice-pair{gap:0}.voice-stage .voice-cat{width:110px;height:94px}}@media (max-width:640px){.voice-stage .orb-instrument{width:170px;height:170px}.voice-stage .voice-orb{width:106px;height:106px}}@media (prefers-reduced-motion:reduce){.voice-stage .orb-orbit,.voice-stage .voice-orb span:before,.voice-stage .voice-orb span:after{animation:none!important}.voice-stage .voice-orb,.voice-stage .voice-cat{transition:none;transform:none}}.conversation{color:#f1ecff;background:#100e19;border-radius:20px;margin:16px 0;padding:8px 16px 16px}.conversation .voice-stage>p,.conversation .voice-stage>span,.conversation .source,.conversation .convo-empty{color:#bdb0d7}.conversation .convo{overscroll-behavior:contain;flex-direction:column;gap:12px;max-height:320px;margin:0;padding:4px;display:flex;overflow:auto}.conversation .turn{color:#f1ecff;overflow-wrap:anywhere;background:#251e35;border-radius:16px;max-width:min(85%,420px);margin:0;padding:10px 14px}.conversation .turn strong{color:#bdb0d7;margin-bottom:4px;font-size:13px;display:block}.conversation .turn p{color:inherit;margin:0}.conversation .turn.you,.conversation .turn.user{color:#e0faff;background:#143039;margin-left:auto}.conversation .turn.system{color:#bdb0d7;text-align:center;background:0 0;margin-inline:auto}.conversation .convo-empty{margin:0;font-size:14px}.conversation :focus-visible{outline-offset:3px;outline:3px solid #a8e8ef}.conversation textarea,.conversation input{color:#f1ecff;background:#1a1628;border:1px solid #a8e8ef55;border-radius:12px}.conversation .play-primary,.conversation button.play-primary{color:#100e19;background:#cbb4ff;border-color:#cbb4ff}.conversation a{color:#cbb4ff}
