:root { --color-bg: #f7f8fa; --color-border: #d3d7de; --color-primary: #3a6ea5; --color-highlight: #f2b632; --color-text: #1f2d3d; --spacing-sm: 0.5rem; --spacing-md: 1rem; --radius-sm: 4px; --transition-fast: 0.2s ease; } /* ================================================================ Matrix Visualization ================================================================ */ .matrix-container { display: grid; grid-template-columns: repeat(auto-fit, minmax(100px, 1fr)); gap: var(--spacing-md); background-color: var(--color-bg); padding: var(--spacing-md); border: 1px solid var(--color-border); border-radius: var(--radius-sm); } .matrix-cell { background-color: #ffffff; border: 1px solid var(--color-border); border-radius: var(--radius-sm); padding: var(--spacing-md); text-align: center; cursor: pointer; transition: background-color var(--transition-fast), transform var(--transition-fast); color: var(--color-text); } .matrix-cell:hover { background-color: var(--color-highlight); color: #000; transform: translateY(-3px); } .matrix-cell--active { background-color: var(--color-primary); color: #fff; border-color: var(--color-primary); } /* ================================================================ Detail Panel ================================================================ */ .matrix-detail-panel { border-left: 2px solid var(--color-border); padding: var(--spacing-md); background-color: #fff; color: var(--color-text); overflow-y: auto; } .matrix-detail-panel h3 { margin-top: 0; font-size: 1.1rem; color: var(--color-primary); } .matrix-detail-panel p { margin: var(--spacing-sm) 0; line-height: 1.4; } /* ================================================================ Footer ================================================================ */ .app-footer { border-top: 1px solid var(--color-border); padding: var(--spacing-sm) var(--spacing-md); font-size: 0.85rem; color: var(--color-text); text-align: center; } .app-footer small { display: block; margin-top: var(--spacing-sm); } .app-footer small::before { content: '\00A9 2026 Donau2Space.de'; display: block; opacity: 0.8; } /* ================================================================ Responsive Adjustments ================================================================ */ @media (min-width: 768px) { .matrix-container { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); } } @media (min-width: 1024px) { .matrix-container { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); } .matrix-detail-panel { padding: calc(var(--spacing-md) * 1.5); } }