Sachverhalt:
A.
B._ reichte ein Baugesuch für die Nutzung des Flachdachs seiner Liegenschaft (Gebäude Nr. 716, Parzelle Nr. 2311) als Terrasse ein. Das Dach soll mit einem umlaufenden Staketengeländer gesichert und über dem bestehenden Kiesdach ein Holzboden montiert werden.
Gegen das Vorhaben erhob A._ Einwendung. Sie ist Eigentümerin der Parzelle Nr. 2264, deren Grenze entlang der Hausmauer des Gebäudes Nr. 716 verläuft.
Am 21. Mai 2012 hiess der Gemeinderat Ennetbaden die Einwendung teilweise gut und bewilligte die Nutzung des Flachdachs als Terrasse unter folgenden Auflagen und Bedingungen:
1. Gegenüber der Parzelle 2264 muss ein Grenzabstand von mindestens 2.00 m eingehalten werden. Dieser Streifen ist baulich abzutrennen, so dass er nicht genutzt werden kann. Innerhalb dieses zwei Meter breiten Streifens sind keine Anlagen und Installationen zulässig. Die nutzbare Sitzplatzfläche darf maximal 40 m2 betragen. Wird dieses Fläche überschritten, ist ein Grenzabstand von 4.00 m einzuhalten.
2. Der geplante Aufgang via die bestehende Dachluke wird nicht bewilligt. Es ist eine Lösung ausserhalb des 2.00 m breiten Streifens zwischen der Parzelle 2246 aufzuzeigen.
B.
Gegen den Beschluss des Gemeinderats erhob A._ Beschwerde an das Departement Bau, Verkehr und Umwelt (BVU) des Kantons Aargau. Dieses hiess die Beschwerde am 24. Oktober 2012 gut und hob den Beschluss des Gemeinderates auf.
C.
Gegen diesen Entscheid gelangte B._ am 28. November 2012 mit Beschwerde an das Verwaltungsgericht des Kantons Aargau. Dieses hiess die Beschwerde am 23. Januar 2014 gut, hob den angefochtenen Entscheid auf und bestätigte die Baubewilligung des Gemeinderats Ennetbaden vom 21. Mai 2012.
D.
Gegen den verwaltungsgerichtlichen Entscheid hat A._ am 5. März 2014 Beschwerde in öffentlich-rechtlichen Angelegenheiten ans Bundesgericht erhoben. Sie beantragt, der angefochtene Entscheid sei unter Neuregelung der Kosten aufzuheben. Eventualiter sei das Dispositiv des verwaltungsgerichtlichen Urteils wie folgt neu zu fassen:
1. Die Beschwerde wird abgewiesen.
2. Die verwaltungsgerichtlichen Verfahrenskosten werden dem Beschwerdeführer auferlegt.
3. Der Beschwerdeführer wird verpflichtet, der Beschwerdegegnerin die vor Verwaltungsgericht entstandenen Parteikosten im Umfang von Fr. 1'500.-- (inkl. MwSt und Auslagen) zu ersetzen.
E.
B._ beantragt, auf die Beschwerde sei nicht einzutreten, eventuell sei sie abzuweisen. Das Verwaltungsgericht und der Gemeinderat Ennetbaden schliessend auf Abweisung der Beschwerde. Das Departement hat auf eine Vernehmlassung verzichtet.
Im weiteren Schriftenwechsel halten die Parteien an ihren Anträgen fest.

