/* Jarvis: botón flotante compacto abajo a la izquierda y conversación compacta. */
#jarvis-boton{position:fixed!important;left:max(12px,env(safe-area-inset-left))!important;bottom:max(12px,env(safe-area-inset-bottom))!important;right:auto!important;top:auto!important;z-index:2147483645;display:inline-flex;align-items:center;justify-content:center;width:48px;min-width:48px;height:36px;min-height:36px;padding:0 8px;border:1px solid #6f6b99;border-radius:18px;background:var(--surface,#171925);color:inherit;box-shadow:0 5px 18px #0004;font:inherit;font-size:12px;font-weight:600;cursor:pointer}
#jarvis-boton[hidden],#jarvis-panel[hidden],#jarvis-fondo[hidden]{display:none!important}
#jarvis-fondo{position:fixed;inset:0;background:#10172866;z-index:2147483646}
#jarvis-panel{--j-bg:#171925;--j-card:#242837;--j-text:#f4f6ff;--j-border:#41495d;position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2147483647;background:var(--j-bg);color:var(--j-text);border:1px solid var(--j-border);border-radius:14px;width:min(400px,calc(100vw - 24px));height:min(460px,calc(100dvh - 48px));box-shadow:0 18px 60px #0005;display:flex;flex-direction:column;overflow:hidden;font-family:inherit}
html[data-theme=light] #jarvis-panel{--j-bg:#fff;--j-card:#f3f5f9;--j-text:#182338;--j-border:#d4dae4}
#jarvis-panel header{position:static!important;display:block!important;flex:none;box-shadow:none;border:0;border-radius:0;width:100%;padding:11px 15px!important;background:var(--j-bg);border-bottom:1px solid var(--j-border)}
#jarvis-panel h2{margin:0!important;padding:0!important;font-size:16px!important;line-height:1.4;font-weight:600;color:var(--j-text);border:0}
#jarvis-chat{flex:1;min-height:0;overflow:auto;padding:14px;overscroll-behavior:contain}
#jarvis-panel .jarvis-burbuja{margin:0 0 15px;overflow-wrap:anywhere;max-width:100%;font-size:15px}
#jarvis-panel .jarvis-usuario{margin-left:auto;width:fit-content;max-width:88%;padding:9px 12px;background:var(--j-card);border-radius:12px;color:var(--j-text)}
#jarvis-panel .jarvis-respuesta{padding:0 2px;background:transparent;border:0}
#jarvis-panel .jarvis-burbuja p{white-space:pre-wrap;line-height:1.55;margin:0}
#jarvis-panel form{flex:none;display:flex;align-items:flex-end;gap:8px;padding:10px 12px!important;margin:0!important;border-top:1px solid var(--j-border);background:var(--j-bg)}
#jarvis-panel textarea{flex:1;min-width:0;box-sizing:border-box;background:var(--j-card);color:var(--j-text);border:1px solid var(--j-border);border-radius:10px;font:inherit;font-size:16px;padding:9px 10px;margin:0!important;min-height:56px;max-height:105px;resize:vertical}
#jarvis-panel textarea::placeholder{color:var(--j-text);opacity:.65}
#jarvis-enviar{flex:none;min-height:42px;padding:8px 12px;margin:0;border:1px solid #315bdc;border-radius:10px;background:#315bdc;color:#fff;font:inherit;font-size:14px;cursor:pointer}
#jarvis-enviar:disabled{opacity:.55;cursor:wait}
#jarvis-panel .jarvis-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap;border:0!important}
#jarvis-panel :focus-visible,#jarvis-boton:focus-visible{outline:3px solid #60a5fa;outline-offset:2px}
@media(max-width:520px){#jarvis-panel{width:calc(100vw - 24px);height:min(480px,calc(100dvh - 96px));border-radius:12px}}

#jarvis-panel .jarvis-fuentes{margin-top:7px;font-size:11px;line-height:1.35;opacity:.88;overflow-wrap:anywhere}
#jarvis-panel .jarvis-fuentes a{color:#7aa7ff;text-decoration:underline;text-underline-offset:2px}
html[data-theme=light] #jarvis-panel .jarvis-fuentes a{color:#2457c5}
