Bundesgericht
Tribunal fédéral
Tribunale federale
Tribunal federal

4A 189/2017

Arrêt du 5 octobre 2017

Ire Cour de droit civil

Composition
Mmes les Juges fédérales
Kiss, présidente, Hohl et May Canellas.
Greffière: Mme Monti.

Participants à la procédure
A.________ Sàrl,
représentée par Me Raphaël Schindelholz,
recourante,

contre

B.________ SA,
représentée par Me Yves Nicole,
intimée.

Objet
contrat d'entreprise; résiliation; dommage,

recours en matière civile contre l'arrêt rendu le
14 novembre 2016 par la Cour d'appel civile du
Tribunal cantonal du canton de Vaud.

Faits:

A.
La société anonyme B.________ SA avait été mandatée pour fonctionner comme entrepreneur général dans une promotion immobilière dénommée P.________, qui portait sur l'édification de seize logements d'habitation à... (VD).
L'entreprise générale s'est fait remettre un devis daté du 26 septembre 2011 établi par A.________ Sàrl, société active dans la fabrication et la commercialisation de cuisines. Le devis portait sur un « projet type pour une cuisine». Il comportait trois plans et énonçait la liste des éléments mobiliers et électroménagers composant la cuisine projetée. Le prix était fixé à 20'000 fr. pour une cuisine, respectivement à 304'000 fr. pour seize cuisines après déduction d'un rabais de 5%.
L'entreprise générale a conclu avec plusieurs acquéreurs de lots des « contrats d'entreprise générale» en vertu desquels elle était chargée de planifier, diriger et exécuter les travaux de construction des lots moyennant un prix forfaitaire. Les clauses suivantes étaient notamment prévues:
«3 Prestations incluses et non incluses dans le forfait d'exécution Prestations incluses
[...]
7. La gestion des choix et finitions au gré du Maître de l'ouvrage (carrelages, sanitaires, revêtements de sols et murs, agencement de cuisine) sur la base des choix préparés par l'entrepreneur général.
[...]
8 Choix des matériaux
Pour le cas ou (sic!) des choix spéciaux entraîneraient des frais supplémentaires, ces derniers seront à la charge du maître de l'ouvrage. [...]
L'entrepreneur général remettra au Maître de l'Ouvrage, l'adresse des fournisseurs et artisans pour le choix des finitions (Liste en annexe).
Le choix d'autres fournisseurs n'est pas autorisé.
A titre exceptionnel, en cas de choix différents imposé par le Maître de l'Ouvrage, l'entrepreneur général se réserve le droit d'exclure du présent contrat, le montant et la garantie des travaux concernés. Dans ce cas, l'entrepreneur générale (sic!) ristournera ou mettra à profit du Maître de l'Ouvrage, le montant défini dans le prix de l'ouvrage, en déduisant 15% de celui-ci.
[...]
10.1 Attribution des travaux
L'entrepreneur général choisit seul les entreprises sous-traitantes qui réaliseront la construction et effectue les commandes de l'ensemble des fournitures. Les contrats seront établis en son nom.
[...]
10.4 Paiement des sous-traitants et hypothèque légale
L'entrepreneur général s'engage à utiliser le compte parallèle de construction uniquement pour l'exécution du contrat et pour payer ponctuellement les entreprises sous-traitantes.
[...]»
Une liste de fournisseurs annexée aux contrats mentionnait la maison A.________ Sàrl sous la rubrique «Cuisine». Etait en outre joint le devis précité du 26 septembre 2011, indiquant un prix de 20'000 fr. pour une cuisine.
Au fur et à mesure de la vente des lots, l'entreprise générale envoyait les acquéreurs chez A.________ Sàrl pour effectuer leur choix de cuisine. Il était convenu que cette société (ci-après: la sous-traitante) les conseille sur d'éventuelles modifications en matière de mobilier et/ou d'électroménager, élabore avec eux un projet final puis procède à la livraison et à la pose des cuisines. La sous-traitante devait remettre à l'entreprise générale les devis individuels des acquéreurs avec le détail des plus-values, à charge pour l'entreprise générale de faire ensuite procéder à la libération du montant correspondant à la plus-value en faveur de la sous-traitante.
Certains acheteurs ont d'emblée choisi d'autres fournisseurs que ceux proposés dans la liste annexée aux contrats d'entreprise.
La sous-traitante a reçu plusieurs acquéreurs dans ses locaux. Elle a eu plusieurs échanges de courriers et a établi pour la plupart des acquéreurs une ou plusieurs propositions de cuisine. Entre mai et octobre 2012, elle a transmis à sept acquéreurs (ou couple d'acquéreurs) un devis individualisé supérieur à 20'000 fr., dans une fourchette comprise entre 22'838 fr. et 50'835 fr.
Le 8 octobre 2012, l'entreprise générale a écrit à la sous-traitante qu'elle entendait cesser toute collaboration avec elle, en raison d'un manque de confiance des clients et de l'incertitude planant sur les délais.
Le 1 er novembre 2012, la sous-traitante a fait notifier à l'entreprise générale un commandement de payer la somme de 360'000 fr. pour cause de «rupture de contrat». La poursuivie a formé opposition.

B.

B.a. Les parties ayant convenu de renoncer à la conciliation, la sous-traitante a saisi la Chambre patrimoniale du canton de Vaud le 7 octobre 2013 d'une demande tendant à faire condamner l'entreprise générale au paiement de 229'749 fr. plus intérêts et à faire prononcer la mainlevée définitive de l'opposition au commandement de payer à concurrence du même montant. En dernier lieu, elle a réduit sa prétention à 220'321 fr. 85.
L'entreprise générale a conclu au rejet de la demande et, reconventionnellement, au constat de la nullité de la poursuite en cours, subsidiairement à son annulation.
Par jugement du 26 mai 2016, la Chambre patrimoniale a rejeté la demande et constaté que la poursuite était sans fondement. En substance, elle a jugé que la société B.________ SA s'était liée à A.________ Sàrl par un sous-contrat d'entreprise, également dénommé contrat de sous-traitance. Cette dernière s'était engagée à livrer et poser des cuisines dans les appartements des acquéreurs, tout en convenant que certains points particuliers seraient discutés et concrétisés avec chacun d'eux. Les parties s'étaient ainsi mises d'accord sur les grandes lignes de l'ouvrage à exécuter. Même si les parties n'avaient pas précisément arrêté le prix de l'ouvrage, elles avaient convenu du principe de la rémunération de A.________ Sàrl, soit du versement, par l'entreprise générale, d'une plus-value sur les cuisines posées. Ce faisant, les parties avaient convenu des éléments objectivement essentiels du contrat d'entreprise, sous la forme d'un contrat de sous-traitance.
Selon l'analyse de la Chambre patrimoniale, le contrat de sous-traitance était grevé de deux conditions suspensives: les acquéreurs de lots devaient accepter de recourir aux services de la sous-traitante et devaient valider les devis personnalisés établis par cette dernière. Ces conditions ne s'étaient toutefois réalisées pour aucun des acheteurs.
La Chambre a ensuite examiné si l'entreprise générale avait empêché l'avènement de ces conditions au mépris des règles de la bonne foi, auquel cas lesdites conditions seraient réputées accomplies (art. 156
SR 220 Erste Abteilung: Allgemeine Bestimmungen Erster Titel: Die Entstehung der Obligationen Erster Abschnitt: Die Entstehung durch Vertrag
OR Art. 156 - Eine Bedingung gilt als erfüllt, wenn ihr Eintritt von dem einen Teile wider Treu und Glauben verhindert worden ist.
CO). Elle a répondu par la négative, après avoir constaté que la rupture de collaboration semblait résulter d'une perte de confiance de l'entreprise générale envers la sous-traitante. Le contrat conditionnel était ainsi devenu caduc, les parties se retrouvant dans la même situation que si elles n'avaient jamais conclu d'acte conditionnel. Se posait la question d'une responsabilité pour culpa in contrahendo, fondement de dommages-intérêts négatifs. La Chambre a renoncé à y répondre, au motif que les postes de dommage invoqués par la sous-traitante ne constituaient pas des dommages négatifs susceptibles d'être réparés dans ce type de responsabilité.

B.b. La sous-traitante a déféré cette décision à la Cour d'appel civile du Tribunal cantonal vaudois, qui l'a confirmée par substitution de motifs le 14 novembre 2016.
La Cour d'appel a approuvé l'analyse des premiers juges quant à l'existence d'un contrat de sous-traitance assorti d'une double condition suspensive. En revanche, elle a jugé que l'entreprise générale avait empêché l'avènement des conditions au mépris des règles de la bonne foi. Cette partie avait mis fin à la relation contractuelle sans mise en demeure, avertissement préalable ou demande de garantie supplémentaire, pour des motifs qui n'étaient pas établis; sans cette résiliation, il était hautement vraisemblable que trois propriétaires auraient commandé leur cuisine auprès de la sous-traitante. Par son comportement, l'entreprise générale avait empêché les acquéreurs de lots de commander leur cuisine auprès de la sous-traitante.
La résiliation devait être traitée sous l'angle de l'art. 377
SR 220 Erste Abteilung: Allgemeine Bestimmungen Erster Titel: Die Entstehung der Obligationen Erster Abschnitt: Die Entstehung durch Vertrag
OR Art. 377 - Solange das Werk unvollendet ist, kann der Besteller gegen Vergütung der bereits geleisteten Arbeit und gegen volle Schadloshaltung des Unternehmers jederzeit vom Vertrag zurücktreten.
CO. En vertu de cette disposition, le maître (en l'occurrence l'entreprise générale) devait rémunérer l'entrepreneur (la sous-traitante) pour la part d'ouvrage déjà exécutée, et indemniser la sous-traitante pour l'intérêt qu'elle avait à l'exécution complète de l'ouvrage (dommages-intérêts positifs). L'autorité d'appel a rappelé la jurisprudence selon laquelle la condition suspensive grevait non seulement l'action en exécution, mais aussi l'action en paiement de l'indemnité prévue par l'art. 377
SR 220 Erste Abteilung: Allgemeine Bestimmungen Erster Titel: Die Entstehung der Obligationen Erster Abschnitt: Die Entstehung durch Vertrag
OR Art. 377 - Solange das Werk unvollendet ist, kann der Besteller gegen Vergütung der bereits geleisteten Arbeit und gegen volle Schadloshaltung des Unternehmers jederzeit vom Vertrag zurücktreten.
CO; le maître devait indemniser l'entrepreneur uniquement s'il fallait admettre que la condition se serait réalisée en cas de maintien du contrat (arrêt 4C.281/2005 du 15 décembre 2015 consid. 3.4).
Dans sa demande, la sous-traitante avait allégué un préjudice de 211'640 fr., aux allégués 99 et suivants. A titre de preuves, elle avait produit un certain nombre de pièces, en particulier le devis de base du 26 septembre 2011, des simulations de commande auprès de fournisseurs ainsi qu'un extrait de sa caisse de compensation, dont il ressortait qu'elle avait versé à son collaborateur T.________ un salaire de base AVS de 22'000 fr. pour l'année 2012. Entendu sur cette question, l'intéressé avait estimé son implication dans le projet à 40% ou 50% de son temps de travail.
Pour les juges cantonaux, ces éléments de preuve ne permettaient pas d'établir les allégués relatifs au dommage. En outre, la sous-traitante s'était contentée de soumettre les allégués 105 à 118 (hormis les nos 113 et 115) à l'appréciation des juges saisis, alors qu'elle aurait dû offrir la preuve par expertise, s'agissant d'allégués consacrés au montant des dommages-intérêts positifs. Faute d'avoir requis une telle expertise, elle devait en supporter les conséquences (art. 8
SR 210 Schweizerisches Zivilgesetzbuch vom 10. Dezember 1907
ZGB Art. 8 - Wo das Gesetz es nicht anders bestimmt, hat derjenige das Vorhandensein einer behaupteten Tatsache zu beweisen, der aus ihr Rechte ableitet.
CC).

