diff --git a/docs/grid_exchange_formats/psse/img/dark_mode/three-winding-transformer-model.svg b/docs/grid_exchange_formats/psse/img/dark_mode/three-winding-transformer-model.svg
new file mode 100644
index 00000000000..dc10fb93710
--- /dev/null
+++ b/docs/grid_exchange_formats/psse/img/dark_mode/three-winding-transformer-model.svg
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/docs/grid_exchange_formats/psse/img/dark_mode/two-winding-transformer-model.svg b/docs/grid_exchange_formats/psse/img/dark_mode/two-winding-transformer-model.svg
new file mode 100644
index 00000000000..fef1631b4ec
--- /dev/null
+++ b/docs/grid_exchange_formats/psse/img/dark_mode/two-winding-transformer-model.svg
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/docs/grid_exchange_formats/psse/img/three-windings-transformer-model.svg b/docs/grid_exchange_formats/psse/img/three-winding-transformer-model.svg
similarity index 100%
rename from docs/grid_exchange_formats/psse/img/three-windings-transformer-model.svg
rename to docs/grid_exchange_formats/psse/img/three-winding-transformer-model.svg
diff --git a/docs/grid_exchange_formats/psse/img/two-windings-transformer-model.svg b/docs/grid_exchange_formats/psse/img/two-winding-transformer-model.svg
similarity index 100%
rename from docs/grid_exchange_formats/psse/img/two-windings-transformer-model.svg
rename to docs/grid_exchange_formats/psse/img/two-winding-transformer-model.svg
diff --git a/docs/grid_exchange_formats/psse/import.md b/docs/grid_exchange_formats/psse/import.md
index 7ec3d13a963..aaa8ca1c675 100644
--- a/docs/grid_exchange_formats/psse/import.md
+++ b/docs/grid_exchange_formats/psse/import.md
@@ -165,7 +165,8 @@ The transformer is connected at both ends if the branch status (field `STAT` in
In PSS®E the transformer model allows to define a ratio and angle at the end `1` and only a fixed ratio at the end `2`. The transformer magnetizing admittance is modeled between the bus and the ratio of the end `1`. The PowSyBl grid model supports a ratioTapChanger and a phaseTapChanger at the end `1` and the magnetizing admittance is between the ratio and the transmission impedance.
-![TwoWindingsTransformerModels](img/two-windings-transformer-model.svg){width="100%" align=center}
+![TwoWindingsTransformerModels](img/two-winding-transformer-model.svg){width="100%" align=center class="only-light"}
+![TwoWindingsTransformerModels](img/dark_mode/two-winding-transformer-model.svg){width="100%" align=center class="only-dark"}
To express the PSS®E electric attributes of the transformer in the PowSyBl grid model the following conversions are performed:
@@ -218,7 +219,8 @@ When a three windings transformer is modeled the two windings transformer steps
- Each winding can have a complex ratio and a `ratioTapChanger` or `phaseTapChanger` with its corresponding control, always at end `1`. The current PowSyBl version only supports one enabled control by three windings transformer so if there is more than one enabled only the first (winding `1`, winding `2`, winding `3`) is kept enabled, the rest are automatically disabled.
- In three windings transformers the status attribute (field `STAT` in the _Transformer Data_ record) could be `0` that means all the windings disconnected, `1` for all windings connected, `2` for only the second winding disconnected, `3` for the third winding disconnected and `4` for the first winding disconnected.
-![ThreeWindingsTransformerModels](img/three-windings-transformer-model.svg){width="100%" align=center}
+![ThreeWindingsTransformerModels](img/three-winding-transformer-model.svg){width="100%" align=center class="only-light"}
+![ThreeWindingsTransformerModels](img/dark_mode/three-winding-transformer-model.svg){width="100%" align=center class="only-dark"}
### Slack bus
diff --git a/docs/grid_model/additional.md b/docs/grid_model/additional.md
index 1b06270a317..448c3dd24b7 100644
--- a/docs/grid_model/additional.md
+++ b/docs/grid_model/additional.md
@@ -85,7 +85,8 @@ The component on which the current limits are applied can safely remain
between the preceding limit (it could be another temporary limit or a permanent limit) and this limit for a duration up to the acceptable duration.
Please look at this scheme to fully understand the modelling (the following example shows current limits but this modelling is valid for all loading limits):
-![Loading limits model](img/currentLimits.svg){width="50%" align=center}
+![Loading limits model](img/current-limits.svg){width="50%" align=center class="only-light"}
+![Loading limits model](img/dark_mode/current-limits.svg){width="50%" align=center class="only-dark"}
Note that, following this modelling, in general the last temporary limit (the higher one in value) should be infinite with an acceptable duration different from zero, except for tripping current modeling where the last temporary limit is infinite with an acceptable duration equal to zero. If temporary limits are modeled, the permanent limit becomes mandatory.
@@ -118,7 +119,8 @@ CurrentLimits currentLimits = network.getDanglingLine("DL").newCurrentLimits()
.endTemporaryLimit()
.add();
```
-![Current limits scheme_example1](img/currentLimitsExample1.svg)
+![Current limits scheme_example1](img/current-limits-example1.svg){align=center class="only-light"}
+![Current limits scheme_example1](img/dark_mode/current-limits-example1.svg){align=center class="only-dark"}
##### Second example
This second example creates a `CurrentLimits` instance containing one permanent limit and three temporary limits, one of them having an infinite limit value.
@@ -142,7 +144,8 @@ CurrentLimits currentLimits = network.getDanglingLine("DL").newCurrentLimits()
.endTemporaryLimit()
.add();
```
-![Current limits scheme_example2](img/currentLimitsExample2.svg)
+![Current limits scheme_example2](img/current-limits-example2.svg){align=center class="only-light"}
+![Current limits scheme_example2](img/dark_mode/current-limits-example2.svg){align=center class="only-dark"}
(phase-tap-changer)=
## Phase tap changer
diff --git a/docs/grid_model/img/currentLimitsExample1.svg b/docs/grid_model/img/current-limits-example1.svg
similarity index 100%
rename from docs/grid_model/img/currentLimitsExample1.svg
rename to docs/grid_model/img/current-limits-example1.svg
diff --git a/docs/grid_model/img/currentLimitsExample2.svg b/docs/grid_model/img/current-limits-example2.svg
similarity index 100%
rename from docs/grid_model/img/currentLimitsExample2.svg
rename to docs/grid_model/img/current-limits-example2.svg
diff --git a/docs/grid_model/img/currentLimits.svg b/docs/grid_model/img/current-limits.svg
similarity index 100%
rename from docs/grid_model/img/currentLimits.svg
rename to docs/grid_model/img/current-limits.svg
diff --git a/docs/grid_model/img/danglingLine.svg b/docs/grid_model/img/dangling-line.svg
similarity index 100%
rename from docs/grid_model/img/danglingLine.svg
rename to docs/grid_model/img/dangling-line.svg
diff --git a/docs/grid_model/img/dark_mode/current-limits-example1.svg b/docs/grid_model/img/dark_mode/current-limits-example1.svg
new file mode 100644
index 00000000000..f3f35506bab
--- /dev/null
+++ b/docs/grid_model/img/dark_mode/current-limits-example1.svg
@@ -0,0 +1,73 @@
+
+
+
diff --git a/docs/grid_model/img/dark_mode/current-limits-example2.svg b/docs/grid_model/img/dark_mode/current-limits-example2.svg
new file mode 100644
index 00000000000..2d9927f2ec1
--- /dev/null
+++ b/docs/grid_model/img/dark_mode/current-limits-example2.svg
@@ -0,0 +1,78 @@
+
+
+
+
+
diff --git a/docs/grid_model/img/dark_mode/current-limits.svg b/docs/grid_model/img/dark_mode/current-limits.svg
new file mode 100644
index 00000000000..00887e8ba24
--- /dev/null
+++ b/docs/grid_model/img/dark_mode/current-limits.svg
@@ -0,0 +1,75 @@
+
+
+
+
+
diff --git a/docs/grid_model/img/dark_mode/dangling-line.svg b/docs/grid_model/img/dark_mode/dangling-line.svg
new file mode 100644
index 00000000000..38ba482d497
--- /dev/null
+++ b/docs/grid_model/img/dark_mode/dangling-line.svg
@@ -0,0 +1,306 @@
+
+
+
+
+
+
diff --git a/docs/grid_model/img/dark_mode/generator-sign-convention.svg b/docs/grid_model/img/dark_mode/generator-sign-convention.svg
new file mode 100644
index 00000000000..9394839a430
--- /dev/null
+++ b/docs/grid_model/img/dark_mode/generator-sign-convention.svg
@@ -0,0 +1,99 @@
+
+
+
\ No newline at end of file
diff --git a/docs/grid_model/img/dark_mode/line-model.svg b/docs/grid_model/img/dark_mode/line-model.svg
new file mode 100644
index 00000000000..a18e576da2f
--- /dev/null
+++ b/docs/grid_model/img/dark_mode/line-model.svg
@@ -0,0 +1,150 @@
+
+
diff --git a/docs/grid_model/img/dark_mode/three-winding-transformer-model.svg b/docs/grid_model/img/dark_mode/three-winding-transformer-model.svg
new file mode 100644
index 00000000000..89ffcd6b056
--- /dev/null
+++ b/docs/grid_model/img/dark_mode/three-winding-transformer-model.svg
@@ -0,0 +1,635 @@
+
+
diff --git a/docs/grid_model/img/dark_mode/two-winding-transformer-model.svg b/docs/grid_model/img/dark_mode/two-winding-transformer-model.svg
new file mode 100644
index 00000000000..2033c12be94
--- /dev/null
+++ b/docs/grid_model/img/dark_mode/two-winding-transformer-model.svg
@@ -0,0 +1,183 @@
+
+
diff --git a/docs/grid_model/img/dark_mode/voltage-level.svg b/docs/grid_model/img/dark_mode/voltage-level.svg
new file mode 100644
index 00000000000..904f506db7e
--- /dev/null
+++ b/docs/grid_model/img/dark_mode/voltage-level.svg
@@ -0,0 +1,613 @@
+
+
\ No newline at end of file
diff --git a/docs/grid_model/img/three-windings-transformer-model.svg b/docs/grid_model/img/three-winding-transformer-model.svg
similarity index 100%
rename from docs/grid_model/img/three-windings-transformer-model.svg
rename to docs/grid_model/img/three-winding-transformer-model.svg
diff --git a/docs/grid_model/img/two-windings-transformer-model.svg b/docs/grid_model/img/two-winding-transformer-model.svg
similarity index 100%
rename from docs/grid_model/img/two-windings-transformer-model.svg
rename to docs/grid_model/img/two-winding-transformer-model.svg
diff --git a/docs/grid_model/network_subnetwork.md b/docs/grid_model/network_subnetwork.md
index c28a691b299..44ae4455340 100644
--- a/docs/grid_model/network_subnetwork.md
+++ b/docs/grid_model/network_subnetwork.md
@@ -89,7 +89,8 @@ PowSyBl provides an integrated topology processor that allows to automatically o
The following diagram represents an example voltage level with two busbars separated by a circuit breaker, a transformer connected to one of them and three generators that can connect to any of the two busbars. The three topology levels are shown.
-![VoltageLevel](img/voltage-level.svg){width="100%" align=center}
+![VoltageLevel](img/voltage-level.svg){width="100%" align=center class="only-light"}
+![VoltageLevel](img/dark_mode/voltage-level.svg){width="100%" align=center class="only-dark"}
When defining the model, the user has to specify how the different equipment connect to the network. If the voltage level is built at node/breaker level, the user has to specify a `Node` when adding equipment to the model. If the user is building using bus/breaker level, the `Bus` of the equipment must be specified. Using this information, the model creates a `Terminal` that will be used to manage the point of connection of the equipment to the network.
@@ -154,7 +155,8 @@ which are then separated for AC and DC parts.
A generator is an equipment that injects or consumes active power, and injects or consumes reactive power. It may be used as a controller to hold a voltage or reactive target somewhere in the network, not necessarily directly where it is connected. In that specific case, the voltage or reactive power control is remote.
-![GeneratorSignConvention](img/generator-sign-convention.svg){width="40%" align=center}
+![GeneratorSignConvention](img/generator-sign-convention.svg){width="50%" align=center class="only-light"}
+![GeneratorSignConvention](img/dark_mode/generator-sign-convention.svg){width="50%" align=center class="only-dark"}
**Characteristics**
@@ -278,7 +280,8 @@ A battery on the electric grid is an energy storage device that is either capabl
A network may be connected to other networks for which a full description is not available or unwanted. In this case, a boundary line exists between the two networks. In the network of interest, that connection could be represented through a dangling line, which represents the part of that boundary line which is located in it. A dangling line is thus a passive or active component that aggregates a line chunk and a constant power injection, in passive-sign convention. The active and reactive power set points are fixed: the injection represents the power flow that would occur through the connection, were the other network fully described.
-![Dangling line model](img/danglingLine.svg){width="50%" align=center}
+![Dangling line model](img/dangling-line.svg){width="50%" align=center class="only-light"}
+![Dangling line model](img/dark_mode/dangling-line.svg){width="50%" align=center class="only-dark"}
A generation part, at boundary side can also be modeled, with a constant active power injection and a constant reactive power injection if the generation part of the dangling line is out of voltage regulation or a voltage target if the regulation is enabled. This fictitious generator can only regulate voltage locally: the regulating terminal can not be set, it is necessary the boundary side of the dangling line. Limits are modeled through $MinP$ and $MaxP$ for active power limits and through [reactive limits](./additional.md#reactive-limits). This generation part is optional. The generation part of the dangling line follows the classical generator sign convention.
@@ -462,7 +465,8 @@ In IIDM the static VAR compensator also comprises some metadata:
AC transmission lines are modeled using a standard $\pi$ model with distributed parameters. A `Line` is a `Branch`, that models equipment with two terminals (or two sides). For the time being, a branch is an AC equipment.
-![Line model](img/line-model.svg){width="50%" align=center}
+![Line model](img/line-model.svg){width="50%" align=center class="only-light"}
+![Line model](img/dark_mode/line-model.svg){width="50%" align=center class="only-dark"}
With series impedance $z$ and the shunt admittance on each side $y_1$ and $y_2$:
@@ -550,7 +554,8 @@ A tie line is not a connectable. It is just a container of two underlying dangli
A two windings power transformer is connected to two voltage levels (side 1 and side 2) that belong to a same substation.
Two windings transformers are modeled with the following equivalent $\Pi$ model:
-![Power line model](img/two-windings-transformer-model.svg){width="50%" align=center}
+![Power line model](img/two-winding-transformer-model.svg){width="50%" align=center class="only-light"}
+![Power line model](img/dark_mode/two-winding-transformer-model.svg){width="50%" align=center class="only-dark"}
With the series impedance $z$ and the shunt admittance $y$ and the voltage ratio $\rho$ and the angle difference $\alpha$ and potentially parameters from the current step of a [ratio tap changer](./additional.md#ratio-tap-changer) and/or a [phase tap changer](./additional.md#phase-tap-changer), we have:
@@ -625,13 +630,14 @@ same substation. We usually have:
A three windings transformer is modeled with three legs, where every leg model is electrically equivalent to a two windings transformer.
For each leg, the network bus is at side 1 and the star bus is at side 2.
-![Line model](img/three-windings-transformer-model.svg){width="50%" align=center}
+![Line model](img/three-winding-transformer-model.svg){width="50%" align=center class="only-light"}
+![Line model](img/dark_mode/three-winding-transformer-model.svg){width="50%" align=center class="only-dark"}
**Characteristics**
-| Attribute | Unit | Description |
-| --------- | ---- | ----------- |
-| $RatedU0$ | kV | The rated voltage at the star bus |
+| Attribute | Unit | Description |
+|-----------|------|-----------------------------------|
+| $RatedU0$ | kV | The rated voltage at the star bus |
**Specifications**