/* Widget de preguntas frecuentes sobre Programación — Teatro Circo Apolo.
 * Burbuja flotante que responde con datos reales (eventos.json), generado
 * automáticamente cada vez que se toca algo en el panel de Programación.
 * Sin IA: es un buscador/emparejador contra los eventos publicados. */
.tca-chat-bubble{
  position:fixed; bottom:24px; right:24px; z-index:9999;
  width:60px; height:60px; border-radius:50%;
  background:#A6283B; color:#fff; border:none; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 6px 20px rgba(0,0,0,.35);
  font-size:26px; font-family:'Work Sans',sans-serif;
  transition:transform .15s;
}
.tca-chat-bubble:hover{ transform:scale(1.06); background:#C23B4F; }

.tca-chat-panel{
  position:fixed; bottom:96px; right:24px; z-index:9999;
  width:340px; max-width:calc(100vw - 32px);
  height:480px; max-height:calc(100vh - 140px);
  background:#1C1613; border:1px solid #332A24; border-radius:12px;
  box-shadow:0 16px 50px rgba(0,0,0,.5);
  display:none; flex-direction:column; overflow:hidden;
  font-family:'Work Sans',sans-serif;
}
.tca-chat-panel.tca-open{ display:flex; }

.tca-chat-header{
  background:#14100E; padding:16px 18px; border-bottom:1px solid #332A24;
  display:flex; align-items:center; justify-content:space-between;
}
.tca-chat-header .tca-title{ color:#F2EAD9; font-family:'Bodoni Moda',serif; font-size:15px; }
.tca-chat-header .tca-subtitle{ color:#948A7E; font-size:11px; margin-top:2px; }
.tca-chat-close{ background:none; border:none; color:#948A7E; font-size:20px; cursor:pointer; line-height:1; padding:4px; }
.tca-chat-close:hover{ color:#F2EAD9; }

.tca-chat-body{
  flex:1; overflow-y:auto; padding:16px; display:flex; flex-direction:column; gap:10px;
}
.tca-msg{ max-width:88%; font-size:13.5px; line-height:1.55; padding:10px 13px; border-radius:10px; }
.tca-msg-bot{ background:#221B17; color:#F2EAD9; align-self:flex-start; border-bottom-left-radius:2px; }
.tca-msg-user{ background:#A6283B; color:#fff; align-self:flex-end; border-bottom-right-radius:2px; }
.tca-msg-bot a{ color:#C9A05C; }
.tca-msg-bot strong{ color:#C9A05C; }

.tca-quick-replies{ display:flex; flex-wrap:wrap; gap:6px; margin-top:4px; }
.tca-quick-btn{
  background:transparent; border:1px solid #332A24; color:#C9A05C;
  font-size:11.5px; padding:7px 11px; border-radius:14px; cursor:pointer;
  font-family:'Work Sans',sans-serif;
}
.tca-quick-btn:hover{ border-color:#C9A05C; background:rgba(201,160,92,.1); }

.tca-event-card{
  background:#221B17; border:1px solid #332A24; border-radius:8px; padding:12px 14px; margin-top:4px;
}
.tca-event-card .tca-ev-title{ color:#C9A05C; font-family:'Bodoni Moda',serif; font-size:14px; margin-bottom:4px; }
.tca-event-card .tca-ev-date{ color:#C23B4F; font-size:11.5px; font-weight:600; margin-bottom:6px; }
.tca-event-card .tca-ev-price{ color:#948A7E; font-size:12px; margin-bottom:8px; }
.tca-event-card .tca-ev-actions{ display:flex; gap:8px; }
.tca-event-card .tca-ev-actions a{
  font-size:11px; letter-spacing:.04em; text-transform:uppercase; padding:6px 10px;
  border-radius:4px; text-decoration:none;
}
.tca-event-card .tca-ev-ver{ border:1px solid #332A24; color:#948A7E; }
.tca-event-card .tca-ev-comprar{ background:#A6283B; color:#fff; }

.tca-chat-footer{
  border-top:1px solid #332A24; padding:12px; display:flex; gap:8px; background:#14100E;
}
.tca-chat-input{
  flex:1; background:#221B17; border:1px solid #332A24; color:#F2EAD9;
  padding:10px 12px; border-radius:6px; font-size:13px; font-family:'Work Sans',sans-serif;
}
.tca-chat-input:focus{ outline:none; border-color:#C9A05C; }
.tca-chat-send{
  background:#A6283B; color:#fff; border:none; border-radius:6px; padding:0 16px; cursor:pointer; font-size:13px;
}
.tca-chat-send:hover{ background:#C23B4F; }

@media(max-width:420px){
  .tca-chat-panel{ right:16px; bottom:88px; width:calc(100vw - 32px); }
  .tca-chat-bubble{ right:16px; bottom:16px; }
}