C.
La sous-traitante a saisi le Tribunal fédéral d'un recours en matière civile dans lequel elle requiert que l'entreprise générale soit condamnée à lui verser 220'321 fr. 85, intérêts en sus, et que l'opposition au commandement de payer soit définitivement levée à concurrence de ce montant. Elle a également sollicité l'octroi de l'effet suspensif, qui lui a été accordé par ordonnance présidentielle du 18 mai 2017.
L'entreprise générale intimée a conclu au rejet du recours en tant qu'il est recevable.
L'autorité précédente s'est référée à son arrêt.

Considérant en droit:

1.
Les conditions de recevabilité du recours en matière civile sont réalisées sur le principe, notamment sous l'angle de la valeur litigieuse minimale de 30'000 fr. (art. 74 al. 1 let. b
SR 173.110 Bundesgesetz vom 17. Juni 2005 über das Bundesgericht (Bundesgerichtsgesetz, BGG) - Bundesgerichtsgesetz
BGG Art. 74 Streitwertgrenze - 1 In vermögensrechtlichen Angelegenheiten ist die Beschwerde nur zulässig, wenn der Streitwert mindestens beträgt:
1    In vermögensrechtlichen Angelegenheiten ist die Beschwerde nur zulässig, wenn der Streitwert mindestens beträgt:
a  15 000 Franken in arbeits- und mietrechtlichen Fällen;
b  30 000 Franken in allen übrigen Fällen.
2    Erreicht der Streitwert den massgebenden Betrag nach Absatz 1 nicht, so ist die Beschwerde dennoch zulässig:
a  wenn sich eine Rechtsfrage von grundsätzlicher Bedeutung stellt;
b  wenn ein Bundesgesetz eine einzige kantonale Instanz vorsieht;
c  gegen Entscheide der kantonalen Aufsichtsbehörden in Schuldbetreibungs- und Konkurssachen;
d  gegen Entscheide des Konkurs- und Nachlassrichters oder der Konkurs- und Nachlassrichterin;
e  gegen Entscheide des Bundespatentgerichts.
LTF) et du délai pour recourir (art. 100 al. 1
SR 173.110 Bundesgesetz vom 17. Juni 2005 über das Bundesgericht (Bundesgerichtsgesetz, BGG) - Bundesgerichtsgesetz
BGG Art. 100 Beschwerde gegen Entscheide - 1 Die Beschwerde gegen einen Entscheid ist innert 30 Tagen nach der Eröffnung der vollständigen Ausfertigung beim Bundesgericht einzureichen.
1    Die Beschwerde gegen einen Entscheid ist innert 30 Tagen nach der Eröffnung der vollständigen Ausfertigung beim Bundesgericht einzureichen.
2    Die Beschwerdefrist beträgt zehn Tage:
a  bei Entscheiden der kantonalen Aufsichtsbehörden in Schuldbetreibungs- und Konkurssachen;
b  bei Entscheiden auf den Gebieten der internationalen Rechtshilfe in Strafsachen und der internationalen Amtshilfe in Steuersachen;
c  bei Entscheiden über die Rückgabe eines Kindes nach dem Europäischen Übereinkommen vom 20. Mai 198089 über die Anerkennung und Vollstreckung von Entscheidungen über das Sorgerecht für Kinder und die Wiederherstellung des Sorgerechts oder nach dem Übereinkommen vom 25. Oktober 198090 über die zivilrechtlichen Aspekte internationaler Kindesentführung;
d  bei Entscheiden des Bundespatentgerichts über die Erteilung einer Lizenz nach Artikel 40d des Patentgesetzes vom 25. Juni 195492.
3    Die Beschwerdefrist beträgt fünf Tage:
a  bei Entscheiden der kantonalen Aufsichtsbehörden in Schuldbetreibungs- und Konkurssachen im Rahmen der Wechselbetreibung;
b  bei Entscheiden der Kantonsregierungen über Beschwerden gegen eidgenössische Abstimmungen.
4    Bei Entscheiden der Kantonsregierungen über Beschwerden gegen die Nationalratswahlen beträgt die Beschwerdefrist drei Tage.
5    Bei Beschwerden wegen interkantonaler Kompetenzkonflikte beginnt die Beschwerdefrist spätestens dann zu laufen, wenn in beiden Kantonen Entscheide getroffen worden sind, gegen welche beim Bundesgericht Beschwerde geführt werden kann.
6    ...93
7    Gegen das unrechtmässige Verweigern oder Verzögern eines Entscheids kann jederzeit Beschwerde geführt werden.
LTF en lien avec l'art. 46 al. 1 let. a
SR 173.110 Bundesgesetz vom 17. Juni 2005 über das Bundesgericht (Bundesgerichtsgesetz, BGG) - Bundesgerichtsgesetz
BGG Art. 46 Stillstand - 1 Gesetzlich oder richterlich nach Tagen bestimmte Fristen stehen still:
1    Gesetzlich oder richterlich nach Tagen bestimmte Fristen stehen still:
a  vom siebenten Tag vor Ostern bis und mit dem siebenten Tag nach Ostern;
b  vom 15. Juli bis und mit dem 15. August;
c  vom 18. Dezember bis und mit dem 2. Januar.
2    Absatz 1 gilt nicht in Verfahren betreffend:
a  die aufschiebende Wirkung und andere vorsorgliche Massnahmen;
b  die Wechselbetreibung;
c  Stimmrechtssachen (Art. 82 Bst. c);
d  die internationale Rechtshilfe in Strafsachen und die internationale Amtshilfe in Steuersachen;
e  die öffentlichen Beschaffungen.18
LTF). Il est précisé à l'adresse de l'intimée que le recours a été déposé 30 jours après la distribution du pli recommandé contenant l'arrêt motivé, qui est intervenue dans le délai de garde (art. 44
SR 173.110 Bundesgesetz vom 17. Juni 2005 über das Bundesgericht (Bundesgerichtsgesetz, BGG) - Bundesgerichtsgesetz
BGG Art. 44 Beginn - 1 Fristen, die durch eine Mitteilung oder den Eintritt eines Ereignisses ausgelöst werden, beginnen am folgenden Tag zu laufen.
1    Fristen, die durch eine Mitteilung oder den Eintritt eines Ereignisses ausgelöst werden, beginnen am folgenden Tag zu laufen.
2    Eine Mitteilung, die nur gegen Unterschrift des Adressaten oder der Adressatin oder einer anderen berechtigten Person überbracht wird, gilt spätestens am siebenten Tag nach dem ersten erfolglosen Zustellungsversuch als erfolgt.
LTF; arrêt 5A 721/2012 du 17 janvier 2013 consid. 1.1; JEAN-MAURICE FRÉSARD, in Commentaire de la LTF, 2 e éd. 2014, n os 11 et 15 ad art. 44
SR 173.110 Bundesgesetz vom 17. Juni 2005 über das Bundesgericht (Bundesgerichtsgesetz, BGG) - Bundesgerichtsgesetz
BGG Art. 44 Beginn - 1 Fristen, die durch eine Mitteilung oder den Eintritt eines Ereignisses ausgelöst werden, beginnen am folgenden Tag zu laufen.
1    Fristen, die durch eine Mitteilung oder den Eintritt eines Ereignisses ausgelöst werden, beginnen am folgenden Tag zu laufen.
2    Eine Mitteilung, die nur gegen Unterschrift des Adressaten oder der Adressatin oder einer anderen berechtigten Person überbracht wird, gilt spätestens am siebenten Tag nach dem ersten erfolglosen Zustellungsversuch als erfolgt.
LTF).

