Ortsnamen aus dem Backend, Verbrauchsfaktor aus dem Tankbeleg, Radzaehler ueber Fahrten
Ortsauflösung serverseitig (geokodierung.py): der Ort steht jetzt in der Fahrt statt im Zwischenspeicher jedes Geräts. Beide Oberflächen fragen nichts mehr ab. Verbrauchskorrektur (verbrauchskorrektur.py): Faktor = Beleg-Liter / Summe der Einzelfahrten, voll zu voll. Statt einer Schranke am Faktor wird der Nenner geprüft - decken die erkannten Fahrten 90-110 % der Tacho-Spanne ab? Ausgelöst beim Schreiben eines Tankvorgangs, nicht erst bei der nächsten Fahrt. Radzähler: summiert die Fahrten des montierten Satzes statt Tacho-Deltas. Der alte Weg hatte Fahrzeugwechsel als gefahrene Strecke verbucht (375.962 km bei einem Tacho von 61.823). Null heißt unbekannt: ein Kilometerstand von 0 oder ein leeres Feld werden zu None normalisiert, statt an sechs Lesestellen als "Tachostand null" zu gelten. Momentanwerte der Sensoren gelten nur für einen Tankvorgang von jetzt. Oberfläche, beide Codebasen: Wertespalte der Fahrtenliste ausgerichtet, Ort -> Ort in "Zuletzt", "Räder" statt "Reifen", "Termin vereinbart" entfernt, Markenlogo 20 % größer, Übersicht-Symbol auf volle Rasterbreite. Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
@@ -459,14 +459,26 @@ button.sicherheitszeile:active { background: var(--tile-2); }
|
||||
border-bottom: 1px solid var(--line);
|
||||
color: inherit;
|
||||
}
|
||||
.leaf .k { font-size: 14px; color: var(--fg); display: flex; flex-direction: column; gap: 3px; line-height: 1.35; }
|
||||
/* Das Label nimmt den freien Platz und kuerzt bei Bedarf mit Auslassung.
|
||||
|
||||
Ohne flex:1 blieb in der Zeile freier Raum, und weil sie DREI Kinder hat
|
||||
(Label, Werte, Pfeil), verteilte space-between ihn ZWISCHEN alle drei - die
|
||||
Wertespalte stand damit in der Mitte, ihre Lage abhaengig von der Laenge des
|
||||
Ortsnamens. Gemessen: rechte Kante bei 549px in der einen Zeile, 520px in
|
||||
der naechsten. Mit flex:1 bleibt kein freier Raum uebrig, Werte und Pfeil
|
||||
sitzen buendig rechts.
|
||||
|
||||
min-width:0 ist noetig, damit ein Flex-Kind ueberhaupt unter seine
|
||||
Inhaltsbreite schrumpfen darf - ohne das greift text-overflow nie. */
|
||||
.leaf .k { font-size: 14px; color: var(--fg); display: flex; flex-direction: column; gap: 3px; line-height: 1.35; flex: 1 1 auto; min-width: 0; }
|
||||
.leaf .k > * { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
|
||||
.leaf .k small { font-size: 12.5px; color: var(--fg3); }
|
||||
/* Feste Mindestbreite, damit Strecke und Verbrauch ueber alle Zeilen hinweg
|
||||
in einer Spalte stehen. Ohne sie waechst der Kasten mit dem Inhalt: gemessen
|
||||
86px bei "11,4 l/100 km" gegen 37px bei einer Zeile ohne Werte, und die
|
||||
Zahlen standen entsprechend versetzt. 92px traegt die laengste Form
|
||||
("11,4 l/100 km") ohne Umbruch. */
|
||||
.leaf .v { font-size: 13px; color: var(--fg2); text-align: right; display: flex; flex-direction: column; gap: 3px; flex: 0 0 auto; min-width: 92px; }
|
||||
.leaf .v { font-size: 13px; color: var(--fg2); text-align: right; display: flex; flex-direction: column; gap: 3px; flex: 0 0 92px; }
|
||||
.leaf .v small { font-size: 12.5px; color: var(--fg3); }
|
||||
/* .teaser (die "Zuletzt"-Kachel auf der Übersicht, teaser()): genau zwei
|
||||
Zeilen mit sehr unterschiedlich breiten Werten ("offen" vs. "51,59 l") -
|
||||
@@ -665,9 +677,10 @@ img.carfix.klein { aspect-ratio: auto; height: auto; }
|
||||
|
||||
.marke { display: inline-flex; align-items: center; gap: 6px; }
|
||||
.marke-logo { display: inline-flex; align-items: center; }
|
||||
/* Auf Zeilenhoehe (16px) statt 13px: das Markenlogo stand neben Text
|
||||
derselben Zeile und wirkte daneben zu klein. */
|
||||
.marke-logo img { height: 16px; width: auto; }
|
||||
/* 19,2px = 16px + 20%. Der Eigentuemer wollte das Markenlogo in JEDER
|
||||
Darstellung um ein Fuenftel groesser; es steht ueberall neben Text der
|
||||
Zeilenhoehe 16px, also hier eine Zahl statt mehrerer Sondergroessen. */
|
||||
.marke-logo img { height: 19.2px; width: auto; }
|
||||
.marke-logo .ph { display: none; font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: var(--fg3); }
|
||||
.marke-logo.logo-fehlt img { display: none; }
|
||||
.marke-logo.logo-fehlt .ph { display: inline; }
|
||||
|
||||
Reference in New Issue
Block a user