aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/java/eu/mulk/aendggner/synopse/HtmlRenderer.java51
-rw-r--r--src/main/resources/eu/mulk/aendggner/web/style.css24
2 files changed, 47 insertions, 28 deletions
diff --git a/src/main/java/eu/mulk/aendggner/synopse/HtmlRenderer.java b/src/main/java/eu/mulk/aendggner/synopse/HtmlRenderer.java
index 84446c1..69ec7aa 100644
--- a/src/main/java/eu/mulk/aendggner/synopse/HtmlRenderer.java
+++ b/src/main/java/eu/mulk/aendggner/synopse/HtmlRenderer.java
@@ -206,16 +206,20 @@ public final class HtmlRenderer {
private static final String CSS =
"""
- /* Schwarz auf Papier wie ein Gesetzblatt. Streichung und Einfügung unterscheiden
- sich deshalb nicht durch Farbe, sondern durch Form: durchgestrichen gegen
- unterstrichen, dazu die Spalte, in der sie stehen. */
+ /* Grundgerüst schwarzweiß wie ein Gesetzblatt; Farbe trägt allein die Änderung:
+ rot heißt weg, grün heißt hinzu. Damit die Aussage auch im Schwarzweiß-Ausdruck
+ und bei Farbfehlsichtigkeit erhalten bleibt, tritt zur Farbe stets die Form —
+ durchgestrichen gegen unterstrichen — sowie die Spalte, in der sie steht. */
:root {
color-scheme: light dark;
--fg: #111;
--bg: #fff;
--rand: #bbb;
--dezent: #595959;
- --hinterlegung: #ececec;
+ --del-bg: #ffd7d7;
+ --del-fg: #8b0000;
+ --ins-bg: #d7f5d7;
+ --ins-fg: #005f00;
}
@media (prefers-color-scheme: dark) {
:root {
@@ -223,7 +227,10 @@ public final class HtmlRenderer {
--bg: #141414;
--rand: #4a4a4a;
--dezent: #a0a0a0;
- --hinterlegung: #333;
+ --del-bg: #5a1f1f;
+ --del-fg: #ffb3b3;
+ --ins-bg: #1f4a1f;
+ --ins-fg: #b3ffb3;
}
}
body {
@@ -240,7 +247,7 @@ public final class HtmlRenderer {
.quelle, .statistik, .gliederung, .ursachen { color: var(--dezent); font-size: 0.9rem; }
.entwurfshinweis {
border: 1px solid var(--rand);
- border-left: 4px solid var(--fg);
+ border-left: 4px solid var(--del-fg);
padding: 0.5rem 0.75rem;
margin: 0.6rem 0;
font-size: 0.95rem;
@@ -270,41 +277,43 @@ public final class HtmlRenderer {
font-size: 0.95rem;
}
del, .alt del {
- background: var(--hinterlegung);
- color: inherit;
+ background: var(--del-bg);
+ color: var(--del-fg);
text-decoration: line-through;
}
ins, .neu ins {
- background: var(--hinterlegung);
- color: inherit;
+ background: var(--ins-bg);
+ color: var(--ins-fg);
text-decoration: underline;
}
.leer { color: var(--dezent); font-style: italic; }
- /* Gerahmte Kästchen in Versalien; die drei Arten trennt die Form, nicht die Farbe.
- Beschriftet sind sie ohnehin. */
+ /* Kästchen in Versalien; die Farbe folgt derselben Regel wie im Diff. Beschriftet
+ sind sie ohnehin, sodass die Farbe hier nur bestätigt, was dasteht. */
.badge {
font-family: system-ui, sans-serif;
font-size: 0.7rem;
font-weight: normal;
text-transform: uppercase;
letter-spacing: 0.06em;
- border: 1px solid var(--rand);
- color: var(--dezent);
+ border: 1px solid transparent;
padding: 0.1rem 0.55rem;
vertical-align: middle;
}
- .neu-badge { background: var(--fg); color: var(--bg); border-color: var(--fg); }
- .aufgehoben-badge { text-decoration: line-through; }
- /* .geaendert-badge trägt bereits den schlichten Rahmen aus .badge. */
+ .neu-badge { background: var(--ins-bg); color: var(--ins-fg); }
+ .aufgehoben-badge { background: var(--del-bg); color: var(--del-fg); }
+ .geaendert-badge { border-color: var(--rand); color: var(--dezent); }
section.manuell { margin-top: 2rem; }
section.manuell li { margin-bottom: 0.7rem; }
.originaltext { color: var(--dezent); font-size: 0.85rem; }
@media print {
.vergleich { break-inside: avoid; }
- /* Ohne diese Festlegung wirft der Druck die Hinterlegung weg; Durchstreichung
- und Unterstreichung überstehen ihn ohnehin. */
- :root { --hinterlegung: #e4e4e4; }
- del, ins, .neu-badge { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
+ /* Ohne diese Festlegung wirft der Druck die Hinterlegung weg. Durchstreichung
+ und Unterstreichung überstehen ihn ohnehin und tragen die Aussage auch dort,
+ wo schwarzweiß gedruckt wird. */
+ del, ins, .badge, .entwurfshinweis {
+ -webkit-print-color-adjust: exact;
+ print-color-adjust: exact;
+ }
}
""";
}
diff --git a/src/main/resources/eu/mulk/aendggner/web/style.css b/src/main/resources/eu/mulk/aendggner/web/style.css
index d770551..c872cbe 100644
--- a/src/main/resources/eu/mulk/aendggner/web/style.css
+++ b/src/main/resources/eu/mulk/aendggner/web/style.css
@@ -1,10 +1,15 @@
-/* Schwarz auf Papier wie ein Gesetzblatt: keine Buntheit, nur Graustufen. */
+/* Schwarz auf Papier wie ein Gesetzblatt. Farbe tritt allein an den Balken der
+ Hinweiskästen auf und meint dort dasselbe wie in der Synopse: rot warnt, grün
+ bestätigt. Die Kästen bleiben auch ohne den Balken lesbar; er hebt sie hervor,
+ er trägt nicht allein. */
:root {
color-scheme: light dark;
--fg: #111;
--bg: #fff;
--muted: #595959;
--border: #bbb;
+ --warnung: #8b0000;
+ --bestaetigung: #005f00;
}
@media (prefers-color-scheme: dark) {
@@ -13,6 +18,8 @@
--bg: #141414;
--muted: #a0a0a0;
--border: #4a4a4a;
+ --warnung: #ffb3b3;
+ --bestaetigung: #b3ffb3;
}
}
@@ -114,11 +121,11 @@ button:hover {
color: var(--fg);
}
-/* Warnung ohne Rot: der doppelt starke Rahmen trägt das Gewicht. */
.noscript {
margin: 0 0 2rem;
padding: 1rem;
- border: 2px solid var(--fg);
+ border: 1px solid var(--border);
+ border-left: 4px solid var(--warnung);
font-size: 0.875rem;
}
@@ -184,12 +191,15 @@ footer a {
font-size: 0.8125rem;
}
-/* Die drei Zustände unterscheiden sich ohne Farbe: matter Text, kräftiger Rahmen,
- doppelt starker Rahmen mit Fettung. */
+/* Der Balken links zeigt den Zustand an; der Text benennt ihn ohnehin, sodass die
+ Meldung auch ohne Farbe verständlich bleibt. Während der Arbeit steht kein Balken,
+ weil noch nichts feststeht. */
.meldung {
margin-top: 1.25rem;
padding: 0.75rem 1rem;
border: 1px solid var(--border);
+ border-left-width: 4px;
+ border-left-color: var(--border);
font-size: 0.9375rem;
}
@@ -198,11 +208,11 @@ footer a {
}
.meldung.fertig {
- border-color: var(--fg);
+ border-left-color: var(--bestaetigung);
}
.meldung.fehler {
- border: 2px solid var(--fg);
+ border-left-color: var(--warnung);
font-weight: bold;
}