.winddir { position:absolute; left:60%; width:25%; height:40%; padding: 0; background-image: url('../assets/img/arrow.svg'); background-size:contain; background-repeat: no-repeat; background-position: center; } /* Schieberegler in den Modals (Autoladung, Heizstab, Thermostat). Der gefuellte Anteil kommt aus --background-size, gesetzt von bindModalSlider() in js/solar/common.js. */ input[type='range']::-webkit-slider-runnable-track { background: linear-gradient(to right, #00788F, #00788F), #D7D7D7; background-size: var(--background-size, 0%) 100%; background-repeat: no-repeat; } /* Diagramme (Chart.js). Die Hoehe kommt aus diesem Container, nicht aus dem canvas - die Charts laufen mit maintainAspectRatio: false. Auf dem Handy ist der Container nur rund 300 px breit; mit 400 px Hoehe wird aus einer Zeitreihe ein Hochformat, in dem die Zeitachse die kurze Seite ist. */ .chart-container { position: relative; width: 100%; height: 400px; } @media (max-width: 767.98px) { .chart-container { height: 250px; } } /* Statistik-Kacheln (ajax/getStats.php). Sie lagen in nackten .col ohne Breitenangabe - Bootstrap laesst sie dann nach Textlaenge umbrechen, mal zwei, mal drei je Zeile und unterschiedlich breit. Die Breite kommt jetzt aus row-cols-* in getStats.php; hier sorgt die volle Kartenhoehe dafuer, dass die Werte trotz ein- oder zweizeiliger Titel auf einer Linie stehen. */ .card.stats { height: 100%; } .card.stats .card-body { flex: 1 1 auto; } /* Auf dem Handy gehen von 375 px rund 75 an Innenabstaende verloren, und zwischen den Karten stehen 24 px. Beides wird hier enger gefasst - nur im Inhaltsbereich, damit Seitenleiste, Kopfzeile und Modals unberuehrt bleiben. Die Abstandsklassen von Bootstrap (mb-4) tragen !important, deshalb steht es auch hier. */ @media (max-width: 767.98px) { .app-content { padding: 0 .25rem; } .app-content-header { padding: .5rem .25rem; } .app-content .row { --bs-gutter-x: .5rem; } .app-content .card { margin-bottom: .75rem !important; } /* Nur der Standardwert wird kleiner; eigene Angaben im Markup (p-0 fuer das Realtime-SVG, p-2 fuer die Statistik) gelten weiter. */ .app-content .card-body { padding: .5rem; } /* Eine Kachel ist auf dem Handy rund 150 px breit. In voller Schrift passt "Verbrauchsersparnis" dort nicht in eine Zeile und wird mitten im Wort umbrochen. */ .card.stats .card-body { font-size: .8rem; } }