/* REV87: Infotafel fuer den Buero-Bildschirm (86", 4K). Alles in vw/vh,
   damit es auf jeder Groesse gleich aussieht. */
:root{--gruen:#14693C;--dunkel:#0f2a1c;--papier:#f6f4ec;--text:#17241d;--grau:#5d675f;--limette:#d9f28d}
*{box-sizing:border-box}
html,body{margin:0;height:100%;background:var(--papier);color:var(--text);font-family:Inter,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;overflow:hidden;cursor:none}
.tafel{position:absolute;inset:0 0 9vh 0;display:flex;gap:3vw;padding:4vh 4vw 3vh;opacity:1;transition:opacity .6s ease}
.tafel.weg{opacity:0}
/* REV134: hidden muss auch gegen display:flex gewinnen - sonst lag die
   Meldung ueber dem Titel. */
.tafel[hidden]{display:none}
.tafel-bild{flex:0 0 56%;display:flex;align-items:center;justify-content:center;border-radius:1vw;overflow:hidden}
.tafel-bild.foto{background:#fff;box-shadow:0 .6vw 2vw #0f2a1c22}
.tafel-bild[hidden]{display:none}
.tafel-bild img{max-width:100%;max-height:100%;object-fit:contain;display:block}
.tafel-bild.foto img{width:100%;height:100%;object-fit:cover}
.tafel-text{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}
.tafel-marke{margin:0 0 1.5vh;color:var(--gruen);font-weight:800;letter-spacing:.2em;text-transform:uppercase;font-size:1.1vw}
#tafel-titel{margin:0 0 3vh;font-size:3.4vw;line-height:1.12;color:var(--dunkel)}
#tafel-punkte{margin:0;padding:0;list-style:none;display:grid;gap:1.8vh}
#tafel-punkte li{position:relative;padding-left:2.4vw;font-size:1.75vw;line-height:1.35}
#tafel-punkte li::before{content:"";position:absolute;left:0;top:.55em;width:1vw;height:1vw;border-radius:50%;background:var(--gruen)}
.tafel.nur-text #tafel-titel{font-size:4.2vw}
.tafel.nur-text #tafel-punkte li{font-size:2.3vw}
.tafel.nur-text .tafel-text{max-width:75vw;margin:0 auto}
.tafel-fuss{margin:3vh 0 0;color:var(--grau);font-size:1.05vw}
.tafel-fuss:empty{display:none}
.tafel-meldung{position:absolute;inset:30vh 15vw auto;text-align:center;font-size:2vw;color:var(--grau);line-height:1.4}
.tafel-meldung[hidden]{display:none}
.tafel-leiste{position:absolute;left:0;right:0;bottom:0;height:9vh;background:var(--dunkel);color:#fff;display:flex;align-items:center;gap:3vw;padding:0 4vw;font-size:1.6vw}
.tafel-uhr{font-size:2.6vw;font-weight:800;font-variant-numeric:tabular-nums}
.tafel-datum{color:#c9d6cd}
.tafel-wetter{margin-left:auto;color:var(--limette);font-weight:700}
.tafel-zaehler{color:#9fb0a5;font-variant-numeric:tabular-nums}
.tafel-lauf{position:absolute;left:0;right:0;bottom:9vh;height:.5vh;background:#0f2a1c22}
#tafel-lauf{height:100%;width:0;background:var(--gruen)}
#tafel-lauf.laeuft{transition-property:width;transition-timing-function:linear;width:100%}
.tafel-bild.qr{background:#fff;padding:4vh;box-shadow:0 .6vw 2vw #0f2a1c22}
.tafel-bild.qr img{height:100%;width:auto;image-rendering:pixelated}
/* REV134: Koppeln per Code */
.tafel-koppeln{position:absolute;inset:0 0 9vh 0;display:flex;flex-direction:column;justify-content:center;padding:4vh 8vw}
.tafel-koppeln[hidden]{display:none}
.tafel-koppeln h1{margin:0 0 3vh;font-size:4vw;color:var(--dunkel)}
.tafel-koppeln-weg{margin:0;font-size:2vw;color:var(--text)}
.tafel-code{margin:4vh 0;font-size:11vw;font-weight:800;letter-spacing:.12em;color:var(--gruen);font-variant-numeric:tabular-nums;line-height:1}
.tafel-koppeln-hinweis{margin:0;font-size:1.4vw;color:var(--grau)}
/* REV136: Jetzt aufs Display */
.tafel-live{position:absolute;inset:0 0 9vh 0;display:flex;gap:3vw;padding:4vh 4vw 3vh}
.tafel-live[hidden]{display:none}
.tafel-live-bild{flex:0 0 64%;display:flex;align-items:center;justify-content:center;border-radius:1vw;overflow:hidden;background:#fff}
.tafel-live-bild[hidden]{display:none}
.tafel-live-bild img{width:100%;height:100%;object-fit:contain;display:block}
.tafel-live-text{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:2vh}
.tafel-live.nur-text .tafel-live-text{max-width:80vw;margin:0 auto}
.tafel-live.anweisung .tafel-live-text{justify-content:flex-start}
.tafel-live-kopf{margin:0;display:flex;align-items:center;gap:1vw;font-size:1.2vw;color:var(--grau);letter-spacing:.06em}
.tafel-live-marke{background:#c62e17;color:#fff;font-weight:800;letter-spacing:.14em;padding:.3vw .7vw;border-radius:.4vw}
#tafel-live-titel{margin:0;font-size:3.4vw;line-height:1.12;color:var(--dunkel)}
.tafel-live.nur-text #tafel-live-titel{font-size:4.6vw}
.tafel-live-nachricht{margin:0;font-size:2vw;line-height:1.4;white-space:pre-line}
.tafel-live.nur-text .tafel-live-nachricht{font-size:2.8vw}
.tafel-live-nachricht:empty{display:none}
.tafel-live-punkte{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4vw;overflow:hidden}
.tafel-live-punkte:empty{display:none}
.tafel-live-punkt{background:#fff;border-radius:.8vw;padding:1.2vw;display:flex;gap:1.2vw;min-height:0}
.tafel-live-punkt img{width:12vw;height:12vw;object-fit:cover;border-radius:.5vw;flex-shrink:0}
.tafel-live-punkt div{display:flex;flex-direction:column;gap:.8vh;min-width:0}
.tafel-live-punkt p{margin:0;font-size:1.55vw;line-height:1.3;white-space:pre-line}
.tafel-live-art{align-self:flex-start;color:#fff;font-weight:800;font-size:1vw;letter-spacing:.08em;padding:.25vw .6vw;border-radius:.35vw;background:var(--gruen)}
.tafel-live-art.problem{background:#b3261e}
.tafel-live-art.aenderung{background:#9a5b00}
.tafel-live-art.hinweis{background:#3a4a8c}
.tafel-leiste.live .tafel-zaehler{color:#ffd3c8;font-weight:700}
/* REV137: KI-Bild kenntlich */
.tafel-bild{position:relative}
.tafel-ki-marke{position:absolute;right:1vw;bottom:1vw;background:#0f2a1cb3;color:#fff;font-size:.9vw;font-weight:700;letter-spacing:.06em;padding:.3vw .6vw;border-radius:.3vw}
.tafel-ki-marke[hidden]{display:none}
/* REV157 - Pflanzenkunde: viele Fakten, darum etwas kleiner; Quelle lesbar */
.tafel.pflanze #tafel-titel{font-size:2.9vw}
.tafel.pflanze #tafel-punkte{gap:1.2vh}
.tafel.pflanze #tafel-punkte li{font-size:1.45vw}
.tafel.pflanze .tafel-fuss{font-size:.9vw}

/* REV159: Stempeluhr in der Leiste */
.tafel-stempel{display:flex;align-items:center;gap:1vw;height:100%;color:#fff}
.tafel-stempel[hidden]{display:none}
.tafel-stempel img{height:8vh;width:8vh;background:#fff;border-radius:.4vh;padding:.3vh}
.tafel-stempel span{display:flex;flex-direction:column;font-size:1.1vw;color:#9fb0a5;line-height:1.1}
.tafel-stempel b{font-size:2.6vw;color:var(--limette);letter-spacing:.08em;font-variant-numeric:tabular-nums}

/* REV186: einpassen() - lange Tafeln stufenweise kleiner */
.tafel.eng #tafel-titel{font-size:3vw;margin-bottom:2vh}
.tafel.eng #tafel-punkte{gap:1.2vh}
.tafel.eng #tafel-punkte li{font-size:1.6vw}
.tafel.enger #tafel-titel{font-size:2.6vw;margin-bottom:1.5vh}
.tafel.enger #tafel-punkte{gap:.8vh}
.tafel.enger #tafel-punkte li{font-size:1.4vw;line-height:1.25}
.tafel.am-engsten #tafel-titel{font-size:2.2vw}
.tafel.am-engsten #tafel-punkte{gap:.5vh}
.tafel.am-engsten #tafel-punkte li{font-size:1.2vw;line-height:1.2}