Erwägungen:
1.
Gegen den kantonal letztinstanzlichen Endentscheid des Verwaltungsgerichts steht grundsätzlich die Beschwerde in öffentlich-rechtlichen Angelegenheiten ans Bundesgericht offen (Art. 82 lit. a, 86 Abs. 1 lit. d und 90 BGG). Die Beschwerdeführerin ist als Eigentümerin der an die geplante Dachterrasse angrenzenden Liegenschaft zur Beschwerde legitimiert (<ref-law>). Auf die rechtzeitig erhobene Beschwerde (<ref-law>) ist daher grundsätzlich einzutreten.
Mit der Beschwerde in öffentlich-rechtlichen Angelegenheiten kann insbesondere die Verletzung von Bundesrecht - einschliesslich Überschreitung oder Missbrauch des Ermessens - gerügt werden (<ref-law>). Das Bundesgericht wendet das Bundesrecht grundsätzlich von Amtes wegen an (<ref-law>). Die Verletzung von Grundrechten - einschliesslich die willkürliche Anwendung von kantonalem Recht - prüft es dagegen nur insoweit, als eine solche Rüge in der Beschwerde vorgebracht und genügend begründet worden ist (<ref-law>; <ref-ruling> E. 1.4.2 S. 254 mit Hinweisen). Ob die Rügen der Beschwerdeführerin diesen Anforderungen entsprechen, ist im jeweiligen Zusammenhang zu prüfen.
Das Bundesgericht legt seinem Urteil den Sachverhalt zugrunde, den die Vorinstanz festgestellt hat, sofern dieser nicht offensichtlich unrichtig ist oder auf einer Rechtsverletzung im Sinne von <ref-law> beruht (Art. 105 und Art. 97 Abs. 1 BGG). Neue Tatsachen und Beweismittel können nur so weit vorgebracht werden, als erst der Entscheid der Vorinstanz dazu Anlass gibt (<ref-law>).
2.
Das Verwaltungsgericht ging - wie schon der Gemeinderat Ennetbaden - davon aus, dass die geplante Dachterrasse als Klein- und Anbaute i.S.v. § 18 der Allgemeinen Verordnung zum Baugesetz vom 23. Februar 1994 (ABauV) zu qualifizieren sei (die gemäss § 64 Abs. 1 der Bauverordnung vom 25. Mai 2011 [BauV; SAR 713.121] übergangsrechtlich anwendbar sei), so dass ein Grenzabstand von 2 m genüge. (Die ordentlichen Grenzabstände für die Wohnzone WS2 betragen 4 m und 8 m gemäss § 7 Abs. 1 der Bau- und Nutzungsordnung der Gemeinde Ennetbaden [BNO]).
2.1. § 18 Abs. 1 und 2 ABauV lauten:
§ 18 Klein- und Anbauten (§ 47 BauG)
1 Als Klein- und Anbauten gelten unbewohnte Gebäude und Gebäudeteile (Garagen, Schöpfe, Garten- und Gewächshäuschen, gedeckte mindestens einseitig offene Sitzplätze usw.) mit einer Grundfläche von höchstens 40 m2 und einer Gebäudehöhe, die in der Ebene höchstens 3 m beträgt. Am Hang erhöht sich die maximale Gebäudehöhe um die Hälfte der Höhendifferenz innerhalb des Grundrisses. Wintergärten gelten nicht als Klein- und Anbauten.
2 Soweit die Gemeinden nichts anderes festlegen, gilt für Klein- und Anbauten ein Grenzabstand von 2 m, welcher mit schriftlicher Zustimmung der betroffenen Nachbarn reduziert oder aufgehoben werden kann. Gegenüber Hauptgebäuden und für Klein- und Anbauten untereinander gilt kein Gebäudeabstand, wenn die architektonischen, gesundheits- und feuerpolizeilichen Anforderungen gewahrt bleiben.
2.2. Die Beschwerdeführerin rügt, der verwaltungsgerichtliche Entscheid enthalte keine nachvollziehbare Begründung und verletze damit bereits das rechtliche Gehör. Er sei auch inhaltlich offensichtlich falsch. Er leide an einem inneren, nicht auflösbaren Widerspruch, weil er einerseits davon ausgehe, dass es sich bei der Dachterrasse um einen "Gebäudeteil" handle, der den Grenzabstand einhalten müsse, andererseits aber annehme, dass die Baute durch die Auflagen "bewilligungsfähig" gemacht worden sei. Das Verwaltungsgericht missachte somit die Grenzabstandsvorschiften gemäss § 47 Abs. 1 des Aargauer Gesetzes über Raumentwicklung und Bauwesen vom 19. Januar 1993 [Baugesetz, BauG; AGS 713.100) i.V.m. § 7 Abs. 1 BNO, und verletze damit das Legalitätsprinzip.
Der Begründung des angefochtenen Entscheids lasse sich nicht entnehmen, dass es sich bei der Dachterrasse um eine Klein- und Anbaute i.S.v. § 18 ABauV handle. Im angefochtenen Entscheid habe das Verwaltungsgericht vielmehr selbst festgehalten, dass es sich nicht um ein Gebäude handle (S. 9 Mitte). Zudem müsse eine Klein- oder Anbaute eine Gebäudehöhe von maximal 3 m einhalten, gemessen ab dem gewachsenen Terrain (§ 12 ABauV). Klein- und Anbauten auf Gebäuden gebe es nach Aargauischem Baurecht nicht. Der angefochtene Entscheid bewillige somit innerhalb des ordentlichen Grenzabstands eine Nutzung, die - wie ein Balkon oder eine Terrasse - zu erheblichen Immissionen für die Beschwerdeführerin führe. Dies sei willkürlich.
2.3. Das Verwaltungsgericht legte dar, dass es im Wesentlichen um einen ungedeckten Sitzplatz mit Geländer auf dem bestehenden Flachdach gehe. Diese Konstruktion könne zwanglos als Gebäudeteil angesehen werden. Aufgrund der fehlenden Überdeckung sei die Nutzung durch die Witterungsverhältnisse beschränkt; überdies könne das Flachdach nur über eine Treppe oder Leiter erreicht werden, weshalb es wesentlich mühsamer sei, die Infrastruktur für die Freizeitnutzung bereitzustellen (z.B. Möbel, Grill, Essgeschirr) als bei Balkonen oder Terrassen auf Wohnniveau. Unter diesen Umständen könne nicht von einem bewohnbaren Gebäudeteil besprochen werden. Die Höhenbeschränkung von 3 m gemäss § 18 Abs. 1 ABauV sei auf überdachte Bauten zugeschnitten und finde daher keine Anwendung. Das Gebäude Nr. 716 halte insgesamt die in der WS2 zulässige maximale Gebäudehöhe von 9.5 m bei weitem ein, auch mit den vorgesehenen baulichen Vorkehrungen auf dem Flachdach. Mit den von der Gemeinde verfügten Auflagen (Begrenzung auf 40 m2, Einhaltung eines Abstands von 2 m) könne daher die Nutzung bewilligungsfähig gemacht werden. Das Verwaltungsgericht verwies in diesem Zusammenhang auf § 43 Abs. 3 BNO, wonach Flachdächer auf Hauptbauten nach Möglichkeit zu begrünen oder als Terrassen zu nutzen seien.
2.4. Aus dieser Begründung geht hervor, dass und aus welchen Gründen das Verwaltungsgericht vom Vorliegen einer Klein- und Anbaute i.S.v. § 18 Abs. 1 ABauV ausging. Mit dem Hinweis auf die - gemäss § 43 Abs. 3 BNO - erwünschte Nutzung von Flachdächern als Terrassen hat die Vorinstanz auch begründet, weshalb es zulässig war, das Baugesuch durch die Anordnung von Auflagen und Bedingungen "bewilligungsfähig zu machen". Eine Verletzung der Begründungspflicht liegt somit nicht vor.
2.5. Die Auslegung und Anwendung von selbstständigem kantonalem Recht (hier: § 18 ABauV) prüft das Bundesgericht nur unter dem Blickwinkel des Willkürverbots. Willkür liegt nach der Rechtsprechung nicht schon dann vor, wenn eine andere Lösung ebenfalls vertretbar erscheint oder sogar vorzuziehen wäre. Das Bundesgericht weicht vom Entscheid der kantonalen Instanz nur ab, wenn dieser offensichtlich unhaltbar ist, mit der tatsächlichen Situation in klarem Widerspruch steht, eine Norm oder einen unumstrittenen Rechtsgrundsatz krass verletzt oder in stossender Weise dem Gerechtigkeitsgedanken zuwiderläuft (<ref-ruling> E. 2.2.2 S. 318 f. mit Hinweisen).
Es ist bereits fraglich, ob die Begründung der Willkürrüge den gesetzlichen Begründungsanforderungen genügt. Jedenfalls ist sie nicht geeignet, den angefochtenen Entscheid als willkürlich erscheinen zu lassen:
Ein innerer Widerspruch in der Begründung ist nicht ersichtlich: Das Verwaltungsgericht ging zwar davon aus, dass das 1961 vereinbarte Näherbaurecht nur das bestehende Wohnhaus des Beschwerdegegners umfasse, weshalb die Grenzabstände zu beachten seien. Für Klein- und Anbauten i.S.v. § 18 ABauV gelten jedoch nicht die ordentlichen Grenzabstände von 4 bzw. 8 m, sondern ein reduzierter Grenzabstand von 2 m. Das Verwaltungsgericht qualifizierte die Dachterrasse nicht als Gebäude, sondern als "unbewohnten Gebäudeteil". Seine Ausführungen - insbesondere zur Frage der Gebäudehöhe - lassen keine Willkür erkennen.
3.
Nach dem Gesagten ist die Beschwerde abzuweisen, soweit darauf einzutreten ist.
Bei diesem Ausgang des Verfahrens wird die Beschwerdeführerin kosten- und entschädigungspflichtig (Art. 66 und 68 BGG).

Demnach erkennt das Bundesgericht:
1.
Die Beschwerde wird abgewiesen, soweit darauf einzutreten ist.
2.
Die Gerichtskosten von Fr. 3'000.-- werden der Beschwerdeführerin auferlegt.
3.
Die Beschwerdeführerin hat den Beschwerdegegner für das bundesgerichtliche Verfahren mit Fr. 2'000.-- zu entschädigen.
4.
Dieses Urteil wird den Parteien, dem Gemeinderat Ennetbaden, dem Departement Bau, Verkehr und Umwelt und dem Verwaltungsgericht des Kantons Aargau, 3. Kammer, schriftlich mitgeteilt.
Lausanne, 6. Juni 2014
Im Namen der I. öffentlich-rechtlichen Abteilung
des Schweizerischen Bundesgerichts
Der Präsident: Fonjallaz
Die Gerichtsschreiberin: Gerber