:root{
  --vera-bg:#0f172a;
  --vera-panel:#111c36;
  --vera-border:#223154;
  --vera-text:#e5e7eb;
  --vera-muted:#9aa4b2;
  --vera-blue:#2f7dff;
  --vera-orange:#ff8a2f;
  --vera-green:#1aa96b;
  --vera-shadow: 0 14px 40px rgba(0,0,0,.35);
  --vera-radius: 16px;
}

#veraFab{
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 9998;
  display:flex;
  gap:10px;
  align-items:center;
  font-family: Arial, sans-serif;
}

#veraFab button{
  border:0;
  cursor:pointer;
  padding:12px 14px;
  border-radius:999px;
  background: var(--vera-blue);
  color: white;
  font-weight: 800;
  box-shadow: var(--vera-shadow);
}

#veraFab .veraHint{
  display:none;
  background: rgba(17,28,54,.92);
  border:1px solid var(--vera-border);
  color: var(--vera-text);
  padding:10px 12px;
  border-radius: 999px;
  max-width: 50vw;
  overflow:hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media (min-width: 900px){
  #veraFab .veraHint{ display:block; }
}

#veraOverlay{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.55);
  z-index: 9999;
  display:none;
}

#veraPanel{
  position: fixed;
  top: 0;
  right: -420px;
  height: 100vh;
  width: min(420px, 92vw);
  background: var(--vera-panel);
  border-left: 1px solid var(--vera-border);
  z-index: 10000;
  box-shadow: var(--vera-shadow);
  transition: right .22s ease;
  display:flex;
  flex-direction: column;
  font-family: Arial, sans-serif;
  color: var(--vera-text);
}

#veraPanel.open{ right: 0; }

#veraHeader{
  padding: 14px 14px 10px;
  border-bottom: 1px solid var(--vera-border);
  display:flex;
  justify-content: space-between;
  align-items:center;
  gap:10px;
}

#veraHeader .title{
  display:flex;
  flex-direction: column;
  gap:2px;
  min-width: 0;
}
#veraHeader .title b{ font-size: 14px; }
#veraHeader .title span{
  font-size: 12px;
  color: var(--vera-muted);
  overflow:hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 260px;
}

#veraHeader .actions{ display:flex; gap:8px; }
#veraHeader .actions button{
  background: transparent;
  border: 1px solid var(--vera-border);
  color: var(--vera-text);
  padding:8px 10px;
  border-radius: 12px;
  cursor:pointer;
}

#veraTabs{
  display:flex;
  gap:8px;
  padding: 10px 14px;
  border-bottom: 1px solid var(--vera-border);
}
#veraTabs button{
  flex:1;
  border:1px solid var(--vera-border);
  background: rgba(15,23,42,.35);
  color: var(--vera-text);
  padding:10px;
  border-radius: 12px;
  cursor:pointer;
  font-weight: 700;
}
#veraTabs button.active{
  background: var(--vera-blue);
  border-color: transparent;
}

#veraBody{ padding: 12px 14px; overflow:auto; flex:1; }

.veraCard{
  border:1px solid var(--vera-border);
  background: rgba(15,23,42,.35);
  border-radius: var(--vera-radius);
  padding: 12px;
  margin-bottom: 10px;
}

.veraCard h3{ margin:0 0 6px; font-size: 13px; }
.veraCard p{ margin:0; font-size: 13px; line-height: 1.35; color: var(--vera-text); }
.veraCard .muted{ color: var(--vera-muted); font-size: 12px; margin-top: 6px; }

#veraChat{ display:flex; flex-direction: column; gap:10px; }

.msg{
  max-width: 92%;
  padding: 10px 12px;
  border-radius: 14px;
  border:1px solid var(--vera-border);
  background: rgba(15,23,42,.35);
  font-size: 13px;
  line-height: 1.35;
}
.msg.user{
  margin-left:auto;
  background: rgba(47,125,255,.16);
  border-color: rgba(47,125,255,.35);
}

#veraFooter{
  border-top: 1px solid var(--vera-border);
  padding: 10px 14px;
  display:flex;
  gap:10px;
}
#veraFooter input{
  flex:1;
  padding: 12px;
  border-radius: 12px;
  border:1px solid var(--vera-border);
  background: rgba(15,23,42,.35);
  color: var(--vera-text);
  outline:none;
}
#veraFooter button{
  padding: 12px 14px;
  border-radius: 12px;
  border:0;
  background: var(--vera-green);
  color: white;
  font-weight: 800;
  cursor:pointer;
}

#veraNet{
  font-size: 12px;
  color: var(--vera-muted);
  padding: 0 14px 12px;
}
