#33943·evcc

Session UI: Text overflow within card boundaries

Author: TobiasHuber1980Created Sep 22, 2026Updated Sep 22, 2026
Labelsux

Describe the bug

the vehicle name labels and their corresponding energy values/percentages are not properly contained at Preis je Fahrzeug and Kosten je Fahrzeug and Energie je Fahreug.

ImageImageImage

Steps to reproduce

If needed, I can provide the sessions.csv

Configuration details

yaml
## Configuration (UI)


{
  "charger": [
    {"id":72,"name":"db:72","type":"template","config":{"template":"braiins","dailyReset":"true","decreaseStepInterval":"5m","intelligentDecrease":"true","maxPower":2760,"minDecreaseDuration":"15m","password":"***","powerTargetStep":"300","uri":"***","user":"***"},"deviceDisable":true,"deviceProduct":"Braiins Bitcoin Miner"},
    {"id":76,"name":"db:76","type":"template","config":{"template":"braiins","dailyReset":"true","decreaseStepInterval":"5m","intelligentDecrease":true,"maxPower":2760,"minDecreaseDuration":"15m","password":"***","powerTargetStep":"300","uri":"***","user":"***"},"deviceDisable":true,"deviceProduct":"Braiins Bitcoin Miner"},
    {"id":78,"name":"db:78","type":"template","config":{"template":"braiins","dailyReset":"true","decreaseStepInterval":"5m","intelligentDecrease":true,"maxPower":2760,"minDecreaseDuration":"15m","password":"***","powerTargetStep":"300","uri":"***","user":"***"},"deviceDisable":true,"deviceProduct":"Braiins Bitcoin Miner"},
    {"id":1,"name":"db:1","type":"template","config":{"id":255,"template":"keba-modbus","host":"192.168.1.21","modbus":"tcpip","welcomecharge":true}},
    {"id":2,"name":"db:2","type":"template","config":{"id":255,"template":"keba-modbus","host":"192.168.1.29","modbus":"tcpip","welcomecharge":true}},
    {"id":92,"name":"db:92","type":"template","config":{"id":255,"template":"keba-modbus","baudrate":9600,"comset":"8N1","host":"192.168.1.33","modbus":"tcpip","port":502,"welcomecharge":true},"deviceProduct":"KEBA KeContact P30 C-Series"},
    {"id":90,"name":"db:90","type":"template","config":{"id":255,"template":"keba-modbus","baudrate":9600,"comset":"8N1","host":"192.168.1.31","modbus":"tcpip","port":502,"welcomecharge":true},"deviceProduct":"KEBA KeContact P30 X-Series"},
    {"id":110,"name":"db:110","type":"custom","config":{"yaml":"type: template
template: braiins-s19kpro
uri: http://192.168.1.44
password: xxx
maxPower: 2760"}},
    {"id":105,"name":"db:105","type":"custom","config":{"yaml":"type: template
template: braiins-s19kpro
uri: http://192.168.1.42
password: xxx
maxPower: 2760"}},
    {"id":108,"name":"db:108","type":"custom","config":{"yaml":"type: template
template: braiins-s19kpro
uri: http://192.168.1.43
password: xxx
maxPower: 2760"}}
  ],
  "circuits": "- name: main
  title: Hauptstromkreis
  maxPower: 30000
  meter: db:104
  parent:
- name: loadpoints
  parent: main",
  "experimental": true,
  "influx": {"database":"","insecure":false,"org":"","password":"","token":"","url":"","user":""},
  "interval": 7,
  "loadpoints": [
    {"id":60,"name":"db:60","alwaysCharge":"off","batteryBoostLimit":0,"charger":"db:1","circuit":"loadpoints","defaultMode":"smart","limitEnergy":0,"limitSoc":0,"maxCurrent":32,"minCurrent":6,"minSoc":0,"phasesConfigured":3,"planEnergy":0,"planPrecondition":0,"planStrategy":{"continuous":false,"precondition":0},"planTime":"0001-01-01T00:00:00Z","priority":0,"smartCostLimit":null,"smartFeedInPriorityLimit":null,"soc":{"estimate":true,"poll":{"interval":900000000000,"mode":"charging"}},"solarShare":1,"thresholds":{"disable":{"delay":180000000000,"threshold":500},"enable":{"delay":60000000000,"threshold":0}},"title":"expert links","ui":{"maxTemp":0,"minTemp":0}},
    {"id":61,"name":"db:61","alwaysCharge":"off","batteryBoostLimit":0,"charger":"db:2","circuit":"loadpoints","defaultMode":"smart","limitEnergy":0,"limitSoc":0,"maxCurrent":32,"minCurrent":6,"minSoc":0,"phasesConfigured":3,"planEnergy":0,"planPrecondition":0,"planStrategy":{"continuous":false,"precondition":0},"planTime":"0001-01-01T00:00:00Z","priority":0,"smartCostLimit":null,"smartFeedInPriorityLimit":null,"soc":{"estimate":true,"poll":{"interval":900000000000,"mode":"charging"}},"solarShare":1,"thresholds":{"disable":{"delay":180000000000,"threshold":500},"enable":{"delay":60000000000,"threshold":0}},"title":"expert rechts","ui":{"maxTemp":0,"minTemp":0}},
    {"id":73,"name":"db:73","alwaysCharge":"","batteryBoostLimit":0,"charger":"db:72","circuit":"main","defaultMode":"smart","disable":true,"limitEnergy":0,"limitSoc":0,"maxCurrent":13.5,"minCurrent":3.3,"minSoc":0,"phasesConfigured":1,"planEnergy":0,"planPrecondition":0,"planStrategy":{"continuous":false,"precondition":0},"planTime":"0001-01-01T00:00:00Z","priority":5,"smartCostLimit":null,"smartFeedInPriorityLimit":null,"soc":{"estimate":true,"poll":{"interval":3600000000000,"mode":"charging"}},"solarShare":1,"thresholds":{"disable":{"delay":300000000000,"threshold":2000},"enable":{"delay":60000000000,"threshold":-2000}},"title":"Miner #1","ui":{"maxTemp":0,"minTemp":0}},
    {"id":77,"name":"db:77","alwaysCharge":"","batteryBoostLimit":0,"charger":"db:76","circuit":"main","defaultMode":"smart","disable":true,"limitEnergy":0,"limitSoc":0,"maxCurrent":13.5,"minCurrent":3.3,"minSoc":0,"phasesConfigured":1,"planEnergy":0,"planPrecondition":0,"planStrategy":{"continuous":false,"precondition":0},"planTime":"0001-01-01T00:00:00Z","priority":4,"smartCostLimit":null,"smartFeedInPriorityLimit":null,"soc":{"estimate":true,"poll":{"interval":3600000000000,"mode":"charging"}},"solarShare":1,"thresholds":{"disable":{"delay":300000000000,"threshold":2000},"enable":{"delay":120000000000,"threshold":-2000}},"title":"Miner #2","ui":{"maxTemp":0,"minTemp":0}},
    {"id":79,"name":"db:79","alwaysCharge":"","batteryBoostLimit":0,"charger":"db:78","circuit":"main","defaultMode":"smart","disable":true,"limitEnergy":0,"limitSoc":0,"maxCurrent":13.5,"minCurrent":3.3,"minSoc":0,"phasesConfigured":1,"planEnergy":0,"planPrecondition":0,"planStrategy":{"continuous":false,"precondition":0},"planTime":"0001-01-01T00:00:00Z","priority":3,"smartCostLimit":null,"smartFeedInPriorityLimit":null,"soc":{"estimate":true,"poll":{"interval":3600000000000,"mode":"charging"}},"solarShare":1,"thresholds":{"disable":{"delay":300000000000,"threshold":2000},"enable":{"delay":180000000000,"threshold":-2004}},"title":"Miner #3","ui":{"maxTemp":0,"minTemp":0}},
    {"id":91,"name":"db:91","alwaysCharge":"off","batteryBoostLimit":100,"charger":"db:90","defaultMode":"","limitEnergy":0,"limitSoc":0,"maxCurrent":32,"minCurrent":6,"minSoc":0,"phasesConfigured":3,"planEnergy":0,"planPrecondition":0,"planStrategy":{"continuous":false,"precondition":0},"planTime":"0001-01-01T00:00:00Z","priority":0,"smartCostLimit":null,"smartFeedInPriorityLimit":null,"soc":{"estimate":true,"poll":{"interval":3600000000000,"mode":"charging"}},"solarShare":1,"thresholds":{"disable":{"delay":180000000000,"threshold":0},"enable":{"delay":60000000000,"threshold":0}},"title":"Fahrschule links","ui":{"maxTemp":0,"minTemp":0}},
    {"id":93,"name":"db:93","alwaysCharge":"off","batteryBoostLimit":100,"charger":"db:92","defaultMode":"","limitEnergy":0,"limitSoc":0,"maxCurrent":32,"minCurrent":6,"minSoc":0,"phasesConfigured":3,"planEnergy":0,"planPrecondition":0,"planStrategy":{"continuous":false,"precondition":0},"planTime":"0001-01-01T00:00:00Z","priority":0,"smartCostLimit":null,"smartFeedInPriorityLimit":null,"soc":{"estimate":true,"poll":{"interval":3600000000000,"mode":"charging"}},"solarShare":1,"thresholds":{"disable":{"delay":180000000000,"threshold":0},"enable":{"delay":60000000000,"threshold":0}},"title":"Fahrschule rechts","ui":{"maxTemp":0,"minTemp":0}},
    {"id":106,"name":"db:106","alwaysCharge":"off","batteryBoostLimit":100,"charger":"db:105","circuit":"main","defaultMode":"smart","limitEnergy":0,"limitSoc":0,"maxCurrent":13.5,"minCurrent":3.3,"minSoc":0,"phasesConfigured":1,"planEnergy":0,"planPrecondition":0,"planStrategy":{"continuous":false,"precondition":0},"planTime":"0001-01-01T00:00:00Z","priority":5,"smartCostLimit":null,"smartFeedInPriorityLimit":null,"soc":{"estimate":true,"poll":{"interval":3600000000000,"mode":"charging"}},"solarShare":1,"thresholds":{"disable":{"delay":300000000000,"threshold":1500},"enable":{"delay":60000000000,"threshold":-2000}},"title":"Miner #1","ui":{"maxTemp":100,"minTemp":0}},
    {"id":109,"name":"db:109","alwaysCharge":"off","batteryBoostLimit":100,"charger":"db:108","circuit":"main","defaultMode":"smart","limitEnergy":0,"limitSoc":0,"maxCurrent":13.5,"minCurrent":3.3,"minSoc":0,"phasesConfigured":1,"planEnergy":0,"planPrecondition":0,"planStrategy":{"continuous":false,"precondition":0},"planTime":"0001-01-01T00:00:00Z","priority":4,"smartCostLimit":null,"smartFeedInPriorityLimit":null,"soc":{"estimate":true,"poll":{"interval":3600000000000,"mode":"charging"}},"solarShare":1,"thresholds":{"disable":{"delay":300000000000,"threshold":1500},"enable":{"delay":-120000000000,"threshold":-2000}},"title":"Miner #2","ui":{"maxTemp":100,"minTemp":0}},
    {"id":111,"name":"db:111","alwaysCharge":"off","batteryBoostLimit":100,"charger":"db:110","circuit":"main","defaultMode":"smart","limitEnergy":0,"limitSoc":0,"maxCurrent":13.5,"minCurrent":3.3,"minSoc":0,"phasesConfigured":1,"planEnergy":0,"planPrecondition":0,"planStrategy":{"continuous":false,"precondition":0},"planTime":"0001-01-01T00:00:00Z","priority":3,"smartCostLimit":null,"smartFeedInPriorityLimit":null,"soc":{"estimate":true,"poll":{"interval":3600000000000,"mode":"charging"}},"solarShare":1,"thresholds":{"disable":{"delay":300000000000,"threshold":1500},"enable":{"delay":180000000000,"threshold":-2000}},"title":"Miner #3","ui":{"maxTemp":100,"minTemp":0}}
  ],
  "messenger": [
    {"id":82,"name":"db:82","type":"template","config":{"template":"telegram","chats":["1164045876"],"token":"***"},"deviceProduct":"Telegram"}
  ],
  "meter": [
    {"id":102,"name":"db:102","type":"custom","config":{"yaml":"power:
  source: modbus
  uri: 192.168.1.26:504
  id: 1
  register:
    address: 0
    type: holding
    decode: float32
  scale: 1000

## required attributes

#power: # current power
#  source: const
#  value: 1000 # W


## optional attributes (read-only)

#energy: # meter reading in kWh
#  source: const
#  value: 42.5
#returnenergy: # meter reading in reverse direction in kWh (e.g. grid feed-in)
#  source: const
#  value: 12.3
#maxpower: # maximum AC power in W (for hybrid pv)
#  source: const
#  value: 5000
#soc: # state of charge in % (for battery)
#  source: const
#  value: 75
#capacity: 10.5 # capacity in kWh (for battery)
#powers: # phase powers in W
#  - source: const
#    value: 330
#  - source: const
#    value: 340
#  - source: const
#    value: 330
#currents: # phase currents in A
#  - source: const
#    value: 1.5
#  - source: const
#    value: 1.6
#  - source: const
#    value: 1.5
#voltages: # phase voltages in V
#  - source: const
#    value: 230.1
#  - source: const
#    value: 230.2
#  - source: const
#    value: 230.3

## optional attributes (writeable)

#limitsoc: # set battery charge target in % (for battery)
#  source: js
#  script: console.log(limitsoc)
#batterymode: # set charging mode directly (1: normal, 2: hold, 3: charge) (for battery)
#  source: js
#  script: console.log(batterymode)
"},"deviceTitle":"Flachdach"},
    {"id":103,"name":"db:103","type":"custom","config":{"yaml":"power:
  source: modbus
  uri: 192.168.1.26:504
  id: 2
  register:
    address: 0
    type: holding
    decode: float32
  scale: 1000

## required attributes

#power: # current power
#  source: const
#  value: 1000 # W


## optional attributes (read-only)

#energy: # meter reading in kWh
#  source: const
#  value: 42.5
#returnenergy: # meter reading in reverse direction in kWh (e.g. grid feed-in)
#  source: const
#  value: 12.3
#maxpower: # maximum AC power in W (for hybrid pv)
#  source: const
#  value: 5000
#soc: # state of charge in % (for battery)
#  source: const
#  value: 75
#capacity: 10.5 # capacity in kWh (for battery)
#powers: # phase powers in W
#  - source: const
#    value: 330
#  - source: const
#    value: 340
#  - source: const
#    value: 330
#currents: # phase currents in A
#  - source: const
#    value: 1.5
#  - source: const
#    value: 1.6
#  - source: const
#    value: 1.5
#voltages: # phase voltages in V
#  - source: const
#    value: 230.1
#  - source: const
#    value: 230.2
#  - source: const
#    value: 230.3

## optional attributes (writeable)

#limitsoc: # set battery charge target in % (for battery)
#  source: js
#  script: console.log(limitsoc)
#batterymode: # set charging mode directly (1: normal, 2: hold, 3: charge) (for battery)
#  source: js
#  script: console.log(batterymode)
"},"deviceTitle":"Satteldach"},
    {"id":104,"name":"db:104","type":"template","config":{"id":1,"template":"janitza","baudrate":9600,"comset":"8N1","host":"192.168.1.22","modbus":"tcpip","port":502,"usage":"grid"},"deviceProduct":"Janitza UMG series"}
  ],
  "mqtt": {"broker":"","caCert":"","clientCert":"","clientID":"","clientKey":"","insecure":false,"password":"","topic":"evcc","user":""},
  "residualPower": 100,
  "shm": {"deviceId":"","deviceSerial":"","vendorId":""},
  "site": {"aux":null,"battery":null,"consumer":null,"curtail":null,"ext":null,"grid":"db:104","pv":["db:102","db:103"],"title":"expert Traunreut"},
  "tariff": [
    {"id":86,"name":"db:86","type":"template","config":{"template":"grünstromindex","zip":"***"},"deviceDisable":true,"deviceProduct":"Grünstromindex"},
    {"id":84,"name":"db:84","type":"template","config":{"template":"fixed","price":0.314041},"deviceProduct":"Fester Preis"},
    {"id":85,"name":"db:85","type":"template","config":{"template":"fixed","price":0.076517},"deviceProduct":"Fester Preis"},
    {"id":107,"name":"db:107","type":"template","config":{"template":"open-meteo-temperature","interval":"1h","lat":"***","lon":"***"},"deviceProduct":"Open-Meteo Temperature"},
    {"id":87,"name":"db:87","type":"template","config":{"template":"open-meteo","ac":30,"alphatemp":"-0.004","az":7,"de":"0","dec":25,"dm":"0","efficiency":"100","interval":"1h","kwp":33.2,"lat":"***","lon":"***","rossmodel":"0.0342"},"deviceProduct":"Open-Meteo","deviceTitle":"expert Süd"},
    {"id":89,"name":"db:89","type":"template","config":{"template":"open-meteo","ac":40,"alphatemp":"-0.004","az":-83,"de":"0","dec":10,"dm":"0","efficiency":"100","interval":"1h","kwp":42.33,"lat":"***","lon":"***","rossmodel":"0.0342"},"deviceProduct":"Open-Meteo","deviceTitle":"expert West"},
    {"id":88,"name":"db:88","type":"template","config":{"template":"open-meteo","ac":40,"alphatemp":"-0.004","az":97,"de":"0","dec":10,"dm":"0","efficiency":"100","interval":"1h","kwp":39.01,"lat":"***","lon":"***","rossmodel":"0.0342"},"deviceProduct":"Open-Meteo","deviceTitle":"expert Ost"}
  ],
  "tariffRefs": {"co2":"db:86","feedIn":"db:85","grid":"db:84","planner":"","solar":["db:87","db:88","db:89"],"temperature":"db:107"},
  "vehicle": [
    {"id":20,"name":"db:20","type":"template","config":{"template":"vw","autodetectdisabled":false,"cache":30000000000,"capacity":77,"climaterdisabled":false,"coarsecurrent":false,"icon":"car","identifiers":["045833ca"],"maxCurrent":16,"minCurrent":6,"mode":"pv","password":"***","phases":"","priority":1,"timeout":15000000000,"title":"VW ID.5 (Tobias Huber)","user":"***","vin":"***","wakeupdisabled":false,"welcomecharge":true},"deviceProduct":"Volkswagen We Connect ID"},
    {"id":21,"name":"db:21","type":"template","config":{"template":"vw","autodetectdisabled":false,"cache":30000000000,"capacity":58,"climaterdisabled":false,"coarsecurrent":false,"icon":"car","identifiers":["d005e993"],"maxCurrent":16,"minCurrent":6,"mode":"pv","password":"***","phases":"","priority":1,"timeout":15000000000,"title":"VW ID.3 (Rosi Müller)","user":"***","vin":"***","wakeupdisabled":false,"welcomecharge":true},"deviceProduct":"Volkswagen We Connect ID"},
    {"id":22,"name":"db:22","type":"template","config":{"template":"vw","cache":30000000000,"capacity":77,"icon":"car","identifiers":["04aa091a"],"maxCurrent":16,"minCurrent":6,"mode":"pv","password":"***","phases":"","priority":1,"timeout":15000000000,"title":"VW ID.4 (Erich Huber)","user":"***","vin":"***","welcomecharge":true},"deviceProduct":"Volkswagen We Connect ID"},
    {"id":38,"name":"db:38","type":"template","config":{"template":"offline","capacity":22.7,"icon":"car","identifiers":["04156112"],"maxCurrent":16,"minCurrent":6,"mode":"pv","phases":"","title":"WS-HF44E","welcomecharge":true},"deviceProduct":"Generisches Fahrzeug"},
    {"id":39,"name":"db:39","type":"template","config":{"template":"offline","capacity":22.7,"icon":"car","identifiers":["04b06a1a"],"maxCurrent":16,"minCurrent":6,"mode":"pv","phases":"","title":"WS-HF55E","welcomecharge":true},"deviceProduct":"Generisches Fahrzeug"},
    {"id":40,"name":"db:40","type":"template","config":{"template":"offline","capacity":108.6,"icon":"car","identifiers":["0495d8ca"],"maxCurrent":32,"minCurrent":6,"mode":"pv","phases":"","title":"WS-HF99E","welcomecharge":true},"deviceProduct":"Generisches Fahrzeug"},
    {"id":50,"name":"db:50","type":"template","config":{"template":"offline","capacity":77,"icon":"car","identifiers":["2a68df64"],"maxCurrent":16,"minCurrent":6,"mode":"pv","title":"WS-HF90E","welcomecharge":true},"deviceProduct":"Generisches Fahrzeug"},
    {"id":94,"name":"db:94","type":"template","config":{"template":"cardata","autodetectdisabled":false,"capacity":65,"clientid":"a42adebd-d585-43d9-9cc2-1d1158ea4cd8","climaterdisabled":false,"coarsecurrent":false,"icon":"car","identifiers":["049d4c1a"],"maxCurrent":32,"minCurrent":6,"phases":"3","priority":1,"streaming":true,"title":"iX1 (Hildegard Huber)","vin":"***","welcomecharge":true},"deviceProduct":"BMW CarData"},
    {"id":95,"name":"db:95","type":"template","config":{"template":"vw","autodetectdisabled":false,"cache":"15m","capacity":77,"climaterdisabled":false,"coarsecurrent":false,"icon":"car","identifiers":["0402571a"],"maxCurrent":16,"minCurrent":6,"password":"***","phases":"3","priority":0,"title":"WS-HF120E","user":"***","vin":"***","wakeupdisabled":false},"deviceProduct":"Volkswagen EU Data Act"},
    {"id":96,"name":"db:96","type":"template","config":{"template":"vw","autodetectdisabled":false,"cache":"15m","capacity":77,"climaterdisabled":false,"coarsecurrent":false,"icon":"car","identifiers":["04a5361a"],"maxCurrent":16,"minCurrent":6,"password":"***","phases":"3","priority":0,"title":"WS-HF121E","user":"***","vin":"***","wakeupdisabled":false},"deviceProduct":"Volkswagen EU Data Act"},
    {"id":97,"name":"db:97","type":"template","config":{"template":"vw","autodetectdisabled":false,"cache":"15m","capacity":77,"climaterdisabled":false,"coarsecurrent":false,"icon":"car","identifiers":["04f02b1a"],"maxCurrent":16,"minCurrent":6,"password":"***","phases":"3","priority":0,"title":"WS-HF122E","user":"***","vin":"***","wakeupdisabled":false},"deviceProduct":"Volkswagen EU Data Act"},
    {"id":98,"name":"db:98","type":"template","config":{"template":"vw","autodetectdisabled":false,"cache":"15m","capacity":58,"climaterdisabled":false,"coarsecurrent":false,"icon":"car","identifiers":["04d55c1a"],"maxCurrent":16,"minCurrent":6,"password":"***","phases":"3","priority":0,"title":"WS-HF123E","user":"***","vin":"***","wakeupdisabled":false},"deviceProduct":"Volkswagen EU Data Act"},
    {"id":99,"name":"db:99","type":"template","config":{"template":"vw","autodetectdisabled":false,"cache":"15m","capacity":58,"climaterdisabled":false,"coarsecurrent":false,"icon":"car","identifiers":["04523d1a"],"maxCurrent":16,"minCurrent":6,"password":"***","phases":"3","priority":0,"title":"WS