/* Solertia AI — widget embebible. Usa las variables de style.css (--navy, --royal, --sky, --paper, --ink, --mist). */

#solertia-ai-launcher{
  position:fixed; bottom:24px; right:24px; z-index:9999;
  background:var(--navy); color:#fff; border:none; border-radius:50px;
  padding:14px 20px 14px 16px; display:flex; align-items:center; gap:10px;
  box-shadow:0 8px 24px rgba(16,27,51,.35); cursor:pointer;
  font-family:var(--font-body); font-weight:600; font-size:14px;
  transition:transform .15s ease;
}
#solertia-ai-launcher:hover{ transform:translateY(-2px); }
#solertia-ai-launcher .sai-dot{ width:9px; height:9px; border-radius:50%; background:var(--sky); }

#solertia-ai-teaser{
  position:fixed; bottom:78px; right:24px; z-index:9998;
  background:#fff; border:1px solid var(--mist); border-radius:14px 14px 4px 14px;
  padding:12px 16px; max-width:230px; font-size:13px; color:var(--ink); line-height:1.4;
  box-shadow:0 10px 30px rgba(16,27,51,.18); display:none; cursor:pointer;
  font-family:var(--font-body);
}
#solertia-ai-teaser.show{ display:block; animation:sai-pop .25s ease; }
#solertia-ai-teaser .sai-teaser-close{ position:absolute; top:-8px; right:-8px; background:var(--navy); color:#fff; width:20px; height:20px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:11px; }
@keyframes sai-pop{ from{ opacity:0; transform:translateY(6px); } to{ opacity:1; transform:translateY(0); } }

#solertia-ai-panel{
  position:fixed; bottom:24px; right:24px; z-index:9999;
  width:380px; max-width:calc(100vw - 32px); height:560px; max-height:calc(100vh - 48px);
  background:#fff; border-radius:16px; box-shadow:0 20px 60px rgba(16,27,51,.35);
  display:none; flex-direction:column; overflow:hidden; border:1px solid var(--mist);
  font-family:var(--font-body);
}
#solertia-ai-panel.open{ display:flex; }
.sai-head{
  background:var(--navy); color:#fff; padding:16px 18px; display:flex; align-items:center; justify-content:space-between;
  border-bottom:3px solid var(--sky);
}
.sai-head .sai-who{ display:flex; flex-direction:column; }
.sai-head .sai-name{ font-family:var(--font-display); font-weight:600; font-size:15px; }
.sai-head .sai-tag{ font-family:var(--font-mono); font-size:10px; color:var(--sky); letter-spacing:1px; text-transform:uppercase; margin-top:2px; }
.sai-head button{ background:none; border:none; color:#fff; font-size:18px; cursor:pointer; opacity:.8; line-height:1; }
.sai-head button:hover{ opacity:1; }

.sai-messages{ flex:1; overflow-y:auto; padding:16px; display:flex; flex-direction:column; gap:12px; background:var(--paper); }
.sai-msg{ max-width:90%; font-size:13.5px; line-height:1.5; }
.sai-msg.user{ align-self:flex-end; }
.sai-msg.assistant{ align-self:flex-start; }
.sai-bubble{ padding:10px 13px; border-radius:12px; }
.sai-msg.user .sai-bubble{ background:var(--royal); color:#fff; border-bottom-right-radius:3px; }
.sai-msg.assistant .sai-bubble{ background:#fff; border:1px solid var(--mist); color:var(--ink); border-bottom-left-radius:3px; white-space:pre-wrap; }

.sai-tool-card{
  display:block; background:#fff; border:1px solid var(--sky); border-radius:10px; padding:10px 12px;
  margin-top:6px; text-decoration:none; color:var(--navy); font-size:13px;
}
.sai-tool-card:hover{ background:#E9F4FB; }
.sai-tool-card .sai-t-name{ font-weight:700; font-family:var(--font-display); font-size:13.5px; }
.sai-tool-card .sai-t-desc{ color:var(--steel); font-size:12px; margin-top:2px; }
.sai-tool-card .sai-t-cta{ font-family:var(--font-mono); font-size:10.5px; color:var(--sky); margin-top:6px; letter-spacing:.5px; }

.sai-meeting-card{ border:1px solid var(--royal); background:#F4F7FC; }
.sai-meeting-card:hover{ background:#E9EFFA; }
.sai-meeting-card .sai-t-cta{ color:var(--royal); font-weight:700; }

.sai-suggestions{ padding:0 14px 10px; display:flex; gap:6px; flex-wrap:wrap; }
.sai-chip{ font-size:11px; font-family:var(--font-mono); background:#fff; border:1px solid var(--mist); padding:5px 9px; border-radius:16px; cursor:pointer; color:var(--steel); }
.sai-chip:hover{ border-color:var(--sky); color:var(--royal); }

.sai-composer{ padding:12px 14px; border-top:1px solid var(--mist); display:flex; gap:8px; background:#fff; }
.sai-composer textarea{ flex:1; resize:none; border:1px solid var(--mist); border-radius:9px; padding:9px 11px; font-family:var(--font-body); font-size:13px; min-height:38px; max-height:90px; outline:none; }
.sai-composer textarea:focus{ border-color:var(--sky); }
.sai-composer button{ background:var(--navy); color:#fff; border:none; border-radius:9px; padding:0 16px; font-weight:600; font-size:13px; cursor:pointer; }
.sai-composer button:disabled{ opacity:.5; }

@media(max-width:480px){
  #solertia-ai-panel{ width:calc(100vw - 24px); right:12px; bottom:12px; height:calc(100vh - 96px); }
  #solertia-ai-launcher{ right:12px; bottom:12px; }
  #solertia-ai-teaser{ right:12px; }
}
