/* "Ask me anything" answer panel (ask.js): drops down from the Ask box, wherever the box is (home hero, docked, or nav) */
.ask-panel { position: absolute; left: 0; right: 0; top: calc(100% + 10px); z-index: 40; box-sizing: border-box; text-align: left;
  background: rgba(255,254,252,0.96); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
  border: 1px solid rgba(12,12,12,0.12); border-radius: 22px; box-shadow: 0 24px 60px -24px rgba(20,20,40,0.35);
  font-family: Manrope, system-ui, sans-serif; color: #0c0c0c;
  opacity: 0; transform: translateY(-6px); pointer-events: none; transition: opacity .2s, transform .25s cubic-bezier(.2,.8,.2,1); }
.ask-panel.open { opacity: 1; transform: none; pointer-events: auto; }
.ask-head { display: flex; justify-content: space-between; align-items: center; padding: 12px 12px 0 18px; font-family: Fraunces, Georgia, serif; font-size: 16px; font-weight: 400; letter-spacing: -0.01em; color: #0c0c0c; }
.ask-head span { display: inline-flex; align-items: center; gap: 7px; }
.ask-head svg { flex: none; fill: #b8336a; }
.ask-x { width: 28px; height: 28px; border: 0; border-radius: 50%; background: transparent; color: #67676e; font: 400 20px/1 Manrope, sans-serif; cursor: pointer; }
.ask-x:hover { background: rgba(12,12,12,0.06); color: #0c0c0c; }
.ask-log { max-height: min(380px, 55vh); overflow-y: auto; padding: 10px 18px 6px; display: flex; flex-direction: column; gap: 12px; overscroll-behavior: contain; }
.ask-msg { font-size: 14.5px; line-height: 1.6; white-space: pre-wrap; overflow-wrap: anywhere; }
.ask-msg.user { align-self: flex-end; max-width: 85%; padding: 8px 14px; border-radius: 16px 16px 4px 16px; background: #0c0c0c; color: #fff; }
.ask-msg.bot { align-self: flex-start; max-width: 100%; color: #2b2b2b; }
.ask-msg.bot a { color: #b8336a; }
.ask-msg.err { color: #b8336a; }
.ask-dots { display: inline-flex; gap: 4px; padding: 6px 0; }
.ask-dots i { width: 6px; height: 6px; border-radius: 50%; background: #b8b5ae; animation: ask-dot 1s infinite ease-in-out; }
.ask-dots i:nth-child(2) { animation-delay: .15s; } .ask-dots i:nth-child(3) { animation-delay: .3s; }
@keyframes ask-dot { 0%, 80%, 100% { opacity: .3; transform: none; } 40% { opacity: 1; transform: translateY(-3px); } }
.ask-foot { margin: 0; padding: 8px 18px 12px; font-size: 11.5px; color: #8a8a90; border-top: 1px solid rgba(12,12,12,0.06); }
/* while the panel is open on the home page, the suggested questions underneath step back */
.chat-float.asking ~ .suggest, .chat-slot:has(.asking) + .suggest { opacity: 0 !important; visibility: hidden; }
@media (prefers-reduced-motion: reduce) { .ask-panel { transition: none; } .ask-dots i { animation: none; } }