2.

2.1. Le Tribunal fédéral applique le droit d'office (art. 106 al. 1
SR 173.110 Bundesgesetz vom 17. Juni 2005 über das Bundesgericht (Bundesgerichtsgesetz, BGG) - Bundesgerichtsgesetz
BGG Art. 106 Rechtsanwendung - 1 Das Bundesgericht wendet das Recht von Amtes wegen an.
1    Das Bundesgericht wendet das Recht von Amtes wegen an.
2    Es prüft die Verletzung von Grundrechten und von kantonalem und interkantonalem Recht nur insofern, als eine solche Rüge in der Beschwerde vorgebracht und begründet worden ist.
LTF). Eu égard, toutefois, à l'exigence de motivation qu'impose l'art. 42 al. 2
SR 173.110 Bundesgesetz vom 17. Juni 2005 über das Bundesgericht (Bundesgerichtsgesetz, BGG) - Bundesgerichtsgesetz
BGG Art. 42 Rechtsschriften - 1 Rechtsschriften sind in einer Amtssprache abzufassen und haben die Begehren, deren Begründung mit Angabe der Beweismittel und die Unterschrift zu enthalten.
1    Rechtsschriften sind in einer Amtssprache abzufassen und haben die Begehren, deren Begründung mit Angabe der Beweismittel und die Unterschrift zu enthalten.
2    In der Begründung ist in gedrängter Form darzulegen, inwiefern der angefochtene Akt Recht verletzt. Ist eine Beschwerde nur unter der Voraussetzung zulässig, dass sich eine Rechtsfrage von grundsätzlicher Bedeutung stellt oder aus anderen Gründen ein besonders bedeutender Fall vorliegt, so ist auszuführen, warum die jeweilige Voraussetzung erfüllt ist. 14 15
3    Die Urkunden, auf die sich die Partei als Beweismittel beruft, sind beizulegen, soweit die Partei sie in Händen hat; richtet sich die Rechtsschrift gegen einen Entscheid, so ist auch dieser beizulegen.
4    Bei elektronischer Einreichung muss die Rechtsschrift von der Partei oder ihrem Vertreter beziehungsweise ihrer Vertreterin mit einer qualifizierten elektronischen Signatur gemäss Bundesgesetz vom 18. März 201616 über die elektronische Signatur versehen werden. Das Bundesgericht bestimmt in einem Reglement:
a  das Format der Rechtsschrift und ihrer Beilagen;
b  die Art und Weise der Übermittlung;
c  die Voraussetzungen, unter denen bei technischen Problemen die Nachreichung von Dokumenten auf Papier verlangt werden kann.17
5    Fehlen die Unterschrift der Partei oder ihrer Vertretung, deren Vollmacht oder die vorgeschriebenen Beilagen oder ist die Vertretung nicht zugelassen, so wird eine angemessene Frist zur Behebung des Mangels angesetzt mit der Androhung, dass die Rechtsschrift sonst unbeachtet bleibt.
6    Unleserliche, ungebührliche, unverständliche, übermässig weitschweifige oder nicht in einer Amtssprache verfasste Rechtsschriften können in gleicher Weise zur Änderung zurückgewiesen werden.
7    Rechtsschriften, die auf querulatorischer oder rechtsmissbräuchlicher Prozessführung beruhen, sind unzulässig.
LTF, sous peine d'irrecevabilité (art. 108 al. 1 let. b
SR 173.110 Bundesgesetz vom 17. Juni 2005 über das Bundesgericht (Bundesgerichtsgesetz, BGG) - Bundesgerichtsgesetz
BGG Art. 108 Einzelrichter oder Einzelrichterin - 1 Der Präsident oder die Präsidentin der Abteilung entscheidet im vereinfachten Verfahren über:
1    Der Präsident oder die Präsidentin der Abteilung entscheidet im vereinfachten Verfahren über:
a  Nichteintreten auf offensichtlich unzulässige Beschwerden;
b  Nichteintreten auf Beschwerden, die offensichtlich keine hinreichende Begründung (Art. 42 Abs. 2) enthalten;
c  Nichteintreten auf querulatorische oder rechtmissbräuchliche Beschwerden.
2    Er oder sie kann einen anderen Richter oder eine andere Richterin damit betrauen.
3    Die Begründung des Entscheids beschränkt sich auf eine kurze Angabe des Unzulässigkeitsgrundes.
LTF), le Tribunal fédéral n'examine d'ordinaire que les griefs invoqués, sauf en cas d'erreurs juridiques manifestes (ATF 140 III 115 consid. 2 p. 116). Pour le grief de violation des droits constitutionnels prévaut le principe de l'invocation, qui impose une motivation plus étayée (art. 106 al. 2
SR 173.110 Bundesgesetz vom 17. Juni 2005 über das Bundesgericht (Bundesgerichtsgesetz, BGG) - Bundesgerichtsgesetz
BGG Art. 106 Rechtsanwendung - 1 Das Bundesgericht wendet das Recht von Amtes wegen an.
1    Das Bundesgericht wendet das Recht von Amtes wegen an.
2    Es prüft die Verletzung von Grundrechten und von kantonalem und interkantonalem Recht nur insofern, als eine solche Rüge in der Beschwerde vorgebracht und begründet worden ist.
LTF; ATF 134 II 244 consid. 2.2)

