diff --git a/css/solar.css b/css/solar.css
index bd45463..85178c8 100644
--- a/css/solar.css
+++ b/css/solar.css
@@ -2955,6 +2955,11 @@ input[type='range']::-webkit-slider-runnable-track {
color: var(--ton-schrift-3, #6f7a81);
}
.zl-ding.nichtdran .zl-etikett b { color: var(--ton-schrift-3, #6f7a81); }
+.zl-nichtdran {
+ margin-right: .35rem;
+ font-size: .72rem;
+ color: var(--ton-schrift-2, #9aa6ad);
+}
/* Zeitfenster: der Balken traegt Laeufe und die frueheste Marke. */
.zl-fenster { min-width: 10px; }
diff --git a/js/solar/zeitleiste.js b/js/solar/zeitleiste.js
index 9fbdf5f..fbeee91 100644
--- a/js/solar/zeitleiste.js
+++ b/js/solar/zeitleiste.js
@@ -110,7 +110,7 @@ function zlStapeln(eintraege, breite) {
const alle = eintraege.map(a => {
const [von, bis] = zlLage(a);
const etikett = zlEtikettText(a);
- const lang = zlBreite(etikett) + 26;
+ const lang = zlBreite(etikett) + 26 + (a.dran ? 0 : 16); // Platz fürs Zeichen "nicht dran"
let links = px(von) - 8;
let rechts = a.art === "fenster" ? Math.max(px(bis), px(von) + lang) : px(von) + lang;
const ueber = px(von) + lang > breite - 4;
@@ -306,7 +306,7 @@ function zeitleisteZeichnen() {
+ 'kommt noch'
+ 'Zeitfenster, wartet auf Bedingung'
+ 'Kette'
- + 'an diesem Tag nicht dran'
+ + 'an diesem Tag nicht dran'
+ "";
ziel.innerHTML = html;
@@ -336,15 +336,18 @@ function zlEintrag(e, d, prozent) {
const lauf = zustand !== "gelaufen" ? ""
: ' ' + (a.art === "fenster" ? '' + zlText(a.laeufe[a.laeufe.length - 1]) + "" : "");
const kappe = e.kappe ? ' style="max-width:' + Math.round(e.kappe) + "px" + (e.versatz ? ";margin-left:" + Math.round(e.versatz) + "px" : "") + '"' : "";
- const etikett = '"
+ // "Nicht dran" hat ein eigenes Zeichen vorn im Etikett - bei Punkt und
+ // Fenster dasselbe, und dasselbe wie in der Legende.
+ const nichtdran = zustand === "nichtdran" ? '' : "";
+ const etikett = '" + nichtdran + ""
+ zlText(zlEtikettZeit(a)) + "" + zlText(a.name) + lauf + "";
if (a.art === "fenster") {
- // Läufe und die früheste Marke als Punkte auf dem Balken.
+ // Läufe als Punkte auf dem Balken. Der früheste Zeitpunkt im Fenster
+ // (etwa Sonnenuntergang + 30) bekommt keine Marke mehr: sie lag meist
+ // unter dem Etikett und sah dort wie ein Zustandszeichen aus. Er steht
+ // im Hinweis ("frühestens 19:01").
let marken = "";
- if (a.punkt !== null && a.punkt > a.von && !a.laeufe.length) {
- marken += '';
- }
a.laeufe.forEach(t => {
const m = zlMinuteAus(t);
marken += '';