/* Agent Selector Theme Enhancements */

/* 與咖啡主題整合的代理選擇器樣式 */
agent-selector {
  display: block;
  animation: fadeIn 0.5s ease-out;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* 覆寫代理選擇器的顏色以匹配咖啡主題 */
.agent-selector-container {
  background: var(--bg-glass) !important;
  backdrop-filter: blur(12px) !important;
  border: 1px solid var(--latte) !important;
  box-shadow: 0 8px 32px var(--shadow-medium) !important;
}

.agent-selector-header h3 {
  color: var(--dark-roast) !important;
  font-family: 'Lora', serif;
}

.agent-selector-subtitle {
  color: var(--text-secondary) !important;
}

.agent-card {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.9), rgba(245, 230, 211, 0.3)) !important;
  border: 2px solid transparent !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.agent-card:hover {
  background: linear-gradient(135deg, rgba(255, 255, 255, 1), rgba(245, 230, 211, 0.5)) !important;
  border-color: var(--caramel) !important;
  transform: translateY(-4px) scale(1.02) !important;
  box-shadow: 0 12px 24px var(--shadow-medium) !important;
}

.agent-card.selected {
  background: linear-gradient(135deg, var(--caramel), var(--medium-roast)) !important;
  border-color: var(--dark-roast) !important;
  box-shadow: 0 12px 32px rgba(125, 79, 57, 0.4) !important;
}

.agent-card.selected::after {
  content: '';
  position: absolute;
  top: -2px;
  left: -2px;
  right: -2px;
  bottom: -2px;
  background: linear-gradient(45deg, var(--latte), var(--caramel), var(--latte));
  border-radius: 14px;
  opacity: 0.6;
  z-index: -1;
  animation: shimmer 3s ease-in-out infinite;
}

@keyframes shimmer {
  0%, 100% {
    opacity: 0.6;
  }
  50% {
    opacity: 0.3;
  }
}

.agent-icon {
  transition: transform 0.3s ease !important;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);
}

.agent-card:hover .agent-icon {
  transform: scale(1.1) rotate(5deg);
}

.agent-card.selected .agent-icon {
  transform: scale(1.15);
  animation: bounce 2s ease-in-out infinite;
}

@keyframes bounce {
  0%, 100% {
    transform: scale(1.15) translateY(0);
  }
  50% {
    transform: scale(1.15) translateY(-5px);
  }
}

.agent-name {
  color: var(--text-primary) !important;
  font-family: 'Lora', serif;
  font-weight: 500 !important;
}

.agent-description {
  color: var(--text-secondary) !important;
  font-family: 'Caveat', cursive;
  font-size: 1rem !important;
}

.agent-card.selected .agent-name,
.agent-card.selected .agent-description {
  color: var(--cream) !important;
}

.agent-cli-badge {
  background: var(--foam) !important;
  color: var(--dark-roast) !important;
  font-family: monospace;
  border: 1px solid var(--latte);
}

.agent-model-badge {
  background: var(--caramel) !important;
  color: var(--cream) !important;
  font-weight: 600 !important;
  border: 1px solid var(--medium-roast);
}

.agent-card.selected .agent-cli-badge,
.agent-card.selected .agent-model-badge {
  background: rgba(255, 255, 255, 0.25) !important;
  color: var(--cream) !important;
  border-color: rgba(255, 255, 255, 0.3);
}

.agent-limits {
  color: var(--text-muted) !important;
  font-size: 0.8rem !important;
}

.agent-card.selected .agent-limits {
  color: rgba(255, 255, 255, 0.8) !important;
}

.agent-check {
  background: var(--cream) !important;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2) !important;
}

.agent-check svg {
  stroke: var(--caramel) !important;
}

/* 動畫效果增強 */
.agent-card {
  position: relative;
  overflow: visible !important;
}

.agent-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: radial-gradient(circle at 50% 0%, rgba(255, 255, 255, 0.4), transparent 70%);
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.agent-card:hover::before {
  opacity: 1;
}

/* 響應式調整 */
@media (max-width: 768px) {
  .agent-selector-container {
    padding: 16px !important;
    margin: 12px !important;
  }
  
  .agent-card {
    padding: 16px !important;
  }
  
  .agent-icon {
    font-size: 2.5rem !important;
  }
}

/* 深色模式支援 */
@media (prefers-color-scheme: dark) {
  .agent-selector-container {
    background: rgba(26, 15, 10, 0.9) !important;
    border-color: var(--medium-roast) !important;
  }
  
  .agent-card {
    background: linear-gradient(135deg, rgba(45, 24, 16, 0.9), rgba(74, 44, 32, 0.5)) !important;
  }
  
  .agent-card:hover {
    background: linear-gradient(135deg, rgba(74, 44, 32, 0.9), rgba(125, 79, 57, 0.5)) !important;
  }
  
  .agent-name {
    color: var(--foam) !important;
  }
  
  .agent-description {
    color: var(--latte) !important;
  }
}