2.2. Le Tribunal fédéral statue sur la base des faits établis par l'autorité précédente (art. 105 al. 1
SR 173.110 Bundesgesetz vom 17. Juni 2005 über das Bundesgericht (Bundesgerichtsgesetz, BGG) - Bundesgerichtsgesetz
BGG Art. 105 Massgebender Sachverhalt - 1 Das Bundesgericht legt seinem Urteil den Sachverhalt zugrunde, den die Vorinstanz festgestellt hat.
1    Das Bundesgericht legt seinem Urteil den Sachverhalt zugrunde, den die Vorinstanz festgestellt hat.
2    Es kann die Sachverhaltsfeststellung der Vorinstanz von Amtes wegen berichtigen oder ergänzen, wenn sie offensichtlich unrichtig ist oder auf einer Rechtsverletzung im Sinne von Artikel 95 beruht.
3    Richtet sich die Beschwerde gegen einen Entscheid über die Zusprechung oder Verweigerung von Geldleistungen der Militär- oder Unfallversicherung, so ist das Bundesgericht nicht an die Sachverhaltsfeststellung der Vorinstanz gebunden.95
LTF). Il ne peut rectifier ou compléter les constatations de l'autorité précédente que si elles découlent d'une violation du droit au sens de l'art. 95
SR 173.110 Bundesgesetz vom 17. Juni 2005 über das Bundesgericht (Bundesgerichtsgesetz, BGG) - Bundesgerichtsgesetz
BGG Art. 95 Schweizerisches Recht - Mit der Beschwerde kann die Verletzung gerügt werden von:
a  Bundesrecht;
b  Völkerrecht;
c  kantonalen verfassungsmässigen Rechten;
d  kantonalen Bestimmungen über die politische Stimmberechtigung der Bürger und Bürgerinnen und über Volkswahlen und -abstimmungen;
e  interkantonalem Recht.
LTF ou sont «manifestement inexactes» (art. 105 al. 2
SR 173.110 Bundesgesetz vom 17. Juni 2005 über das Bundesgericht (Bundesgerichtsgesetz, BGG) - Bundesgerichtsgesetz
BGG Art. 105 Massgebender Sachverhalt - 1 Das Bundesgericht legt seinem Urteil den Sachverhalt zugrunde, den die Vorinstanz festgestellt hat.
1    Das Bundesgericht legt seinem Urteil den Sachverhalt zugrunde, den die Vorinstanz festgestellt hat.
2    Es kann die Sachverhaltsfeststellung der Vorinstanz von Amtes wegen berichtigen oder ergänzen, wenn sie offensichtlich unrichtig ist oder auf einer Rechtsverletzung im Sinne von Artikel 95 beruht.
3    Richtet sich die Beschwerde gegen einen Entscheid über die Zusprechung oder Verweigerung von Geldleistungen der Militär- oder Unfallversicherung, so ist das Bundesgericht nicht an die Sachverhaltsfeststellung der Vorinstanz gebunden.95
LTF), c'est-à-dire «arbitraires» (ATF 140 III 115 consid. 2 p. 117; 135 III 397 consid. 1.5). La critique de l'état de fait retenu est soumise au principe précité de l'invocation (ATF 140 III 264 consid. 2.3 p. 266 et les références). La partie qui entend attaquer les faits constatés par l'autorité précédente doit expliquer clairement et de manière circonstanciée en quoi ces conditions seraient réalisées (ATF 140 III 16 consid. 1.3.1 p. 18 et les références).
L'appréciation des preuves est arbitraire lorsque le juge s'est manifestement mépris sur le sens et la portée d'un moyen de preuve, lorsqu'il a omis, sans raison sérieuse, de tenir compte d'un moyen important propre à modifier la décision attaquée, ou encore lorsqu'il a tiré des déductions insoutenables à partir des éléments recueillis. L'arbitraire ne résulte pas du seul fait qu'une autre solution serait concevable, voire même préférable (ATF 136 III 552 consid. 4.2).

3.

