Faits: A. A.a Y._ (l'assurée) a souscrit un contrat d'assurance protection juridique prenant effet le 1er octobre 2007, auprès d'une société devenue ultérieurement X._ SA (l'assurance). L'assurée travaillait alors depuis plusieurs années en qualité de "food safety manager" au service d'une personne morale active dans le secteur alimentaire. En 2009, elle s'est plainte auprès de son employeuse de harcèlement moral et psychologique ainsi que de problèmes de sécurité alimentaire dans l'entreprise. En septembre 2009, elle a pris contact avec l'assurance et lui a exposé le litige l'opposant à son employeuse. Dans un courrier du 13 septembre 2009, l'assurée a expliqué pour quels motifs elle souhaitait les services d'un avocat, citant notamment l'éventualité de "défendre [s]on cas au tribunal"; elle a demandé si l'assurance était prête à couvrir les frais. Par courriel du 16 septembre 2009, l'assurance a répondu comme il suit: "Comme nous l'avons évoqué lors de notre entretien, la couverture d'assurance étant donnée dans cette affaire et vu les circonstances, nous acceptons le mandat d'un avocat externe pour défendre vos intérêts dans le conflit qui vous oppose à votre employeur. Nous assumerons les frais de ce mandataire. Aucune participation financière n'est requise de votre part." L'assurance a confié le mandat à l'avocat genevois A._. Le 23 septembre 2009, elle lui a donné une "confirmation de garantie" "couvr[ant] toutes les démarches nécessaires et appropriées" qu'il aurait à entreprendre, en le priant de solliciter son accord "préalablement à toutes démarches qui dépasseraient ce cadre, en particulier pour le dépôt d'un recours contre une décision rendue par une autorité"; elle a accepté de prendre en charge les honoraires sur la base d'un tarif horaire de 400 fr. Me A._ a par la suite pris contact avec l'employeuse de l'assurée. A.b Le 29 janvier 2010, l'employeuse a résilié le contrat de travail de l'assurée avec effet au 31 août 2010. Elle proposait de verser à l'assurée le montant brut de 300'000 fr. (severance payment) pour solde de tout compte. L'assurance a fait savoir à Me A._ qu'elle couvrait les frais et honoraires pour les démarches en vue d'un règlement amiable, mais que toute nouvelle démarche pour la défense des intérêts de la demanderesse requerrait son accord préalable; à son avis, il était plus judicieux que l'assurée acceptât un arrangement à l'amiable. Me A._, sans en référer au préalable à l'assurance, a transmis le dossier à l'avocat D._. Ce dernier a demandé à l'assurance de confirmer qu'elle couvrirait tous les frais en relation avec le litige. L'assurance a pris acte du changement d'avocat et a proposé un tarif horaire de 300 fr., puis 350 fr., en lieu et place des 400 fr. requis par Me D._. Elle a répété vouloir favoriser un arrangement amiable et a demandé à être consultée avant l'ouverture d'une action judiciaire, afin qu'elle puisse se déterminer sur l'étendue de la prise en charge. L'assurée a informé l'assurance par courrier du 25 avril 2010 qu'elle refusait la proposition de son ancienne employeuse. Elle mentionnait en outre que son avocat n'avait entrepris "aucune démarche", car ils souhaitaient avoir l'accord préalable de l'assurance. Le 29 avril 2010, l'assurance a écrit à l'assurée que conformément à ses conditions générales, elle devait examiner les chances de succès de toute nouvelle démarche; par conséquent, si Me D._ prévoyait de déposer une demande judiciaire, elle devrait déterminer s'il était objectivement plus profitable d'accepter une proposition amiable, ou s'il était nécessaire d'engager une procédure civile. L'assurée a répondu que l'assurance n'avait initialement pas mentionné d'éventuelles réserves pour la prise en charge des mesures judiciaires, et qu'elle-même n'aurait pas fait intervenir un avocat avec le risque de perdre son emploi si elle avait su qu'elle ne serait pas soutenue. Il s'en est suivi de nombreux échanges épistolaires. Le 28 mai 2010, l'assurance répétait à Me D._ que toute nouvelle démarche nécessitait son accord préalable, en ajoutant: "A ce stade, à l'examen des éléments dont nous disposons dans ce dossier, nous limitons notre prise en charge aux négociations extrajudiciaires... si vous deviez conclure qu'une procédure civile se révèle par la suite nécessaire, vous voudrez bien nous exposer vos motifs, ceci afin que nous nous déterminions sur les chances de succès et sur la continuation de notre prise en charge." Le 2 juin 2010, elle émettait l'avis qu'un procès était dénué de chances de succès dans la mesure où les perspectives d'obtenir davantage que ce qui était proposé étaient inexistantes. Les parties ont par la suite campé sur leurs positions. Sur requête de Me D._, le Président du Tribunal cantonal vaudois a désigné Me B._ en qualité d'arbitre unique pour statuer sur la prise en charge des frais de procès par l'assurance. A.c Le 25 mars 2011, l'assurée a saisi le Juge délégué de la Chambre patrimoniale cantonale d'une requête en conciliation dirigée contre son ancienne employeuse. Les conclusions portaient entre autres sur le paiement d'une somme de 3'262'511 fr. B. Le 12 mai 2011, l'assurée a adressé sa demande à l'arbitre. Elle concluait à ce que l'assurance soit astreinte à couvrir, dans la mesure de la garantie émise le 23 septembre 2009, tous les frais relatifs à la procédure judiciaire ouverte par requête de conciliation du 25 mars 2011; elle demandait en outre que les honoraires de son mandataire soient couverts à hauteur d'un tarif horaire de 400 fr. L'assurance a conclu au rejet. Par sentence du 31 mai 2012, l'arbitre a admis la demande. Il a dit que l'assurance devait couvrir tous les frais de la procédure judiciaire initiée contre l'ancienne employeuse le 25 mars 2011, y compris les frais de justice, dépens, honoraires et frais de l'avocat de l'assurée, et ce, jusqu'à l'épuisement de la première instance; il a en outre dit que les honoraires de Me D._ devaient être calculés en application d'un tarif horaire de 400 fr., TVA en sus. En résumé, l'arbitre a retenu qu'en application du principe de la confiance, l'assurée et son mandataire étaient fondés à comprendre de bonne foi que la confirmation de garantie émise par l'assurance couvrait également une éventuelle procédure judiciaire, et qu'aucune disposition des conditions générales ne permettait à l'assurance de retirer sa couverture d'assurance après l'avoir donnée. C. L'assurance (ci-après: la recourante) interjette un recours en matière civile, concluant à l'annulation de la sentence arbitrale et au renvoi de la cause à l'arbitre pour nouvelle sentence dans le sens des considérants. L'assurée (ci-après: l'intimée) conclut au rejet du recours. Chaque partie a encore déposé ultérieurement des observations. Par ordonnance du 27 août 2012, la Présidente de la cour de céans a accordé l'effet suspensif requis par la recourante.