Musterseite verworfen, Zahnrad-Regression behoben, Fotomenue als Aktionsblatt

Musterseite entfernt (companion-app/muster, vite.muster.config.ts,
/config/www/dmmuster). Ansage des Eigentuemers: sie fuehrt nur zu neuen
Fehlerquellen. Ausloeser war ein Befund, den ich als App-Fehler gemeldet hatte
- Ringe und Typenschild schwarz auf schwarz - und der nur dort bestand.

Behoben:

* Das Zahnrad im Autohaus-Kasten hatte seine Ecke verlassen (58/288 statt
  8/8). Ursache war mein HIG-Durchgang von gestern: .zahnrad kam in die
  Gruppe fuer die 44x44-Trefferflaeche und bekam damit position:relative,
  was das absolute aus dem Basisblatt ueberschrieb. Die Auflage war
  ueberfluessig - .zahnrad ist dort schon 44x44.
* Das Fotomenue hing mit position:absolute an der Kachel statt am
  Bildschirm und lag bei der hohen Raeder-Kachel ausserhalb des Sichtfelds;
  einen Abbrechen-Knopf hatte es nie. Das Panel benutzt jetzt dasselbe
  Aktionsblatt wie die App. .bildmenu ist samt Zustand, Markup, totem
  Handler und CSS entfernt.
* Der Blattkopf las sich als dritte Auswahl (linksbuendig, 15px, --fg).
  Jetzt zentriert, 13px, gedaempft - Apples Muster, in beiden Codebasen.
* "Anstehende Termine" stand 5px ueber "Oelwechsel" und wirkte als dessen
  Beischrift. Entfernt.
* Wartungsplan-Formular: Art nach oben, Datum 124px statt Browser-Vorgabe,
  Werkstatt ueber die volle Zeile (218 -> 306px), Kosten 116px. Zwei
  Erklaertexte entfernt.
* Thema folgt jetzt einer Systemumstellung im laufenden Betrieb. Vorher las
  es prefers-color-scheme genau einmal beim Laden. Drei Tests, die ohne die
  Behebung nachweislich fallen.

Geprueft: 295 App-Tests, Panel node --check, 0 Tracebacks, alle Aenderungen
live an der Testinstanz gemessen.

Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
2026-09-05 02:24:08 +02:00
co-authored by Claude Opus 5
parent 863284e540
commit e9c16325cc
16 changed files with 2674 additions and 2467 deletions
@@ -808,6 +808,18 @@ img.carfix.klein { aspect-ratio: auto; height: auto; }
.mitEinheit input { min-width: 0; width: 96px; text-align: right; }
.mitEinheit span:last-child { font-size: 13px; color: var(--fg2); }
.druckfeld { width: 58px !important; min-width: 0 !important; }
/* Feldbreiten nach dem, was drinsteht, statt nach dem Browser-Standardwert.
Ohne diese Klassen bekommt jedes Textfeld dieselbe intrinsische Breite
(~170-190px, Safaris Vorgabe ohne size-Attribut) - unabhaengig vom Inhalt.
Im Wartungsplan hiess das: "01.03.2025" schwamm in einem viel zu breiten
Feld, waehrend ein Werkstattname im selben Mass abgeschnitten wurde
(gemeldet am 05.09.2026). Die Breiten sind an ihrem laengsten erwarteten
Inhalt gemessen ("01.03.2025" bzw. "1234,56"). Der Werkstattname passt in
keine Spalte neben einem Label und steht deshalb in einer .feld--breit-Zeile
ueber die ganze Breite. */
.feld input.w-datum { width: 124px; flex: 0 0 auto; }
.mitEinheit input.w-betrag { width: 116px; }
.notiz { width: 100%; text-align: left; margin-top: 14px; line-height: 1.55; resize: vertical; }
.switch { position: relative; display: inline-block; flex-shrink: 0; width: 46px; height: 27px; }
@@ -1319,34 +1331,9 @@ img.carfix.klein { aspect-ratio: auto; height: auto; }
background: rgba(0,0,0,.45);
animation: sheet-fade .18s ease-out;
}
.bildmenu {
position: absolute; z-index: 1001;
left: 10px; right: 10px;
bottom: max(10px, env(safe-area-inset-bottom));
top: auto;
transform: none;
background: var(--tile-deckend, var(--canvas));
border-radius: 16px;
overflow: hidden;
padding: 0;
display: flex; flex-direction: column;
animation: sheet-rein .24s cubic-bezier(.22,.61,.36,1);
}
/* Die beiden Lage-Varianten sind gegenstandslos geworden - ein Blatt
kommt immer von unten. Die Klassen bleiben im Markup stehen, damit die
Aufrufstellen unberührt bleiben; hier tragen sie nichts mehr bei. */
.bildmenu.rad, .bildmenu.ansicht { left: 10px; right: 10px; top: auto; transform: none; }
.bildmenu button {
display: block; width: 100%; text-align: left;
background: none; border: none;
color: var(--fg); font-family: inherit; font-size: 16px;
padding: 16px 18px; min-height: 52px; border-radius: 0;
border-bottom: 1px solid var(--line);
cursor: pointer;
}
.bildmenu button:last-child { border-bottom: none; }
.bildmenu button:active { background: var(--shade); }
.bildmenu button.loeschen { color: var(--bad); }
/* .bildmenu ist am 05.09.2026 entfallen: das Fotomenue laeuft jetzt ueber
das Aktionsblatt (aktionsblatt() in audi-dashboard-app.js), wie in der
App. .bildmenu-catcher bleibt - den benutzt das SmartDeal-Blatt. */
/* Formularblatt (siehe Kasten oben): unten angeschlagen, nur oben rund,
blickdicht. Stand vorher als Karte 60px unter dem oberen Rand - ausser
@@ -1486,12 +1473,22 @@ img.carfix.klein { aspect-ratio: auto; height: auto; }
overflow: hidden;
display: flex; flex-direction: column;
}
/* Der Kopf eines Aktionsblatts ist eine Aufschrift, keine Wahl.
Er stand linksbuendig, 15px, in --fg - also fast genau wie die Knopfzeilen
darunter, nur eine Haarlinie davon getrennt. Beim Radfoto ("Sommerrad")
las der Eigentuemer ihn deshalb als dritte Auswahl (gemeldet 05.09.2026).
Apples Aktionsblatt setzt den Titel zentriert, kleiner und in der
gedaempften Farbe - dieselben drei Unterschiede, die ihn hier wieder als
Überschrift lesbar machen. */
.sheet-kopf {
padding: 15px 18px 14px;
padding: 14px 18px 12px;
border-bottom: 1px solid var(--line);
display: flex; flex-direction: column; gap: 4px;
display: flex; flex-direction: column; align-items: center;
text-align: center; gap: 4px;
}
.sheet-kopf strong { font-size: 15px; font-weight: 400; color: var(--fg); }
.sheet-kopf strong { font-size: 13px; font-weight: 600; color: var(--fg2); }
.sheet-kopf span { font-size: 13px; color: var(--fg2); line-height: 1.45; }
.sheet-gruppe button {
background: none; border: none;