3.1. La recourante ne conteste pas avoir été liée à l'intimée par un contrat de sous-traitance assorti de conditions suspensives, dont l'intimée a empêché l'avènement au mépris des règles de la bonne foi. Elle reconnaît expressément l'applicabilité de l'art. 377
SR 220 Erste Abteilung: Allgemeine Bestimmungen Erster Titel: Die Entstehung der Obligationen Erster Abschnitt: Die Entstehung durch Vertrag
OR Art. 377 - Solange das Werk unvollendet ist, kann der Besteller gegen Vergütung der bereits geleisteten Arbeit und gegen volle Schadloshaltung des Unternehmers jederzeit vom Vertrag zurücktreten.
CO et de la méthode dite positive. Il n'y a donc pas à revenir sur ces questions (cf. consid. 2.1 supra).
La recourante objecte cependant qu'en raison de divers paramètres hypothétiques, il lui était impossible d'apporter la preuve stricte du bénéfice brut qu'elle aurait pu réaliser si les acquéreurs de lots n'avaient pas été empêchés de finaliser leur projet de cuisine avec elle. Il eût fallu faire application de l'art. 42 al. 2
SR 220 Erste Abteilung: Allgemeine Bestimmungen Erster Titel: Die Entstehung der Obligationen Erster Abschnitt: Die Entstehung durch Vertrag
OR Art. 42 - 1 Wer Schadenersatz beansprucht, hat den Schaden zu beweisen.
1    Wer Schadenersatz beansprucht, hat den Schaden zu beweisen.
2    Der nicht ziffernmässig nachweisbare Schaden ist nach Ermessen des Richters mit Rücksicht auf den gewöhnlichen Lauf der Dinge und auf die vom Geschädigten getroffenen Massnahmen abzuschätzen.
3    Bei Tieren, die im häuslichen Bereich und nicht zu Vermögens- oder Erwerbszwecken gehalten werden, können die Heilungskosten auch dann angemessen als Schaden geltend gemacht werden, wenn sie den Wert des Tieres übersteigen.26
CO et estimer équitablement le gain qu'elle aurait pu réaliser, en se fondant sur les devis individualisés et sur le projet de cuisine type. Par ailleurs, les juges cantonaux auraient violé son droit à la preuve (art. 8
SR 210 Schweizerisches Zivilgesetzbuch vom 10. Dezember 1907
ZGB Art. 8 - Wo das Gesetz es nicht anders bestimmt, hat derjenige das Vorhandensein einer behaupteten Tatsache zu beweisen, der aus ihr Rechte ableitet.
CC et art. 152 al. 1
SR 272 Schweizerische Zivilprozessordnung vom 19. Dezember 2008 (Zivilprozessordnung, ZPO) - Gerichtsstandsgesetz
ZPO Art. 152 Recht auf Beweis - 1 Jede Partei hat das Recht, dass das Gericht die von ihr form- und fristgerecht angebotenen tauglichen Beweismittel abnimmt.
1    Jede Partei hat das Recht, dass das Gericht die von ihr form- und fristgerecht angebotenen tauglichen Beweismittel abnimmt.
2    Rechtswidrig beschaffte Beweismittel werden nur berücksichtigt, wenn das Interesse an der Wahrheitsfindung überwiegt.
CPC) et ignoré l'égalité de rang entre les différents moyens de preuve (art. 168 al. 1
SR 272 Schweizerische Zivilprozessordnung vom 19. Dezember 2008 (Zivilprozessordnung, ZPO) - Gerichtsstandsgesetz
ZPO Art. 168 - 1 Als Beweismittel sind zulässig:
1    Als Beweismittel sind zulässig:
a  Zeugnis;
b  Urkunde;
c  Augenschein;
d  Gutachten;
e  schriftliche Auskunft;
f  Parteibefragung und Beweisaussage.
2    Vorbehalten bleiben die Bestimmungen über Kinderbelange in familienrechtlichen Angelegenheiten.
CPC) en écartant les titres produits sans les examiner, pour le motif erroné qu'ils étaient par nature inaptes à prouver le gain manqué, que seule une expertise pouvait établir. En réalité, l'expert ne serait pas mieux armé que le juge pour porter un pronostic sur un événement hypothétique tel que le gain manqué. Qui plus est, le tribunal était à même d'appliquer la règle d'expérience (art. 151
SR 272 Schweizerische Zivilprozessordnung vom 19. Dezember 2008 (Zivilprozessordnung, ZPO) - Gerichtsstandsgesetz
ZPO Art. 151 Bekannte Tatsachen - Offenkundige und gerichtsnotorische Tatsachen sowie allgemein anerkannte Erfahrungssätze bedürfen keines Beweises.
CPC) selon laquelle le bénéfice brut correspond au chiffre d'affaires moins les coûts. Sur le vu de ce qui précède et des pièces produites, la Cour d'appel vaudoise aurait pu et dû retenir un gain
manqué de 198'221 fr.
Subsidiairement, la recourante dénonce une appréciation arbitraire des preuves assortie d'une violation du devoir de motivation. Les juges vaudois auraient d'une part considéré arbitrairement que les moyens de preuve n'établissaient pas son bénéfice brut. D'autre part, ils auraient retenu arbitrairement que trois acquéreurs seulement s'apprêtaient à signer un projet de cuisine, alors qu'en réalité ils étaient cinq.

3.2.

3.2.1. L'art. 377
SR 220 Erste Abteilung: Allgemeine Bestimmungen Erster Titel: Die Entstehung der Obligationen Erster Abschnitt: Die Entstehung durch Vertrag
OR Art. 377 - Solange das Werk unvollendet ist, kann der Besteller gegen Vergütung der bereits geleisteten Arbeit und gegen volle Schadloshaltung des Unternehmers jederzeit vom Vertrag zurücktreten.
CO autorise le maître d'ouvrage à se départir du contrat d'entreprise tant que l'ouvrage n'est pas terminé, moyennant qu'il paie le travail fait et indemnise complètement l'entrepreneur.
Le maître a ainsi le droit de résilier de façon prématurée le contrat, qui prend fin ex nunc (ATF 129 III 738 consid. 7.3 p. 748). En contrepartie, il doit payer une rémunération pour la partie de l'ouvrage et/ou les prestations déjà exécutées, et «indemniser complètement» l'entrepreneur (arrêt 4A 566/2015 du 8 février 2016 consid. 4.1.1; PETER GAUCH, Der Werkvertrag, 5e éd. 2011, n° 535; TERCIER ET ALII, Les contrats spéciaux, 5e éd. 2016, n° 4160). Cette indemnisation correspond à des dommages-intérêts positifs, couvrant l'intérêt qu'avait l'entrepreneur à exécuter complètement le contrat; elle inclut donc le gain manqué (ATF 96 II 192 consid. 5 p. 196; arrêt précité 4A 566/2015 consid. 4.1.1; cf. aussi ATF 117 II 273 consid. 4b p. 277).
Deux méthodes entrent en considération pour calculer l'indemnisation de l'entrepreneur. La méthode de la déduction ( Abzugsmethode) consiste à soustraire du prix de l'ouvrage l'économie réalisée par l'entrepreneur du fait qu'il n'a pas terminé les travaux, et le gain qu'il s'est procuré ailleurs ou qu'il a délibérément renoncé à se procurer. Quant à la méthode positive ( Additionsmethode), elle implique de déterminer la totalité des dépenses effectives engagées par l'entrepreneur pour les travaux déjà exécutés et d'y ajouter le bénéfice brut pour l'ouvrage (hypothétiquement) achevé. Ce bénéfice est à déterminer sur la base du contrat, voire de tarifs, d'indices ou des comptes de l'entrepreneur (ATF 96 II 192 consid. 5 p. 196 et la réf. à GEORG GAUTSCHI, Berner Kommentar, 2e éd. 1967, n° 15 ad art. 377
SR 220 Erste Abteilung: Allgemeine Bestimmungen Erster Titel: Die Entstehung der Obligationen Erster Abschnitt: Die Entstehung durch Vertrag
OR Art. 377 - Solange das Werk unvollendet ist, kann der Besteller gegen Vergütung der bereits geleisteten Arbeit und gegen volle Schadloshaltung des Unternehmers jederzeit vom Vertrag zurücktreten.
CO).
Le Code des obligations n'impose pas au juge d'ordonner une expertise pour la preuve de la rémunération et de l'indemnisation de l'entrepreneur. Une expertise peut toutefois s'imposer lorsque le juge n'est pas à même de résoudre, à la lumière de ses propres connaissances, la question qui lui est soumise. Tel est notamment le cas lorsqu'il s'agit de déterminer la valeur des travaux exécutés par rapport au prix forfaitaire convenu pour l'ensemble de l'ouvrage; seul un homme du métier est en mesure de dire quel pourcentage du prix forfaitaire doit être attaché à chaque phase des travaux (arrêt précité 4A 566/2015 consid. 4.1.3).

