Meldungen entschlackt, Bild-Modalbox, neues Muster, kleinere Trade-Schrift, M15 eingeklappt (v=207)
Fuenf User-Vorgaben in einem Durchgang.
(1) HYPERLIQUID + MUSTER + TRAILING AUS DER MELDUNGEN-KARTE. Die drei Divs sind
ENTFERNT, nicht nur versteckt; die Render-Bloecke bleiben stehen (null-sicher),
damit ein Zurueckholen eine reine HTML-Aenderung ist. Backend rechnet
unveraendert weiter (hl_ctx, patterns_tf, trail_info stehen im Snapshot).
Stufe F bekam eine dokumentierte Ausnahmeliste - sonst haette sie drei
Dauer-Treffer gemeldet, und eine Pruefung mit Dauer-Treffern wird ignoriert.
⚠⚠ DABEI ZWEI ECHTE ABSTUERZE GEFUNDEN - und der Weg dahin ist der Punkt.
`hl-note` wurde ueber das Auffang-`$` geholt; nach dem Entfernen des Elements
griffen ZWEI Zweige ungeschuetzt auf `hlEl.classList` zu. Im Browser ein
TypeError mitten im Render = das GESAMTE Dashboard friert auf Altwerten ein.
Die Render-Probe blieb zunaechst GRUEN - ihr eigener blinder Fleck: die
DOM-Attrappe lieferte fuer JEDE ID ein Element, `$streng` konnte darin also NIE
`null` zurueckgeben. Genau der Fall, fuer den es `$streng` gibt, war ungeprueft.
Behoben: die Attrappe kennt jetzt die echten IDs aus index.html
(`getElementById: id => HTML_IDS.has(id) ? el() : null`) - und meldete die
beiden Zweige im selben Lauf. Danach beide Waechter ergaenzt.
(2) BILD-MODALBOX. Klick auf ein Chartmuster oeffnet es gross.
⚠⚠ BEWUSST OHNE BIBLIOTHEK: ein Lightbox-Paket waere 15-40 KB plus ein zweites
Bedienkonzept fuer ~30 Zeilen Code. Das Dashboard laeuft nur ueber WireGuard,
ein CDN ist gar nicht erreichbar; das Projekt hat aus demselben Grund Tailwind
abgelehnt und am 05.08. die vendorte lightweight-charts (164 KB) entfernt.
Delegierter Klick auf `document`, weil die Kacheln bei JEDEM Render neu erzeugt
werden - ein Handler am <img> waere nach dem naechsten Snapshot weg.
Grosse Fassung (1408 px, ~133 KB) liegt getrennt unter muster/gross/ und wird
ERST beim Klick geladen; die Kachel bleibt bei 25 KB. Esc und Klick auf den
Hintergrund schliessen.
(3) NEUES BILD gescannt: "Inverse Tasse+Henkel.jpg". `inv_cup` hatte bis dahin
ausdruecklich KEIN Bild ("lieber keins als ein falsches") - jetzt zugeordnet.
Damit 16 Muster, keins ohne Datei, keine Datei ohne Zuordnung.
(4) SCHRIFT IN DER TRADE-LEISTE um 2 px (bezogen auf die 18-px-Referenz)
verkleinert - 4 Regeln: Ueberschrift, Feldbeschriftungen, Werte/Eingaben,
Knoepfe.
⚠ Erster Versuch nahm alles zwischen `.tb-title{` und `.mg-row` und traf 80
Regeln statt 4 - die halbe Oberflaeche. Zurueckgesetzt und namentlich
aufgezaehlt. Ein Zeilenbereich ist kein Selektor.
(5) M15-KARTE PER DEFAULT EINGEKLAPPT. Das `open` am ersten <details> ist weg.
⚠ Zusaetzlich der localStorage-Schluessel gebumpt (oil_m15_akk -> oil_m15_akk2):
bei jedem, der die Karte je aufgeklappt hatte, stand dort `true`, und das
gewinnt gegen den neuen Default. Ein neuer Schluessel setzt genau EINMAL
zurueck; danach merkt sich die Karte die eigene Wahl wie bisher.
Pipeline A-G gruen, 97 Tests, 14 render*-Funktionen (Fixture UND leerer
Snapshot), deployt und am ausgelieferten HTML/JS verifiziert.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
06024dd0c1
commit
71abb49cf7
+22
-4
@@ -215,7 +215,7 @@ main{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
|
||||
.trade-bar{padding:0.4444rem 0.6667rem;border-color:#2d4a2d}
|
||||
.trade-bar.hidden{display:none}
|
||||
#card-trail.hidden{display:none} /* Trailing-Kachel ausgeblendet, 2026-07-22 */
|
||||
.tb-title{margin:0 0 0.4444rem;font-size:0.7778rem;letter-spacing:1.5px;text-transform:uppercase;
|
||||
.tb-title{margin:0 0 0.4444rem;font-size:0.6667rem;letter-spacing:1.5px;text-transform:uppercase;
|
||||
color:var(--dim);font-weight:600}
|
||||
/* Laufzeit-Uhr: im Titel mitlaufend (kompakt) + eigenes Feld in der Zeile */
|
||||
.tb-runtime{margin-left:0.4444rem;color:var(--bright);font-family:var(--mono);
|
||||
@@ -225,7 +225,7 @@ main{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
|
||||
/* EINHEITLICHES Feld-Design: Anzeige-Boxen (Richtung/Lots/Einsatz) und Eingabe-
|
||||
Felder (SL/TP/Gewinn-Close/Notfall-Close) sehen identisch aus (Label über Box). */
|
||||
.tb-field{display:flex;flex-direction:column;gap:2px}
|
||||
.tb-field label{font-size:0.7222rem;color:var(--dim);letter-spacing:.5px}
|
||||
.tb-field label{font-size:0.6111rem;color:var(--dim);letter-spacing:.5px}
|
||||
/* ⚠ Feste 88px waren zu schmal (User 2026-08-19: „das Einsatz-Feld ist nicht
|
||||
breit genug"). Der Einsatz zeigt Betraege wie „712.84 €" — bei fett und
|
||||
0,94rem passt das nicht in 88px. `ch` = Breite einer Ziffer, haengt also
|
||||
@@ -236,7 +236,7 @@ main{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
|
||||
/* ⚠ font-weight 700 -> 400 (User-Wunsch 2026-08-20): alle Felder der
|
||||
Trade-Leiste normal, nicht fett — Eingaben UND Anzeige-Boxen, damit
|
||||
die Leiste einheitlich bleibt. */
|
||||
font-size:0.9444rem;font-weight:400;padding:0.3333rem 0.3889rem;text-align:center;
|
||||
font-size:0.8333rem;font-weight:400;padding:0.3333rem 0.3889rem;text-align:center;
|
||||
transition:border-color .15s, box-shadow .15s}
|
||||
.tb-field .tb-val{display:block;white-space:nowrap}
|
||||
.tb-field input{width:8ch} /* Eingaben: feste, aber mitskalierende Basis */ /* nur Anzeige, kein Input */
|
||||
@@ -253,7 +253,7 @@ main{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
|
||||
/* ── Gesamtempfehlung ───────────────────── */
|
||||
/* Circuit Breaker Banner (Tagesverlust-Stopp) — ganz oben, rot bei ausgelöst */
|
||||
.circuit{margin:0 0 0.6111rem;padding:0.6111rem 0.7778rem;border-radius:var(--r);font-weight:700;
|
||||
font-size:0.8889rem;text-align:center;letter-spacing:.2px}
|
||||
font-size:0.7778rem;text-align:center;letter-spacing:.2px}
|
||||
.circuit.hidden{display:none}
|
||||
.circuit.tripped{background:#3d1a1a;color:#ff6b6b;border:1px solid var(--down);
|
||||
box-shadow:0 0 0 1px var(--down)}
|
||||
@@ -734,3 +734,21 @@ main{padding-bottom:4.1111rem} /* Platz für die fixe Leiste */
|
||||
justify-content:center; font-size:0.6667rem; color:var(--dim)}
|
||||
.pt-tfname{font-size:0.7778rem; font-weight:600; line-height:1.2}
|
||||
.pt-tfst{font-size:0.6667rem; color:var(--dim); font-family:var(--mono)}
|
||||
|
||||
/* ── Bild-Modalbox fuer die Chartmuster (User 2026-08-20) ──────────────────
|
||||
⚠ Ohne Bibliothek, s. Begruendung im Markup. `dvh` statt `vh`, damit die
|
||||
Adressleiste am Handy die Box nicht abschneidet; `vh` als Rueckfall zuerst. */
|
||||
.bildbox{position:fixed; inset:0; z-index:60; display:flex;
|
||||
align-items:center; justify-content:center; padding:0.8889rem;
|
||||
background:#000000e6; cursor:zoom-out}
|
||||
.bildbox.hidden{display:none}
|
||||
.bildbox-inner{margin:0; max-width:100%; cursor:default; text-align:center}
|
||||
.bildbox-inner img{max-width:100%; max-height:80vh; max-height:80dvh;
|
||||
border-radius:var(--r); display:block; background:#0d1117}
|
||||
.bildbox-inner figcaption{margin-top:0.4444rem; color:var(--dim);
|
||||
font-size:0.7778rem; font-family:var(--mono)}
|
||||
.bildbox-zu{position:absolute; top:0.6667rem; right:0.8889rem; z-index:61;
|
||||
background:var(--surface-2); border:1px solid var(--border);
|
||||
border-radius:var(--r-sm); color:var(--bright); cursor:pointer;
|
||||
font-size:1.1111rem; line-height:1; padding:0.3333rem 0.5556rem}
|
||||
.pt-img[data-bild]{cursor:zoom-in}
|
||||
|
||||
Reference in New Issue
Block a user