137 lines
2.6 KiB
CSS
137 lines
2.6 KiB
CSS
/* Custom styles for Resource Monitor Dashboard */
|
|
|
|
.loading-spinner {
|
|
animation: spin 1s linear infinite;
|
|
}
|
|
|
|
@keyframes spin {
|
|
from { transform: rotate(0deg); }
|
|
to { transform: rotate(360deg); }
|
|
}
|
|
|
|
.fade-in {
|
|
animation: fadeIn 0.3s ease-in;
|
|
}
|
|
|
|
@keyframes fadeIn {
|
|
from { opacity: 0; }
|
|
to { opacity: 1; }
|
|
}
|
|
|
|
.slide-down {
|
|
animation: slideDown 0.3s ease-out;
|
|
}
|
|
|
|
@keyframes slideDown {
|
|
from {
|
|
opacity: 0;
|
|
transform: translateY(-10px);
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
transform: translateY(0);
|
|
}
|
|
}
|
|
|
|
/* System Control Button Animations */
|
|
@keyframes pulse {
|
|
0% {
|
|
transform: scale(1);
|
|
box-shadow: 0 0 0 0 rgba(220, 38, 38, 0.7);
|
|
}
|
|
50% {
|
|
transform: scale(1.05);
|
|
box-shadow: 0 0 0 10px rgba(220, 38, 38, 0);
|
|
}
|
|
100% {
|
|
transform: scale(1);
|
|
box-shadow: 0 0 0 0 rgba(220, 38, 38, 0);
|
|
}
|
|
}
|
|
|
|
/* Make title elements more touch-friendly on mobile */
|
|
@media (max-width: 768px) {
|
|
nav h1 {
|
|
padding: 8px;
|
|
border-radius: 4px;
|
|
cursor: pointer;
|
|
user-select: none;
|
|
-webkit-user-select: none;
|
|
-webkit-tap-highlight-color: rgba(255, 255, 255, 0.2);
|
|
}
|
|
|
|
nav h1:active {
|
|
background-color: rgba(255, 255, 255, 0.1);
|
|
}
|
|
|
|
nav .fas.fa-chart-line {
|
|
padding: 8px;
|
|
border-radius: 50%;
|
|
cursor: pointer;
|
|
-webkit-tap-highlight-color: rgba(255, 255, 255, 0.2);
|
|
}
|
|
|
|
nav .fas.fa-chart-line:active {
|
|
background-color: rgba(255, 255, 255, 0.1);
|
|
}
|
|
}
|
|
|
|
/* Custom progress bar animations */
|
|
.progress-bar {
|
|
transition: width 0.5s ease-in-out;
|
|
}
|
|
|
|
/* Responsive table */
|
|
@media (max-width: 768px) {
|
|
.mobile-table {
|
|
font-size: 0.875rem;
|
|
}
|
|
|
|
.mobile-table th,
|
|
.mobile-table td {
|
|
padding: 0.5rem 0.25rem;
|
|
}
|
|
}
|
|
|
|
/* Custom notification styles */
|
|
.notification {
|
|
position: fixed;
|
|
top: 1rem;
|
|
right: 1rem;
|
|
z-index: 1000;
|
|
max-width: 400px;
|
|
animation: slideIn 0.3s ease-out;
|
|
}
|
|
|
|
@keyframes slideIn {
|
|
from {
|
|
opacity: 0;
|
|
transform: translateX(100%);
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
transform: translateX(0);
|
|
}
|
|
}
|
|
|
|
/* Process table hover effects */
|
|
.process-row:hover {
|
|
background-color: #f9fafb;
|
|
transform: translateY(-1px);
|
|
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
|
|
transition: all 0.2s ease;
|
|
}
|
|
|
|
/* Chart container responsive */
|
|
.chart-container {
|
|
position: relative;
|
|
height: 200px;
|
|
width: 100%;
|
|
}
|
|
|
|
@media (max-width: 640px) {
|
|
.chart-container {
|
|
height: 150px;
|
|
}
|
|
}
|