/* ia.css — La IA Mental (chat que "lee" pensamientos) */

/* Barra de salida (igual que el resto de efectos) */
.exit-bar { position:fixed; top:10px; right:10px; display:flex; gap:8px; z-index:60; }
.exit-btn { font-size:12px; font-weight:600; padding:6px 11px; border-radius:9px; border:1px solid var(--line); background:rgba(255,255,255,.92); color:var(--muted); cursor:pointer; box-shadow:0 2px 8px rgba(0,0,0,.08); -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px); }
.exit-btn:active { transform:translateY(1px); }
.exit-btn.danger { color:var(--danger); border-color:#f3c9d2; }
#logout-btn { display:none; }

/* ===================== JUEGO (chat) ===================== */
.ia-screen { position:fixed; inset:0; display:flex; flex-direction:column; background:#212121; color:#ececec; }
.ia-screen .exit-btn { background:rgba(48,48,48,.9); color:#b0b0b0; border-color:#4a4a4a; }

.ia-bar { display:flex; align-items:center; gap:10px; padding:12px 16px; background:#171717; border-bottom:1px solid #303030; }
.ia-logo { width:34px; height:34px; border-radius:50%; background:linear-gradient(135deg,#19c37d,#0f8a5f); display:flex; align-items:center; justify-content:center; flex:0 0 34px; }
.ia-barinfo { display:flex; flex-direction:column; gap:1px; }
.ia-name { font-size:14.5px; font-weight:700; }
.ia-substate { font-size:11.5px; color:#19c37d; }

.ia-chat { flex:1; overflow-y:auto; padding:18px 14px 12px; display:flex; flex-direction:column; gap:10px; }
.ia-welcome { text-align:center; margin:26px 0 10px; color:#ececec; font-size:15.5px; }
.ia-welcome p { margin:0 0 4px; }
.ia-welcome .dim { color:#8e8e8e; font-size:13px; }

.ia-msg { max-width:82%; padding:10px 14px; border-radius:16px; font-size:15px; line-height:1.5; white-space:pre-wrap; word-break:break-word; }
.ia-msg.user { align-self:flex-end; background:#2f2f2f; border-bottom-right-radius:5px; }
.ia-msg.bot { align-self:flex-start; background:#171717; border:1px solid #303030; border-bottom-left-radius:5px; }
.ia-msg.bot.big { font-size:26px; font-weight:800; letter-spacing:2px; color:#19c37d; }

/* Indicador de "escribiendo…" */
.ia-msg.typing { display:flex; gap:5px; padding:14px 16px; }
.ia-msg.typing span { width:7px; height:7px; border-radius:50%; background:#8e8e8e; animation:iaDot 1.2s ease-in-out infinite; }
.ia-msg.typing span:nth-child(2) { animation-delay:.18s; }
.ia-msg.typing span:nth-child(3) { animation-delay:.36s; }
@keyframes iaDot { 0%,100% { opacity:.25; transform:translateY(0); } 40% { opacity:1; transform:translateY(-3px); } }

/* Tarjeta de imagen "generada" */
.ia-msg.imgcard { padding:8px; }
.ia-gen { width:min(64vw, 300px); aspect-ratio:1/1; border-radius:12px; overflow:hidden; background:#0d0d0d; display:flex; align-items:center; justify-content:center; }
.ia-shimmer { width:100%; height:100%; background:linear-gradient(110deg, #1c1c1c 40%, #2e2e2e 50%, #1c1c1c 60%); background-size:220% 100%; animation:iaShim 1.3s linear infinite; }
@keyframes iaShim { from { background-position:130% 0; } to { background-position:-90% 0; } }
.ia-img { width:100%; height:100%; object-fit:cover; filter:blur(26px) saturate(.4); transform:scale(1.12); transition:filter 2.4s ease, transform 2.4s ease; }
.ia-img.show { filter:blur(0) saturate(1); transform:scale(1); }

/* Barra de escritura */
.ia-composer { display:flex; gap:9px; padding:10px 12px 14px; background:#171717; border-top:1px solid #303030; }
.ia-composer input { flex:1; padding:12px 16px; border-radius:22px; border:1px solid #3a3a3a; background:#2f2f2f; color:#ececec; font-size:15px; outline:none; }
.ia-composer input:focus { border-color:#19c37d; }
.ia-composer button { width:44px; height:44px; border-radius:50%; border:none; background:#19c37d; color:#0d0d0d; cursor:pointer; display:flex; align-items:center; justify-content:center; }
.ia-composer button:active { transform:translateY(1px); }

/* ===================== CONTROL ===================== */
.iac-preview { width:100%; display:flex; flex-direction:column; align-items:center; gap:8px; padding:12px; border-radius:14px; border:1.5px dashed var(--line); background:#fafafd; }
.iac-prevstate { font-size:12px; color:var(--muted); text-align:center; }
.iac-previmg { width:100%; max-height:180px; object-fit:cover; border-radius:10px; }
.iac-previmg.hidden { display:none; }

.iac-search { width:100%; padding:11px; border-radius:13px; border:1.5px solid var(--brand1); background:#fff; color:var(--brand1); font-weight:800; letter-spacing:.5px; cursor:pointer; }
.iac-search:active { transform:translateY(1px); }

.iac-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; width:100%; }
.iac-act { display:flex; flex-direction:column; align-items:center; gap:3px; padding:14px 4px; border-radius:13px; border:none; cursor:pointer; color:#fff; font-weight:800; }
.iac-act:active { transform:translateY(1px); }
.iac-act .big { font-size:15px; }
.iac-act .sub { font-size:10.5px; font-weight:600; opacity:.85; }
.iac-act.img  { background:linear-gradient(135deg,#19c37d,#0f8a5f); }
.iac-act.img:disabled { opacity:.4; cursor:default; }
.iac-act.word { background:linear-gradient(135deg,#6c5ce7,#4834b8); }

.iac-reset { width:100%; padding:12px; border-radius:13px; border:none; cursor:pointer; color:#e6e9f2; font-weight:800; letter-spacing:.5px; background:#3a4150; }
.iac-reset:active { transform:translateY(1px); }
