/* VISION CORE V2.3.4 — REAL-TIME MODE
   Mantém o layout do print 1. Só adiciona estados vivos, animação e SSE. */
:root{
  --vc-purple:#a855f7;
  --vc-purple-2:#7c3aed;
  --vc-green:#00d084;
  --vc-yellow:#facc15;
  --vc-red:#ef4444;
  --vc-cyan:#22d3ee;
  --vc-chat-gray:#5b5b64;
}

/* chat/textarea cinza como pedido */
textarea.mission,
#missionText{
  background:linear-gradient(180deg,#5f5f68,#55555e) !important;
  border:1px solid rgba(255,255,255,.13) !important;
  color:#f7f7fb !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06) !important;
}
textarea.mission::placeholder,
#missionText::placeholder{color:#d6d6df !important;opacity:.72}

/* botão/menus nas cores do print 1 */
.btn,
.top-actions .btn,
#executeBtn{
  background:linear-gradient(135deg,#7c3aed,#b14cff) !important;
  border:1px solid rgba(168,85,247,.70) !important;
  color:#fff !important;
  box-shadow:0 0 18px rgba(168,85,247,.20) !important;
}
.btn.ghost{background:#101014 !important;border-color:rgba(255,255,255,.14) !important;box-shadow:none !important}
.btn.github{background:linear-gradient(135deg,#7c3aed,#a855f7) !important}
.btn.agent-download{background:linear-gradient(135deg,#06b6d4,#22c55e) !important;color:#020405 !important;border-color:rgba(34,197,94,.45) !important}
.menu a.active,
.v231-topnav a.active{background:linear-gradient(90deg,rgba(168,85,247,.32),rgba(124,58,237,.18)) !important;border-color:rgba(168,85,247,.60) !important}

/* status vivo no orb pequeno do canto e no painel direito */
.v23-top-eye.vc-running .v23-eye,
.eye-wrap.vc-running .ai-eye{animation:vcEyePulse 1.05s infinite ease-in-out;border-color:var(--vc-purple)}
.v23-top-eye.vc-gold .v23-eye,
.eye-wrap.vc-gold .ai-eye{border-color:var(--vc-yellow);box-shadow:0 0 28px rgba(250,204,21,.50), inset 0 0 18px rgba(250,204,21,.18)}
.v23-top-eye.vc-fail .v23-eye,
.eye-wrap.vc-fail .ai-eye{border-color:var(--vc-red);box-shadow:0 0 24px rgba(239,68,68,.45), inset 0 0 18px rgba(239,68,68,.18)}
@keyframes vcEyePulse{0%,100%{box-shadow:0 0 18px rgba(168,85,247,.40)}50%{box-shadow:0 0 34px rgba(168,85,247,.85)}}

#mcCore.vc-running .mc-core-hex{animation:vcCoreSpin 1.8s linear infinite;filter:drop-shadow(0 0 18px rgba(168,85,247,.75))}
#mcCore.vc-gold .mc-core-hex{filter:drop-shadow(0 0 20px rgba(250,204,21,.78)) hue-rotate(65deg)}
#mcCore.vc-fail .mc-core-hex{filter:drop-shadow(0 0 18px rgba(239,68,68,.72)) hue-rotate(150deg)}
@keyframes vcCoreSpin{to{transform:rotate(360deg)}}

/* logs SSE */
.v233-sse-line{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;line-height:1.55;color:#d7d3df}
.v233-sse-line .ts{color:var(--vc-green);margin-right:6px}
.v233-sse-line.ok,.v233-sse-line.green{color:#d7ffe9}
.v233-sse-line.running,.v233-sse-line.yellow{color:#fde68a}
.v233-sse-line.fail,.v233-sse-line.red{color:#fecaca}
.v233-sse-line.info{color:#c7d2fe}
.v233-sse-line.event{color:#c084fc}

/* painel de timeline atualizado em tempo real */
.timelineStep.live{border-color:rgba(168,85,247,.60);box-shadow:0 0 18px rgba(168,85,247,.12)}
.timelineStep.ok{border-color:rgba(0,208,132,.40)}
.timelineStep.running{border-color:rgba(250,204,21,.50)}
.timelineStep.fail{border-color:rgba(239,68,68,.55)}

/* barra LIVE inferior */
#runtimeMonitor.realtime{border-color:rgba(168,85,247,.55);box-shadow:0 0 22px rgba(168,85,247,.20)}
#runtimeMonitor.gold{border-color:rgba(250,204,21,.55);color:var(--vc-yellow)}
#runtimeMonitor.fail{border-color:rgba(239,68,68,.55);color:var(--vc-red)}

/* V2.3.6 — small live interaction screen above chat */
.vc-process-screen{
  margin:14px 0 12px;
  min-height:82px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:14px;
  align-items:center;
  padding:16px 18px;
  border:1px solid rgba(139,92,246,.30);
  border-radius:20px;
  background:linear-gradient(135deg,rgba(16,16,24,.96),rgba(35,28,56,.72));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 0 36px rgba(124,58,237,.10);
}
.vc-process-orb{
  width:44px;height:44px;border-radius:50%;display:grid;place-items:center;
  color:#22d3ee;background:radial-gradient(circle,rgba(34,211,238,.25),rgba(124,58,237,.10) 60%,rgba(0,0,0,.35));
  border:1px solid rgba(34,211,238,.35);box-shadow:0 0 24px rgba(34,211,238,.16);
  font-size:20px;
}
.vc-process-copy strong{display:block;color:#fff;font-size:15px;margin-bottom:5px;letter-spacing:.01em}
.vc-process-copy span{display:block;color:#c6c7d2;font-size:13px;line-height:1.45}
.vc-process-stage{font:700 11px/1 JetBrains Mono,Cascadia Mono,monospace;letter-spacing:.12em;color:#a78bfa;border:1px solid rgba(167,139,250,.35);border-radius:999px;padding:10px 12px;background:rgba(10,10,16,.70)}
.vc-process-screen.running{border-color:rgba(34,211,238,.42);box-shadow:0 0 42px rgba(34,211,238,.12)}
.vc-process-screen.running .vc-process-orb{animation:vcOrbPulse 1.1s infinite alternate;color:#67e8f9}
.vc-process-screen.gold{border-color:rgba(34,197,94,.48);box-shadow:0 0 42px rgba(34,197,94,.14)}
.vc-process-screen.gold .vc-process-stage{color:#86efac;border-color:rgba(34,197,94,.45)}
.vc-process-screen.fail{border-color:rgba(248,113,113,.48);box-shadow:0 0 42px rgba(248,113,113,.12)}
.vc-process-screen.fail .vc-process-stage{color:#fca5a5;border-color:rgba(248,113,113,.45)}
@keyframes vcOrbPulse{from{transform:scale(.96);filter:brightness(1)}to{transform:scale(1.08);filter:brightness(1.35)}}
@media(max-width:720px){.vc-process-screen{grid-template-columns:auto 1fr}.vc-process-stage{grid-column:1 / -1;width:max-content}}
