.betrieb { max-width: 1280px; margin: 0 auto; padding: 1rem 1.4rem 3rem; }
.betrieb .kopf { display: flex; align-items: center; gap: .7rem; padding: .4rem 0 1rem; border-bottom: 1px solid var(--linie); }
.betrieb .kopf #wer { margin-left: auto; }
.kacheln { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: .8rem; margin: 1.2rem 0 .4rem; }
.kachel { background: var(--flaeche); border: 1px solid var(--linie); border-radius: 16px; padding: .9rem 1rem; display: grid; gap: .1rem; }
.kachel b { font-size: 1.5rem; letter-spacing: -.02em; } .kachel span { color: var(--leise); font-size: .82rem; }
.kachel.warn b { color: var(--wartet); } .kachel.rot b { color: var(--fehler); }
.tabelle-rahmen { position: relative; overflow-x: auto; border: 1px solid var(--linie); border-radius: 16px; }
table { border-collapse: collapse; width: 100%; font-size: .88rem; }
th, td { text-align: left; padding: .6rem .75rem; border-bottom: 1px solid var(--linie); vertical-align: top; white-space: nowrap; }
th { color: var(--leise); font-weight: 600; font-size: .75rem; text-transform: uppercase; letter-spacing: .06em; }
tr:last-child td { border-bottom: 0; }
td small { display: block; color: var(--leise); }
.status { display: inline-flex; align-items: center; gap: .4rem; }
.status .punkt { margin-left: 0; }
.punkt.grau { background: var(--leise); }
.aktionen { display: flex; gap: .35rem; }
.aktionen button { padding: .3rem .6rem; font-size: .8rem; }
.zwei-spalten { display: grid; grid-template-columns: minmax(280px, 420px) 1fr; gap: 2rem; }
.protokoll { max-height: 420px; overflow-y: auto; }
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
@media (max-width: 800px) { .zwei-spalten { grid-template-columns: 1fr; } .betrieb { padding: .8rem; } }
