:root{--bg:#06030f;--bg-2:#0b0618;--card:#14081f;--card-2:#1b0c2a;--card-3:#23103a;--panel:#14081fc7;--text:#f3effc;--muted:#9d95b3;--hair:#ffffff1a;--hair-2:#ffffff2e;--accent:#c084fc;--accent-2:#d8b4fe;--accent-deep:#7e22ce;--accent-dim:#c084fc29;--line:#c084fc47;--teal:#22d3ee;--gold:#fbbf24;--danger:#f87171;--pos:var(--teal);--warn:var(--gold);--bad:var(--danger);--font-body:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--font-display:"Instrument Serif",Georgia,"Times New Roman",serif;--font-mono:ui-monospace,"Cascadia Mono",Consolas,Menlo,monospace;--r:12px;--r-sm:7px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:radial-gradient(1200px 600px at 50% -10%,#7e22ce4d,transparent 60%), radial-gradient(700px 500px at 100% 100%,#22d3ee12,transparent 60%), var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--muted);font-size:12px}button{font:inherit;color:inherit;cursor:pointer}.shell{flex-direction:column;min-height:100dvh;display:flex}.bar{z-index:5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--hair);background:#06030fe0;justify-content:space-between;align-items:center;gap:16px;padding:12px 20px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;display:flex}.orb{background:var(--accent);border-radius:50%;flex:none;width:32px;height:32px;position:relative;box-shadow:0 0 22px #c084fc73}.orb:before{content:"";border:1.6px solid #e6e0d6;border-radius:50%;position:absolute;inset:14%}.orb:after{content:"";background:#b35ce0;border-radius:50%;position:absolute;inset:27%}.word{font-family:var(--font-display);font-size:24px;line-height:1}.word span{color:var(--accent)}.sub{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-top:3px;font-size:9.5px;font-weight:700}.pill{letter-spacing:.18em;text-transform:uppercase;border:1px solid var(--hair-2);color:var(--muted);border-radius:99px;align-items:center;gap:7px;padding:5px 10px;font-size:9.5px;font-weight:700;display:inline-flex}.pill i{background:var(--muted);border-radius:50%;width:7px;height:7px}.pill.ok{color:var(--pos);border-color:#22d3ee66}.pill.ok i{background:var(--pos)}.pill.off i{background:var(--warn)}.stage{flex:1;grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:20px;width:100%;max-width:1180px;margin:0 auto;padding:24px 20px;display:grid}@media (width<=820px){.stage{grid-template-columns:1fr}}.core{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:420px;padding:24px 8px;display:flex}.reactor{--lvl:0;aspect-ratio:1;background:0 0;border:none;border-radius:50%;width:min(300px,70vw);padding:0;position:relative}.reactor:focus-visible{outline:2px solid var(--accent);outline-offset:8px}.ring{border:1px solid var(--line);border-radius:50%;position:absolute;inset:0}.r1{border-style:dashed;animation:28s linear infinite spin;inset:0}.r2{border-color:#c084fc73;animation:18s linear infinite reverse spin;inset:12%}.r3{border:2px solid var(--accent);inset:24%;box-shadow:0 0 30px #c084fc59,inset 0 0 30px #c084fc40}.glow{background:radial-gradient(circle,#f3e8ff 0%,var(--accent) 35%,var(--accent-deep) 70%,transparent 72%);transform:scale(calc(.85 + var(--lvl) * .35));opacity:.55;border-radius:50%;transition:transform 80ms linear;position:absolute;inset:34%}[data-status=listening] .glow{opacity:1}[data-status=thinking] .r2{animation-duration:4s}[data-status=thinking] .glow{opacity:.8;animation:1.4s ease-in-out infinite breathe}[data-status=speaking] .glow{opacity:1;animation:.9s ease-in-out infinite breathe}[data-status=speaking] .r3{border-color:var(--accent-2)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes breathe{50%{filter:brightness(1.35)}}@media (prefers-reduced-motion:reduce){.ring,.glow{animation:none!important}}.state{font-family:var(--font-display);margin:26px 0 6px;font-size:44px;font-weight:400}.hint{color:var(--muted);text-wrap:balance;max-width:42ch;margin:0;font-size:14px;line-height:1.5}.row{gap:10px;margin-top:18px;display:flex}.err{color:var(--bad);max-width:52ch;margin-top:14px;font-size:13px}.btn{border:1px solid var(--line);border-radius:var(--r-sm);letter-spacing:.18em;text-transform:uppercase;background:0 0;padding:9px 14px;font-size:9.5px;font-weight:700}.btn:hover{background:var(--accent-dim)}.btn:active{border-color:var(--accent)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;min-height:0;padding:14px;display:flex;position:relative}.panel:before{content:"";background:linear-gradient(90deg,transparent,var(--accent),transparent);height:2px;position:absolute;top:-1px;left:0;right:0}.log-panel{max-height:calc(100dvh - 120px)}.ph{letter-spacing:.24em;text-transform:uppercase;color:var(--accent-2);justify-content:space-between;align-items:center;margin-bottom:10px;font-size:10px;font-weight:700;display:flex}.tag{letter-spacing:0;text-transform:none;font-size:11px}.log{flex-direction:column;flex:1;gap:12px;min-height:200px;padding-right:4px;display:flex;overflow-y:auto}.empty{color:var(--muted);font-size:13px}.msg .who{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-size:9.5px;font-weight:700}.msg p{max-width:65ch;margin:3px 0 0;font-size:14.5px;line-height:1.5}.msg.assistant .who{color:var(--accent)}.msg.interim p{color:var(--muted);font-style:italic}.ask{gap:8px;margin-top:12px;display:flex}.ask input{background:var(--card);border:1px solid var(--hair-2);border-radius:var(--r-sm);min-width:0;color:var(--text);font:inherit;flex:1;padding:10px 12px;font-size:14px}.ask input:focus{border-color:var(--accent);outline:none}.metrics{margin-top:10px}
