/* AI Consultant modal — corporate flat, no rainbow, no 3D */

.ai-consultant-overlay  { position: fixed; inset: 0; z-index: 10010; }
.ai-consultant-backdrop { position: absolute; inset: 0; background: rgba(15,23,42,0.50); backdrop-filter: blur(2px); }
.ai-consultant-panel    {
  position: relative;
  max-width: 540px;
  margin: 8vh auto 0;
  background: #ffffff;
  border: 1px solid rgba(15,23,42,0.08);
  border-radius: 16px;
  box-shadow: 0 24px 80px rgba(15,23,42,0.18);
  padding: 28px 28px 24px;
}
.ai-consultant-close {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 36px;
  height: 36px;
  border-radius: 8px;
  border: 0;
  background: transparent;
  color: #475569;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  min-height: 44px;
  min-width: 44px;
}
.ai-consultant-close:hover  { background: rgba(15,23,42,0.05); }
.ai-consultant-close:focus-visible { outline: 2px solid #6366F1; outline-offset: 2px; }
.ai-consultant-title { font-size: 1.5rem; font-weight: 700; margin: 0 0 8px; color: #0F172A; letter-spacing: -0.015em; }
.ai-consultant-intro { font-size: 0.95rem; color: #475569; line-height: 1.55; margin: 0 0 20px; }
.ai-consultant-stage { min-height: 280px; display: flex; flex-direction: column; align-items: center; gap: 12px; padding: 12px 0; }
.ai-consultant-mic-hint { font-size: 0.85rem; color: #64748B; text-align: center; margin: 0; }
.ai-consultant-text-fallback { display: flex; flex-direction: column; gap: 10px; }
.ai-consultant-text-fallback textarea {
  width: 100%;
  border: 1px solid rgba(15,23,42,0.12);
  border-radius: 8px;
  padding: 12px;
  font-family: inherit;
  font-size: 0.95rem;
  resize: vertical;
}
.ai-consultant-text-fallback textarea:focus { outline: 2px solid #6366F1; outline-offset: -1px; border-color: transparent; }
.ai-consultant-toggle-mode {
  display: block;
  margin: 16px auto 0;
  padding: 8px 12px;
  background: transparent;
  border: 0;
  color: #6366F1;
  font-size: 0.85rem;
  font-weight: 500;
  cursor: pointer;
  text-decoration: underline;
  min-height: 32px;
}
.ai-consultant-toggle-mode:hover { color: #4F46E5; }

@media (max-width: 600px) {
  .ai-consultant-panel { margin: 4vh 16px 0; max-width: calc(100vw - 32px); padding: 24px 20px 20px; }
  .ai-consultant-title { font-size: 1.25rem; }
}

@media (prefers-reduced-motion: reduce) {
  .ai-consultant-backdrop { backdrop-filter: none; }
}

[data-theme="dark"] .ai-consultant-panel { background: #0F172A; border-color: rgba(248,250,252,0.10); }
[data-theme="dark"] .ai-consultant-title { color: #F8FAFC; }
[data-theme="dark"] .ai-consultant-intro { color: #CBD5E1; }
[data-theme="dark"] .ai-consultant-mic-hint { color: #94A3B8; }
[data-theme="dark"] .ai-consultant-close { color: #CBD5E1; }
[data-theme="dark"] .ai-consultant-close:hover { background: rgba(248,250,252,0.08); }
[data-theme="dark"] .ai-consultant-text-fallback textarea {
  background: #1E293B;
  color: #F8FAFC;
  border-color: rgba(248,250,252,0.10);
}
