/* Veri5 apex assistant widget — self-contained, dark cyan→blue, matches the landing palette. */
.v5a, .v5a * { box-sizing: border-box; }
.v5a {
  --a-bg:#0C111A; --a-surface:#131A28; --a-card:#182136; --a-bd:#232C40;
  --a-ink:#EAF0FB; --a-muted:#94A2BC; --a-faint:#62708C;
  --a-blue:#3F82F8; --a-cyan:#62D8FF;
  --a-grad:linear-gradient(135deg,#62D8FF 0%,#3F82F8 50%,#2856D6 100%);
  --a-user:linear-gradient(135deg,#3F82F8,#2856D6);
  position: fixed; z-index: 2147483000; right: 22px; bottom: 22px;
  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"PingFang SC","Microsoft YaHei",Helvetica,Arial,sans-serif;
}
@media (max-width:520px){ .v5a{ right:14px; bottom:14px; } }

/* Launcher */
.v5a-launch {
  width:58px; height:58px; border-radius:50%; border:none; cursor:pointer; padding:0;
  background:var(--a-grad); box-shadow:0 10px 34px -8px rgba(63,130,248,.65); position:relative;
  display:grid; place-items:center; transition:transform .18s ease, box-shadow .18s ease;
}
.v5a-launch:hover{ transform:translateY(-2px); box-shadow:0 16px 44px -8px rgba(63,130,248,.8); }
.v5a-launch svg{ display:block; }
.v5a-launch .v5a-ai{ display:grid; place-items:center; }
.v5a-launch .v5a-ai svg{ width:30px; height:30px; }
.v5a-launch::after{ content:""; position:absolute; inset:0; border-radius:50%; box-shadow:0 0 0 0 rgba(98,216,255,.55); animation:v5a-pulse 2.4s infinite; }
@keyframes v5a-pulse{ 0%{box-shadow:0 0 0 0 rgba(98,216,255,.5)} 70%{box-shadow:0 0 0 14px rgba(98,216,255,0)} 100%{box-shadow:0 0 0 0 rgba(98,216,255,0)} }
/* little "AI" badge so it unmistakably reads as an assistant */
.v5a-badge{ position:absolute; top:-3px; right:-3px; background:#0C111A; color:var(--a-cyan); border:1px solid var(--a-cyan); font-size:9px; font-weight:800; letter-spacing:.5px; line-height:1; padding:3px 4px; border-radius:7px; }
.v5a-launch .v5a-x{ display:none; width:22px; height:22px; }
.v5a.open .v5a-launch{ background:var(--a-surface); border:1px solid var(--a-bd); box-shadow:0 8px 24px -8px rgba(0,0,0,.6); }
.v5a.open .v5a-launch::after{ display:none; }
.v5a.open .v5a-ai, .v5a.open .v5a-badge{ display:none; }
.v5a.open .v5a-launch .v5a-x{ display:block; color:var(--a-muted); }

/* Proactive nudge */
.v5a-nudge{
  position:absolute; right:0; bottom:70px; width:300px; max-width:calc(100vw - 32px); background:var(--a-card);
  border:1px solid var(--a-bd); color:var(--a-ink); border-radius:14px; padding:13px 36px 13px 15px;
  font-size:14px; line-height:1.55; box-shadow:0 18px 50px -16px rgba(0,0,0,.7);
  opacity:0; transform:translateY(8px); pointer-events:none; transition:opacity .25s, transform .25s;
}
.v5a-nudge.show{ opacity:1; transform:translateY(0); pointer-events:auto; }
.v5a-nudge b{ color:var(--a-cyan); font-weight:700; }
.v5a-nudge::after{ content:""; position:absolute; right:22px; bottom:-7px; width:14px; height:14px; background:var(--a-card); border-right:1px solid var(--a-bd); border-bottom:1px solid var(--a-bd); transform:rotate(45deg); }
.v5a-nudge-x{ position:absolute; top:6px; right:8px; background:none; border:none; color:var(--a-faint); font-size:17px; line-height:1; cursor:pointer; padding:2px; }
.v5a-nudge-x:hover{ color:var(--a-ink); }

/* Panel */
.v5a-panel{
  position:absolute; right:0; bottom:70px; width:380px; max-width:calc(100vw - 28px);
  height:min(600px, calc(100vh - 110px)); background:var(--a-bg); border:1px solid var(--a-bd);
  border-radius:18px; box-shadow:0 40px 120px -24px rgba(0,0,0,.8); overflow:hidden;
  display:none; flex-direction:column; opacity:0; transform:translateY(12px) scale(.98);
  transition:opacity .2s ease, transform .2s ease;
}
.v5a.open .v5a-panel{ display:flex; }
.v5a.shown .v5a-panel{ opacity:1; transform:translateY(0) scale(1); }
@media (max-width:520px){ .v5a-panel{ width:calc(100vw - 20px); height:min(74vh, calc(100vh - 90px)); } }

.v5a-head{ display:flex; align-items:center; gap:11px; padding:14px 14px 13px; border-bottom:1px solid var(--a-bd); background:var(--a-surface); }
.v5a-head .v5a-hlogo{ width:30px; height:30px; flex:none; }
.v5a-head .v5a-htitle{ font-weight:700; font-size:15px; color:var(--a-ink); line-height:1.15; }
.v5a-head .v5a-hsub{ font-size:11.5px; color:var(--a-muted); display:flex; align-items:center; gap:5px; margin-top:1px; }
.v5a-head .v5a-hsub i{ width:6px; height:6px; border-radius:50%; background:#34d399; box-shadow:0 0 0 0 rgba(52,211,153,.6); animation:v5a-pulse2 2s infinite; }
@keyframes v5a-pulse2{ 0%{box-shadow:0 0 0 0 rgba(52,211,153,.5)} 70%{box-shadow:0 0 0 5px rgba(52,211,153,0)} 100%{box-shadow:0 0 0 0 rgba(52,211,153,0)} }
.v5a-head .v5a-close{ margin-left:auto; background:none; border:none; color:var(--a-muted); font-size:22px; line-height:1; cursor:pointer; padding:4px 6px; border-radius:8px; }
.v5a-head .v5a-close:hover{ color:var(--a-ink); background:var(--a-card); }

.v5a-body{ flex:1; overflow-y:auto; padding:16px 14px 6px; display:flex; flex-direction:column; gap:12px; scroll-behavior:smooth; }
.v5a-body::-webkit-scrollbar{ width:8px; } .v5a-body::-webkit-scrollbar-thumb{ background:var(--a-bd); border-radius:8px; }

.v5a-msg{ display:flex; gap:9px; align-items:flex-start; max-width:100%; }
.v5a-msg .v5a-av{ width:26px; height:26px; flex:none; border-radius:50%; overflow:hidden; margin-top:2px; }
.v5a-bub{ padding:10px 13px; border-radius:14px; font-size:14px; line-height:1.6; color:var(--a-ink); word-wrap:break-word; overflow-wrap:anywhere; }
.v5a-bot .v5a-bub{ background:var(--a-card); border:1px solid var(--a-bd); border-top-left-radius:5px; }
.v5a-user{ justify-content:flex-end; }
.v5a-user .v5a-bub{ background:var(--a-user); border-top-right-radius:5px; color:#fff; max-width:82%; }
.v5a-bub p{ margin:0 0 7px; } .v5a-bub p:last-child{ margin:0; }
.v5a-bub ul{ margin:4px 0; padding-left:18px; } .v5a-bub li{ margin:2px 0; }
.v5a-bub strong{ color:var(--a-cyan); font-weight:700; }
.v5a-bot .v5a-bub a{ color:var(--a-cyan); }

.v5a-typing{ display:flex; gap:4px; padding:4px 2px; }
.v5a-typing i{ width:7px; height:7px; border-radius:50%; background:var(--a-faint); animation:v5a-blink 1.3s infinite both; }
.v5a-typing i:nth-child(2){ animation-delay:.2s; } .v5a-typing i:nth-child(3){ animation-delay:.4s; }
@keyframes v5a-blink{ 0%,80%,100%{opacity:.25; transform:translateY(0)} 40%{opacity:1; transform:translateY(-3px)} }

/* Chips */
.v5a-chips{ display:flex; flex-wrap:wrap; gap:7px; padding:2px 0 6px 35px; }
.v5a-chip{ font-size:12.5px; font-weight:600; padding:7px 12px; border-radius:999px; cursor:pointer; border:1px solid var(--a-bd); background:var(--a-surface); color:var(--a-ink); transition:.14s; line-height:1.2; }
.v5a-chip:hover{ border-color:var(--a-blue); color:#fff; }
.v5a-chip.v5a-act{ border-color:transparent; background:rgba(63,130,248,.14); color:var(--a-cyan); }
.v5a-chip.v5a-act:hover{ background:rgba(63,130,248,.24); color:#fff; }
.v5a-chip.v5a-act::after{ content:" →"; }

.v5a-foot{ padding:10px 12px 12px; border-top:1px solid var(--a-bd); background:var(--a-surface); }
.v5a-inrow{ display:flex; align-items:flex-end; gap:8px; background:var(--a-bg); border:1px solid var(--a-bd); border-radius:14px; padding:6px 6px 6px 12px; transition:border-color .15s; }
.v5a-inrow:focus-within{ border-color:var(--a-blue); }
.v5a-in{ flex:1; border:none; background:none; color:var(--a-ink); font:14px/1.5 inherit; resize:none; max-height:96px; padding:6px 0; outline:none; }
.v5a-in::placeholder{ color:var(--a-faint); }
.v5a-send{ flex:none; width:34px; height:34px; border-radius:10px; border:none; cursor:pointer; background:var(--a-grad); display:grid; place-items:center; transition:.15s; }
.v5a-send:disabled{ opacity:.4; cursor:default; }
.v5a-send svg{ width:17px; height:17px; }
.v5a-cred{ text-align:center; font-size:10.5px; color:var(--a-faint); margin-top:7px; }

@media (prefers-reduced-motion: reduce){ .v5a *{ animation:none !important; transition:none !important; } }
