/* Minimal styles for Live Agent Chat */
#lac-loader{
  display:none;
  padding:40px 20px;
  background:linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color:#fff;
  margin:20px 0;
  border-radius:12px;
  text-align:center;
  box-shadow:0 8px 32px rgba(0,0,0,0.1);
  position:relative;
  overflow:hidden;
}

#lac-loader::before{
  content:'';
  position:absolute;
  top:0;
  left:-100%;
  width:100%;
  height:100%;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
  animation:shimmer 2s infinite;
}

@keyframes shimmer{
  0%{left:-100%}
  100%{left:100%}
}

#lac-loader-text{
  font-size:18px;
  font-weight:500;
  margin-bottom:20px;
  position:relative;
  z-index:1;
}

#lac-loader-animation{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:8px;
  position:relative;
  z-index:1;
}

.lac-dot{
  width:12px;
  height:12px;
  background:#fff;
  border-radius:50%;
  animation:bounce 1.4s ease-in-out infinite both;
}

.lac-dot:nth-child(1){animation-delay:-0.32s}
.lac-dot:nth-child(2){animation-delay:-0.16s}
.lac-dot:nth-child(3){animation-delay:0s}

@keyframes bounce{
  0%, 80%, 100%{
    transform:scale(0);
    opacity:0.5;
  }
  40%{
    transform:scale(1);
    opacity:1;
  }
}

/* Alternative spinner animation */
.lac-spinner{
  width:40px;
  height:40px;
  border:4px solid rgba(255,255,255,0.3);
  border-top:4px solid #fff;
  border-radius:50%;
  animation:spin 1s linear infinite;
  margin:0 auto;
}

@keyframes spin{
  0%{transform:rotate(0deg)}
  100%{transform:rotate(360deg)}
}

#lac-chat-wrapper{display:none;border:1px solid #ddd;border-radius:6px;max-width:600px}
#lac-messages{height:300px;overflow:auto;padding:10px;background:#fafafa}
.lac-msg{margin-bottom:8px;padding:8px;border-radius:6px;max-width:80%}
.lac-msg-user{background:#e7f3ff;margin-left:auto}
.lac-msg-agent{background:#f1f1f1;margin-right:auto}
#lac-chat-form{display:flex;gap:8px;padding:10px;border-top:1px solid #eee}
#lac-chat-form input[type=text]{flex:1;padding:8px}
.lac-offer{margin-top:6px;padding:8px;border:1px dashed #888;border-radius:4px;background:#fff}
.lac-offer-price{font-weight:bold;margin-top:4px}
.lac-offer-actions{margin-top:8px;display:flex;gap:8px;flex-wrap:wrap}
.lac-bid-wrap{display:flex;gap:4px}
.lac-bid-wrap input{width:100px}
.lac-offer-status{margin-top:8px;font-weight:bold}
.lac-finalized{color:#28a745}
.lac-price-updated{background:#ffeb3b;animation:priceFlash 0.5s ease-in-out}
@keyframes priceFlash{0%,100%{background:#ffeb3b}50%{background:#ffc107}}

/* Agent dashboard status styles */
.lac-agent-status{
  display:inline-block;
  padding:4px 12px;
  border-radius:20px;
  font-size:12px;
  font-weight:500;
  text-transform:uppercase;
  letter-spacing:0.5px;
}

.lac-agent-status.pending{
  background:#fff3cd;
  color:#856404;
  border:1px solid #ffeeba;
}

.lac-agent-status.connected{
  background:#d4edda;
  color:#155724;
  border:1px solid #c3e6cb;
  animation:pulse 2s infinite;
}

@keyframes pulse{
  0%, 100%{opacity:1}
  50%{opacity:0.7}
}

.lac-agent-status.offline{
  background:#f8d7da;
  color:#721c24;
  border:1px solid #f5c6cb;
}

/* Form transition animations */
.lac-form{
  transition:opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
}

.lac-form.fade-out{
  opacity:0;
  transform:translateY(-10px);
}

/* Responsive design */
@media (max-width: 768px) {
  #lac-loader{
    margin:10px 0;
    padding:30px 15px;
  }
  
  #lac-loader-text{
    font-size:16px;
  }
  
  .lac-dot{
    width:10px;
    height:10px;
  }
  
  .lac-spinner{
    width:30px;
    height:30px;
    border-width:3px;
  }
}

.admin .lac-chat-admin{max-width:800px}
