38853-vm/assets/css/custom.css
2026-02-28 13:10:28 +00:00

170 lines
3.3 KiB
CSS

:root {
--primary-color: #0d6efd;
--primary-gradient: linear-gradient(135deg, #0d6efd 0%, #0dcaf0 100%);
--bg-dark: #0b0e14;
--bg-subtle: #161b22;
--border-color: rgba(255, 255, 255, 0.1);
--text-main: #f0f6fc;
--text-secondary: #8b949e;
}
body {
background-color: var(--bg-dark);
color: var(--text-main);
font-family: 'Plus Jakarta Sans', sans-serif;
overflow-x: hidden;
min-height: 100vh;
}
/* Sidebar Styling */
#sidebar-wrapper {
min-height: 100vh;
width: 280px;
transition: margin 0.25s ease-out;
background-color: var(--bg-subtle) !important;
}
#sidebar-wrapper .sidebar-heading {
padding: 2rem 1.5rem;
font-size: 1.25rem;
}
#sidebar-wrapper .list-group {
width: 100%;
}
#sidebar-wrapper .list-group-item {
color: var(--text-secondary);
transition: all 0.2s ease;
border: none !important;
margin: 0.25rem 1rem;
padding: 0.75rem 1rem;
}
#sidebar-wrapper .list-group-item:hover {
color: var(--text-main);
background-color: rgba(255, 255, 255, 0.05) !important;
}
#sidebar-wrapper .list-group-item.active {
background-color: var(--primary-color) !important;
color: white;
}
/* Page Content Styling */
#page-content-wrapper {
min-width: 0;
width: 100%;
background-color: var(--bg-dark);
}
/* Custom Utilities */
.text-gradient {
background: var(--primary-gradient);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.tracking-wider {
letter-spacing: 0.1em;
}
.min-vh-75 {
min-height: 75vh;
}
/* App Sections */
.app-section {
animation: fadeIn 0.4s ease-out forwards;
}
@keyframes fadeIn {
from { opacity: 0; transform: translateY(10px); }
to { opacity: 1; transform: translateY(0); }
}
/* Cards & Components */
.card {
background-color: var(--bg-subtle);
border: 1px solid var(--border-color);
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
transition: transform 0.2s ease, border-color 0.2s ease;
}
.card:hover {
border-color: var(--primary-color);
}
.bg-dark-subtle {
background-color: var(--bg-subtle) !important;
}
.border-secondary {
border-color: var(--border-color) !important;
}
/* Range Input Customization */
.custom-range::-webkit-slider-runnable-track {
background: rgba(255, 255, 255, 0.1);
height: 8px;
border-radius: 4px;
}
.custom-range::-webkit-slider-thumb {
background: var(--primary-color);
border: 3px solid #fff;
width: 20px;
height: 20px;
margin-top: -6px;
box-shadow: 0 0 10px rgba(13, 110, 253, 0.5);
}
/* Hover Effects */
.nav-link {
cursor: pointer;
}
/* Stats */
.stat-card {
background: rgba(255, 255, 255, 0.03);
padding: 1rem;
border-radius: 1rem;
border: 1px solid var(--border-color);
}
/* Chart Styles */
.chart-container {
position: relative;
width: 100%;
margin-top: 2rem;
}
/* Responsive */
@media (max-width: 991.98px) {
#sidebar-wrapper {
margin-left: -280px;
}
#wrapper.toggled #sidebar-wrapper {
margin-left: 0;
}
}
/* Custom Scrollbar */
::-webkit-scrollbar {
width: 8px;
}
::-webkit-scrollbar-track {
background: var(--bg-dark);
}
::-webkit-scrollbar-thumb {
background: var(--bg-subtle);
border-radius: 10px;
border: 2px solid var(--bg-dark);
}
::-webkit-scrollbar-thumb:hover {
background: var(--text-secondary);
}