/* Ergänzende Styles über Tailwind hinaus */

:root { color-scheme: light; }

body {
  -webkit-tap-highlight-color: transparent;
  min-height: 100vh;
  background:
    radial-gradient(1200px 500px at 100% -10%, #e3ece4 0%, rgba(227,236,228,0) 55%),
    radial-gradient(1000px 480px at -10% 110%, #eef4ee 0%, rgba(238,244,238,0) 50%),
    #f4f6f4;
  background-attachment: fixed;
}

/* Karten bekommen einen Hauch mehr Tiefe */
.card-hover { transition: box-shadow .18s ease, transform .18s ease; }
.card-hover:hover { box-shadow: 0 10px 30px -12px rgba(33,65,35,.25); }

/* Sanftes Einblenden von Views */
.fade-in { animation: fadeIn .18s ease-out; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }

/* Pulsierender Punkt für „läuft gerade" */
.live-dot {
  width: .6rem; height: .6rem; border-radius: 9999px; background: #4a744f;
  box-shadow: 0 0 0 0 rgba(74,116,79,.6); animation: pulse 1.8s infinite;
}
.live-dot.paused { background: #e0a100; box-shadow: 0 0 0 0 rgba(224,161,0,.6); }
@keyframes pulse {
  0%   { box-shadow: 0 0 0 0 rgba(74,116,79,.5); }
  70%  { box-shadow: 0 0 0 .6rem rgba(74,116,79,0); }
  100% { box-shadow: 0 0 0 0 rgba(74,116,79,0); }
}

/* Tabellen auf kleinen Geräten horizontal scrollbar */
.table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }

/* Aktiver Tab */
.tab-active { color: #214123; border-color: #214123; }

/* Drucken: nur Tabelleninhalt */
@media print {
  .no-print { display: none !important; }
}
