#antigravity-voice-mount {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
.ag-voice-container {
  pointer-events: auto;
  position: absolute;
  bottom: 32px;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  box-shadow: 0 12px 32px rgba(0,0,0,0.15);
  animation: ag-pulse 2s infinite;
  cursor: pointer;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  overflow: hidden;
  z-index: 999999;
}
.ag-voice-container.ag-active {
  width: 340px;
  height: min(600px, 70vh);
  border-radius: 20px;
  animation: none;
  background-color: #ffffff !important;
  box-shadow: 0 20px 40px rgba(0,0,0,0.25);
  cursor: default;
  display: flex;
}
.ag-voice-pos-right { right: 32px; }
.ag-voice-pos-left { left: 32px; }

@keyframes ag-pulse {
  0% { transform: scale(1); box-shadow: 0 12px 32px rgba(0,0,0,0.15); }
  50% { transform: scale(1.05); box-shadow: 0 16px 40px rgba(0,0,0,0.25); }
  100% { transform: scale(1); box-shadow: 0 12px 32px rgba(0,0,0,0.15); }
}

.ag-voice-header {
  padding: 16px 20px;
  color: #fff;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: 600;
  font-size: 16px;
}
.ag-voice-close {
  cursor: pointer;
  padding: 4px;
  opacity: 0.8;
}
.ag-voice-close:hover { opacity: 1; }

.ag-voice-body {
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  background-color: #fcfcfc;
  flex: 1;
  overflow-y: auto;
}
.ag-msg-sys {
  align-self: flex-start;
  background: #f1f1f1;
  color: #333;
  padding: 10px 14px;
  border-radius: 14px;
  border-bottom-left-radius: 4px;
  max-width: 85%;
  font-size: 14px;
  line-height: 1.4;
}
.ag-msg-usr {
  align-self: flex-end;
  color: #fff;
  padding: 10px 14px;
  border-radius: 14px;
  border-bottom-right-radius: 4px;
  max-width: 85%;
  font-size: 14px;
  line-height: 1.4;
}
.ag-voice-footer {
  padding: 16px 20px;
  background: #fff;
  border-top: 1px solid #eaeaea;
  display: flex;
  justify-content: center;
  align-items: center;
}
.ag-mic-btn {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: none;
  color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  transition: transform 0.2s;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
.ag-mic-btn:hover { transform: scale(1.05); }
.ag-mic-btn.ag-recording { animation: ag-pulse 1s infinite; }

.widget-panel {
  position: fixed !important;
  bottom: 40px !important;
  right: 40px !important;
  z-index: 999999 !important;
}

.widget-panel.left {
  right: auto !important;
  left: 40px !important;
}
