Add data_visualization/css/components.css

This commit is contained in:
Mika 2026-06-21 02:07:21 +00:00
parent c72100b26e
commit f8f6ff8740

View file

@ -0,0 +1,143 @@
:root {
--primary: #2e7d32;
--secondary: #1565c0;
--background-light: #f9f9f9;
--background-panel: #ffffff;
--border-color: #ddd;
--text-color: #222;
--text-muted: #666;
--spacing-xs: 0.25rem;
--spacing-sm: 0.5rem;
--spacing-md: 1rem;
--spacing-lg: 2rem;
--radius-sm: 4px;
--radius-md: 8px;
--font-base: 'Arial', sans-serif;
}
/* =============================
FILTER PANEL
============================= */
.filter-panel {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: var(--spacing-md);
background-color: var(--background-panel);
border: 1px solid var(--border-color);
border-radius: var(--radius-md);
padding: var(--spacing-md);
margin-bottom: var(--spacing-lg);
font-family: var(--font-base);
}
.filter-panel label {
color: var(--text-color);
font-weight: 600;
margin-right: var(--spacing-sm);
}
.filter-panel select,
.filter-panel input[type="date"],
.filter-panel input[type="time"] {
padding: var(--spacing-sm) var(--spacing-md);
border: 1px solid var(--border-color);
border-radius: var(--radius-sm);
background-color: var(--background-light);
color: var(--text-color);
font-size: 0.95rem;
}
.filter-panel button {
background-color: var(--primary);
color: #fff;
border: none;
border-radius: var(--radius-sm);
padding: var(--spacing-sm) var(--spacing-md);
cursor: pointer;
transition: background-color 0.2s ease-in-out;
}
.filter-panel button:hover {
background-color: #1b5e20;
}
/* =============================
CHART VISUALS
============================= */
.chart-area {
position: relative;
width: 100%;
min-height: 300px;
background-color: var(--background-panel);
border: 1px solid var(--border-color);
border-radius: var(--radius-md);
padding: var(--spacing-lg) var(--spacing-md);
overflow: hidden;
}
.chart-area canvas {
width: 100%;
height: 100%;
display: block;
}
.chart-legend {
display: flex;
justify-content: center;
gap: var(--spacing-md);
margin-top: var(--spacing-sm);
font-size: 0.9rem;
color: var(--text-muted);
}
.chart-legend__item {
display: flex;
align-items: center;
gap: var(--spacing-xs);
}
.chart-legend__color {
width: 1rem;
height: 1rem;
border-radius: 50%;
}
.chart-legend__color--temperature {
background-color: var(--secondary);
}
.chart-legend__color--audio {
background-color: var(--primary);
}
/* =============================
FOOTER SECTION
============================= */
.app-footer {
width: 100%;
text-align: center;
padding: var(--spacing-sm);
background-color: #f2f2f2;
color: var(--text-muted);
font-family: var(--font-base);
font-size: 0.85rem;
margin-top: var(--spacing-lg);
border-top: 1px solid var(--border-color);
}
.app-footer small {
display: block;
}
@media (min-width: 640px) {
.filter-panel {
justify-content: flex-start;
}
}
@media (min-width: 1024px) {
.chart-area {
min-height: 400px;
}
}