near_expiry_unpinned_analysis/visualization_tool/css/layout.css

80 lines
No EOL
1.5 KiB
CSS

:root {
--primary: #2c3e50;
--background: #f8f9fa;
--text-color: #222;
--critical: #e74c3c;
--spacing-sm: 0.5rem;
--spacing-md: 1rem;
--spacing-lg: 2rem;
--border-radius: 4px;
--max-width: 1200px;
}
/* =========================
App-Struktur
========================= */
body {
margin: 0;
font-family: sans-serif;
color: var(--text-color);
background-color: var(--background);
display: flex;
flex-direction: column;
min-height: 100vh;
}
.app-header {
background-color: var(--primary);
color: #fff;
padding: var(--spacing-md);
text-align: center;
flex-shrink: 0;
}
.results-section {
display: flex;
flex-direction: row;
gap: var(--spacing-lg);
justify-content: space-between;
align-items: flex-start;
flex: 1;
max-width: var(--max-width);
margin: var(--spacing-lg) auto;
padding: 0 var(--spacing-md);
}
.results-section .table-container {
flex: 2;
overflow-x: auto;
}
.chart-panel {
flex: 1;
display: flex;
flex-direction: column;
gap: var(--spacing-md);
background-color: #fff;
border: 1px solid #ddd;
border-radius: var(--border-radius);
padding: var(--spacing-md);
}
.app-footer {
background-color: var(--primary);
color: #fff;
text-align: center;
padding: var(--spacing-sm);
flex-shrink: 0;
}
/* =========================
Responsive Behavior
========================= */
@media (max-width: 800px) {
.results-section {
flex-direction: column;
}
.chart-panel {
width: 100%;
}
}