3.2.2. Le lésé doit en principe prouver le dommage de façon chiffrée (art. 42 al. 1
SR 220 Erste Abteilung: Allgemeine Bestimmungen Erster Titel: Die Entstehung der Obligationen Erster Abschnitt: Die Entstehung durch Vertrag
OR Art. 42 - 1 Wer Schadenersatz beansprucht, hat den Schaden zu beweisen.
1    Wer Schadenersatz beansprucht, hat den Schaden zu beweisen.
2    Der nicht ziffernmässig nachweisbare Schaden ist nach Ermessen des Richters mit Rücksicht auf den gewöhnlichen Lauf der Dinge und auf die vom Geschädigten getroffenen Massnahmen abzuschätzen.
3    Bei Tieren, die im häuslichen Bereich und nicht zu Vermögens- oder Erwerbszwecken gehalten werden, können die Heilungskosten auch dann angemessen als Schaden geltend gemacht werden, wenn sie den Wert des Tieres übersteigen.26
CO; arrêt 4A 397/2016 du 30 novembre 2016 consid. 5.1). Cependant, l'art. 42 alinéa 2
SR 220 Erste Abteilung: Allgemeine Bestimmungen Erster Titel: Die Entstehung der Obligationen Erster Abschnitt: Die Entstehung durch Vertrag
OR Art. 42 - 1 Wer Schadenersatz beansprucht, hat den Schaden zu beweisen.
1    Wer Schadenersatz beansprucht, hat den Schaden zu beweisen.
2    Der nicht ziffernmässig nachweisbare Schaden ist nach Ermessen des Richters mit Rücksicht auf den gewöhnlichen Lauf der Dinge und auf die vom Geschädigten getroffenen Massnahmen abzuschätzen.
3    Bei Tieren, die im häuslichen Bereich und nicht zu Vermögens- oder Erwerbszwecken gehalten werden, können die Heilungskosten auch dann angemessen als Schaden geltend gemacht werden, wenn sie den Wert des Tieres übersteigen.26
CO prévoit une preuve facilitée lorsque le demandeur se trouve dans un état de nécessité en matière de preuve (cf. arrêt 4A 431/2015 du 19 avril 2016 consid. 5.1.2 et arrêt précité 4A 397/2016 consid. 5.1) : ainsi, «lorsque le montant exact du dommage ne peut être établi, le juge le détermine équitablement en considération du cours ordinaire des choses et des mesures prises par la partie lésée».

3.2.3. L'autorité de céans a constaté que la détermination du gain manqué nécessite souvent l'appréciation du juge et pose généralement une question hypothétique à laquelle il faut répondre selon le cours ordinaire des choses, comme c'est le cas à l'art. 42 al. 2
SR 220 Erste Abteilung: Allgemeine Bestimmungen Erster Titel: Die Entstehung der Obligationen Erster Abschnitt: Die Entstehung durch Vertrag
OR Art. 42 - 1 Wer Schadenersatz beansprucht, hat den Schaden zu beweisen.
1    Wer Schadenersatz beansprucht, hat den Schaden zu beweisen.
2    Der nicht ziffernmässig nachweisbare Schaden ist nach Ermessen des Richters mit Rücksicht auf den gewöhnlichen Lauf der Dinge und auf die vom Geschädigten getroffenen Massnahmen abzuschätzen.
3    Bei Tieren, die im häuslichen Bereich und nicht zu Vermögens- oder Erwerbszwecken gehalten werden, können die Heilungskosten auch dann angemessen als Schaden geltend gemacht werden, wenn sie den Wert des Tieres übersteigen.26
CO (ATF 105 II 87 consid. I.3 p. 90; 104 II 198 consid. b p. 201; arrêt 4C.309/1993 du 5 avril 1994 consid. 5a/bb). Dans un calcul effectué selon la méthode de la déduction, elle a recouru à l'art. 42 al. 2
SR 220 Erste Abteilung: Allgemeine Bestimmungen Erster Titel: Die Entstehung der Obligationen Erster Abschnitt: Die Entstehung durch Vertrag
OR Art. 42 - 1 Wer Schadenersatz beansprucht, hat den Schaden zu beweisen.
1    Wer Schadenersatz beansprucht, hat den Schaden zu beweisen.
2    Der nicht ziffernmässig nachweisbare Schaden ist nach Ermessen des Richters mit Rücksicht auf den gewöhnlichen Lauf der Dinge und auf die vom Geschädigten getroffenen Massnahmen abzuschätzen.
3    Bei Tieren, die im häuslichen Bereich und nicht zu Vermögens- oder Erwerbszwecken gehalten werden, können die Heilungskosten auch dann angemessen als Schaden geltend gemacht werden, wenn sie den Wert des Tieres übersteigen.26
CO pour un des postes de déduction (ATF 96 II 192 consid. 7a p. 198). Par ailleurs, dans une affaire où il s'agissait d'établir le nombre d'heures de travail qui auraient été nécessaires à l'exécution complète de l'ouvrage, il a été jugé conforme au droit fédéral d'appliquer le degré de preuve réduit à la vraisemblance prépondérante, s'agissant d'une hypothèse (arrêt 4C.288/2001 du 16 janvier 2002 consid. 4c).

