* { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); min-height: 100vh; padding: 20px; } .container { max-width: 1400px; margin: 0 auto; background: white; border-radius: 20px; padding: 30px; box-shadow: 0 20px 60px rgba(0,0,0,0.3); } h1 { text-align: center; color: #333; margin-bottom: 30px; font-size: 2.5em; } .tabs { display: flex; justify-content: center; gap: 20px; margin-bottom: 30px; } .tab { padding: 15px 40px; background: #f0f0f0; border: none; border-radius: 10px; cursor: pointer; font-size: 18px; transition: all 0.3s; font-weight: 600; } .tab:hover { background: #e0e0e0; transform: translateY(-2px); } .tab.active { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; } .charts-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-top: 20px; } .chart-container { background: #f9f9f9; border-radius: 15px; padding: 20px; box-shadow: 0 4px 6px rgba(0,0,0,0.1); /* feste Mindesthöhe sorgt für konsistente Layouts */ min-height: 420px; } /* Stellt sicher, dass Charts nicht breiter als ihre Container werden */ #charts { width: 100%; } .chart-container > div { width: 100%; max-width: 100%; } .loading { text-align: center; padding: 50px; font-size: 20px; color: #666; } @media (max-width: 1024px) { .charts-grid { grid-template-columns: 1fr; } }