3.3. Dans le cas qui nous occupe, les aspects hypothétiques portent sur le nombre de commandes que les propriétaires de lots auraient confiées à la sous-traitante sans la rupture de contrat, respectivement sur le montant de ces commandes et leur contenu (projet de base de 20'000 fr., ou cuisine d'un montant supérieur en fonction d'exigences particulières?). La cour cantonale a abordé partiellement cette question lorsqu'elle s'est prononcée sur l'application de l'art. 156
SR 220 Erste Abteilung: Allgemeine Bestimmungen Erster Titel: Die Entstehung der Obligationen Erster Abschnitt: Die Entstehung durch Vertrag
OR Art. 156 - Eine Bedingung gilt als erfüllt, wenn ihr Eintritt von dem einen Teile wider Treu und Glauben verhindert worden ist.
CO; réduisant le degré de preuve requis, elle a jugé hautement vraisemblable que trois clients auraient commandé leur cuisine auprès de la sous-traitante.
Cela étant, la recourante s'est attachée à établir son gain manqué en se fondant sur le devis de base du 26 septembre 2011 (cf. let. A supra), lequel comportait des plans et détaillait la liste des éléments mobiliers et électroménagers composant la cuisine type proposée pour les appartements au prix de 20'000 fr. La recourante a allégué qu'elle devait supporter un coût total de 8'441 fr. 67 pour la fourniture du mobilier (2'528 fr. 62) et des appareils électroménagers (4'693 fr. 05), ainsi que pour la livraison et la pose de la cuisine (1'220 fr.; cf. all. 102-104). Sa marge bénéficiaire sur une cuisine type était dès lors de 11'558 fr. 33, soit 57,79% de 20'000 fr. (all. 105).
Eu égard au caractère détaillé et concret du devis de base, qui figure au dossier, rien n'indique que la recourante se soit trouvée dans un état de nécessité probatoire s'agissant d'établir ses coûts de revient, et partant sa marge pour la fourniture d'une cuisine type. On ne discerne dès lors pas de motifs qui justifieraient de faciliter la preuve.
La cour cantonale a jugé que les pièces produites par la sous-traitante ne permettaient pas d'établir ses coûts de revient, et partant sa marge bénéficiaire (57,79%). Cette conclusion, qui relève de l'appréciation des preuves, doit être dénoncée par un grief d'arbitraire motivé de façon circonstanciée (cf. consid. 2.2 supra). On peut s'interroger sur la recevabilité de l'argumentation présentée par la recourante, qui renvoie pour l'essentiel aux explications données à l'appui de son grief de violation de l'art. 42 al. 2
SR 220 Erste Abteilung: Allgemeine Bestimmungen Erster Titel: Die Entstehung der Obligationen Erster Abschnitt: Die Entstehung durch Vertrag
OR Art. 42 - 1 Wer Schadenersatz beansprucht, hat den Schaden zu beweisen.
1    Wer Schadenersatz beansprucht, hat den Schaden zu beweisen.
2    Der nicht ziffernmässig nachweisbare Schaden ist nach Ermessen des Richters mit Rücksicht auf den gewöhnlichen Lauf der Dinge und auf die vom Geschädigten getroffenen Massnahmen abzuschätzen.
3    Bei Tieren, die im häuslichen Bereich und nicht zu Vermögens- oder Erwerbszwecken gehalten werden, können die Heilungskosten auch dann angemessen als Schaden geltend gemacht werden, wenn sie den Wert des Tieres übersteigen.26
CO. Quoi qu'il en soit, cette question souffre de rester indécise dans la mesure où le grief d'arbitraire doit de toute façon être rejeté pour les raisons exposées ci-dessous.
La recourante a proposé d'établir par pièces les coûts devant être retranchés du chiffre d'affaires de 20'000 fr. Pour le mobilier équipant la cuisine type, elle a produit un document établi par un fournisseur (pièce 68) comportant la référence « P.________ Projet de B» et une «date de confirmation» du 4 octobre 2013, suivi d'une liste de divers éléments de cuisine avec leur prix (armoires, plinthes, etc), pour un total de EUR 2'069.93 (soit CHF 2'528.62). Quant au coût des appareils électro-ménagers, elle a fourni un courriel de la maison M.________ (pièce 70) intitulé «Antwort: conditions projet P.________», dans lequel il est affirmé que «le rabais pour cet objet est de 40% sur les prix 2012 hors taxe». Enfin, la recourante a produit un devis d'une entreprise spécialisée dans le montage de cuisines (pièce 71), dont il ressort qu'un montant de 1'220 fr. hors taxes doit être prévu pour la pose et la livraison d'une cuisine selon le projet de base P.________ du 26 septembre 2011.
Force est de constater, avec l'intimée, qu'il n'est pas possible d'établir une correspondance entre les pièces produites (spécialement les pièces 68 et 70) et le devis de base, respectivement qu'il n'était pas insoutenable de considérer que ces pièces ne permettaient pas d'établir la totalité des coûts à retrancher du chiffre d'affaires de 20'000 fr., ni par conséquent la marge de la sous-traitante pour la fourniture d'une cuisine type. Par ailleurs, la conclusion selon laquelle la preuve par expertise aurait dû être offerte ne contrevient pas davantage au droit fédéral. Il est patent qu'un juge n'avait pas les connaissances spécialisées nécessaires pour chiffrer, sur la base du projet de cuisine type, le montant des coûts supportés par la sous-traitante, et partant sa marge bénéficiaire. Il appartenait à l'homme du métier d'établir ces éléments; l'art. 42 al. 2
SR 220 Erste Abteilung: Allgemeine Bestimmungen Erster Titel: Die Entstehung der Obligationen Erster Abschnitt: Die Entstehung durch Vertrag
OR Art. 42 - 1 Wer Schadenersatz beansprucht, hat den Schaden zu beweisen.
1    Wer Schadenersatz beansprucht, hat den Schaden zu beweisen.
2    Der nicht ziffernmässig nachweisbare Schaden ist nach Ermessen des Richters mit Rücksicht auf den gewöhnlichen Lauf der Dinge und auf die vom Geschädigten getroffenen Massnahmen abzuschätzen.
3    Bei Tieren, die im häuslichen Bereich und nicht zu Vermögens- oder Erwerbszwecken gehalten werden, können die Heilungskosten auch dann angemessen als Schaden geltend gemacht werden, wenn sie den Wert des Tieres übersteigen.26
CO n'est pas un remède permettant de suppléer aux lacunes d'une partie qui a omis de requérir une mesure probatoire disponible. L'autorité précédente n'a pas méconnu les principes du droit à la preuve, ni les différents moyens à disposition des parties (art. 168
SR 272 Schweizerische Zivilprozessordnung vom 19. Dezember 2008 (Zivilprozessordnung, ZPO) - Gerichtsstandsgesetz
ZPO Art. 168 - 1 Als Beweismittel sind zulässig:
1    Als Beweismittel sind zulässig:
a  Zeugnis;
b  Urkunde;
c  Augenschein;
d  Gutachten;
e  schriftliche Auskunft;
f  Parteibefragung und Beweisaussage.
2    Vorbehalten bleiben die Bestimmungen über Kinderbelange in familienrechtlichen Angelegenheiten.
CPC). Elle n'a pas négligé les titres produits mais a jugé sans aucun arbitraire qu'ils n'établissaient pas la
marge devant revenir à la recourante pour la fourniture d'une cuisine type.
Quant au grief selon lequel l'autorité précédente aurait négligé son devoir de motivation en n'expliquant pas pourquoi elle s'écartait de l'analyse des premiers juges et déniait toute force probante aux pièces, il est également infondé. La Chambre patrimoniale s'était placée dans la perspective d'une culpa in contrahendoet a jugé que les postes invoqués ne constituaient pas des dommages négatifs réparables à ce titre. Quant à l'autorité d'appel, elle a motivé son appréciation des preuves d'une façon certes succincte, et qui implique de consulter aussi bien l'écriture contenant les allégations que les pièces produites, mais elle permet au justiciable qui a fourni ces éléments d'exercer son droit de recours en connaissance de cause (sur le devoir de motiver, cf. par ex. ATF 142 II 154 consid. 4.2).

3.4. La recourante reproche encore à l'autorité précédente d'avoir versé dans l'arbitraire en considérant que trois acquéreurs seulement auraient très vraisemblablement commandé leur cuisine auprès d'elle, alors que cette preuve aurait aussi été rapportée pour deux personnes supplémentaires; l'autorité d'appel aurait de surcroît enfreint son devoir de motivation.
Le point soulevé est sans incidence pour l'issue du litige et n'appelle dès lors aucune discussion (concernant le droit d'être entendu, cf. arrêt 4A 141/2016 du 26 mai 2016 consid. 1.2). En effet, les juges cantonaux ont fait application de l'art. 156
SR 220 Erste Abteilung: Allgemeine Bestimmungen Erster Titel: Die Entstehung der Obligationen Erster Abschnitt: Die Entstehung durch Vertrag
OR Art. 156 - Eine Bedingung gilt als erfüllt, wenn ihr Eintritt von dem einen Teile wider Treu und Glauben verhindert worden ist.
CO mais ont rejeté à juste titre la prétention en indemnisation du gain manqué pour des motifs étrangers au comportement hypothétique des clients. Par surabondance, les résumés des déclarations des acquéreurs concernés, auxquels renvoie l'arrêt attaqué (cf. p. 11 s. et 24), permettent de comprendre pourquoi la cour a renoncé à retenir deux autres clients potentiels.

3.5. La recourante prétend également être indemnisée pour les dépenses qu'elle a engagées jusqu'à ce que l'intimée interrompe leur relation. Ce poste devrait logiquement équivaloir à 22'100 fr. 85, si l'on se réfère aux conclusions de la recourante (220'321 fr. 85) et à ses explications quant au gain manqué (198'221 fr.). La recourante n'explique pas clairement comment elle parvient à ce résultat. Elle évoque des «dépenses réelles (...) pour les travaux exécutés» tout en se référant au projet type, qu'elle ne prétend pas avoir mis à exécution.
Pour le surplus, la recourante demande le remboursement des frais salariaux qu'elle a engagés en affectant son collaborateur T.________ au projet P.________, frais qui s'élèveraient à 8'800 fr. (soit 40% de 22'000 fr.).
L'entrepreneur a le droit d'être rémunéré pour les frais en personnel, matériaux ou autres qu'il était nécessaire d'engager pour exécuter soigneusement l'ouvrage. En d'autres termes, il ne saurait être rémunéré pour les dépenses inutiles qu'un entrepreneur diligent n'aurait pas engagées (cf. arrêt 4A 577/2008 du 31 mars 2009 consid. 5.2 et les réf. citées; GAUCH, op. cit., n° 964 s.). Il appartient à l'entrepreneur de déterminer le montant des coûts effectifs, et donc également de démontrer la nécessité des frais engagés (arrêt 4A 183/2010 du 27 mai 2010 consid. 3.2 et les auteurs cités).
En l'occurrence, l'arrêt attaqué retient que T.________ a travaillé à plein temps pour la sous-traitante du 15 janvier au 30 juin 2012 en qualité de dessinateur, vendeur, cuisiniste et secrétaire. Il a touché au total un salaire de base AVS de 22'000 fr. Entendu comme témoin, l'intéressé a déclaré avoir consacré entre 40 et 50% de son temps au projet P.________, en sa qualité de cuisiniste et d'architecte d'intérieur. La cour cantonale n'a pas remis en cause la crédibilité de cette personne qui, lorsqu'elle a été entendue, n'avait plus de lien contractuel avec la sous-traitante.
La lecture des décisions cantonales ne permet cependant pas de déterminer avec une précision suffisante quels travaux ont été accomplis par la sous-traitante et par ce collaborateur en particulier, sachant que la sous-traitante a finalement admis qu'elle ne pouvait être dédommagée pour les frais de salaire inhérents au travail de son directeur, faute de preuve suffisante. L'arrêt attaqué se réfère aux allégués 99 et suivants, dont il ressort simplement que le coût relatif à l'emploi de T.________, principalement dédié au suivi du projet P.________, s'est élevé à 22'000 fr., charges patronales en sus (all. 99).
Dans ces circonstances, la recourante ne pouvait prétendre être rémunérée pour des frais de main-d'oeuvre alors que les données concernant les prestations fournies avec l'aide de cette main-d'oeuvre restaient vagues et ne revêtaient pas la précision suffisante. Pour ce motif déjà, la prétention en paiement de 8'800 fr. (40% de 22'000 fr.) pouvait être rejetée sans enfreindre le droit fédéral.

4.
En définitive, le recours doit être rejeté dans la mesure où il est recevable, aux frais de son auteur (art. 66 al. 1
SR 173.110 Bundesgesetz vom 17. Juni 2005 über das Bundesgericht (Bundesgerichtsgesetz, BGG) - Bundesgerichtsgesetz
BGG Art. 66 Erhebung und Verteilung der Gerichtskosten - 1 Die Gerichtskosten werden in der Regel der unterliegenden Partei auferlegt. Wenn die Umstände es rechtfertigen, kann das Bundesgericht die Kosten anders verteilen oder darauf verzichten, Kosten zu erheben.
1    Die Gerichtskosten werden in der Regel der unterliegenden Partei auferlegt. Wenn die Umstände es rechtfertigen, kann das Bundesgericht die Kosten anders verteilen oder darauf verzichten, Kosten zu erheben.
2    Wird ein Fall durch Abstandserklärung oder Vergleich erledigt, so kann auf die Erhebung von Gerichtskosten ganz oder teilweise verzichtet werden.
3    Unnötige Kosten hat zu bezahlen, wer sie verursacht.
4    Dem Bund, den Kantonen und den Gemeinden sowie mit öffentlich-rechtlichen Aufgaben betrauten Organisationen dürfen in der Regel keine Gerichtskosten auferlegt werden, wenn sie in ihrem amtlichen Wirkungskreis, ohne dass es sich um ihr Vermögensinteresse handelt, das Bundesgericht in Anspruch nehmen oder wenn gegen ihre Entscheide in solchen Angelegenheiten Beschwerde geführt worden ist.
5    Mehrere Personen haben die ihnen gemeinsam auferlegten Gerichtskosten, wenn nichts anderes bestimmt ist, zu gleichen Teilen und unter solidarischer Haftung zu tragen.
LTF). La recourante versera en outre une indemnité de dépens à l'intimée (art. 68 al. 1
SR 173.110 Bundesgesetz vom 17. Juni 2005 über das Bundesgericht (Bundesgerichtsgesetz, BGG) - Bundesgerichtsgesetz
BGG Art. 68 Parteientschädigung - 1 Das Bundesgericht bestimmt im Urteil, ob und in welchem Mass die Kosten der obsiegenden Partei von der unterliegenden zu ersetzen sind.
1    Das Bundesgericht bestimmt im Urteil, ob und in welchem Mass die Kosten der obsiegenden Partei von der unterliegenden zu ersetzen sind.
2    Die unterliegende Partei wird in der Regel verpflichtet, der obsiegenden Partei nach Massgabe des Tarifs des Bundesgerichts alle durch den Rechtsstreit verursachten notwendigen Kosten zu ersetzen.
3    Bund, Kantonen und Gemeinden sowie mit öffentlich-rechtlichen Aufgaben betrauten Organisationen wird in der Regel keine Parteientschädigung zugesprochen, wenn sie in ihrem amtlichen Wirkungskreis obsiegen.
4    Artikel 66 Absätze 3 und 5 ist sinngemäss anwendbar.
5    Der Entscheid der Vorinstanz über die Parteientschädigung wird vom Bundesgericht je nach Ausgang des Verfahrens bestätigt, aufgehoben oder geändert. Dabei kann das Gericht die Entschädigung nach Massgabe des anwendbaren eidgenössischen oder kantonalen Tarifs selbst festsetzen oder die Festsetzung der Vorinstanz übertragen.
et 2
SR 173.110 Bundesgesetz vom 17. Juni 2005 über das Bundesgericht (Bundesgerichtsgesetz, BGG) - Bundesgerichtsgesetz
BGG Art. 68 Parteientschädigung - 1 Das Bundesgericht bestimmt im Urteil, ob und in welchem Mass die Kosten der obsiegenden Partei von der unterliegenden zu ersetzen sind.
1    Das Bundesgericht bestimmt im Urteil, ob und in welchem Mass die Kosten der obsiegenden Partei von der unterliegenden zu ersetzen sind.
2    Die unterliegende Partei wird in der Regel verpflichtet, der obsiegenden Partei nach Massgabe des Tarifs des Bundesgerichts alle durch den Rechtsstreit verursachten notwendigen Kosten zu ersetzen.
3    Bund, Kantonen und Gemeinden sowie mit öffentlich-rechtlichen Aufgaben betrauten Organisationen wird in der Regel keine Parteientschädigung zugesprochen, wenn sie in ihrem amtlichen Wirkungskreis obsiegen.
4    Artikel 66 Absätze 3 und 5 ist sinngemäss anwendbar.
5    Der Entscheid der Vorinstanz über die Parteientschädigung wird vom Bundesgericht je nach Ausgang des Verfahrens bestätigt, aufgehoben oder geändert. Dabei kann das Gericht die Entschädigung nach Massgabe des anwendbaren eidgenössischen oder kantonalen Tarifs selbst festsetzen oder die Festsetzung der Vorinstanz übertragen.
LTF).

Par ces motifs, le Tribunal fédéral prononce:

1.
Le recours est rejeté dans la mesure où il est recevable.

2.
Les frais judiciaires, arrêtés à 6'000 fr., sont mis à la charge de la recourante.

3.
La recourante versera à l'intimée une indemnité de 7'000 fr. à titre de dépens.

4.
Le présent arrêt est communiqué aux mandataires des parties et à la Cour d'appel civile du Tribunal cantonal du canton de Vaud.

Lausanne, le 5 octobre 2017

Au nom de la Ire Cour de droit civil
du Tribunal fédéral suisse

La Présidente: Kiss

La Greffière: Monti