202 lines
3.3 KiB
CSS
202 lines
3.3 KiB
CSS
/* Controller Dashboard Styles */
|
|
body {
|
|
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
|
|
background-color: #f8f9fa;
|
|
}
|
|
|
|
.container-fluid {
|
|
max-width: 1400px;
|
|
margin: 0 auto;
|
|
}
|
|
|
|
header {
|
|
border-radius: 0.5rem;
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
.nav-tabs {
|
|
border-bottom: 2px solid #dee2e6;
|
|
}
|
|
|
|
.nav-tabs .nav-link {
|
|
border: none;
|
|
color: #495057;
|
|
font-weight: 500;
|
|
padding: 0.75rem 1.5rem;
|
|
}
|
|
|
|
.nav-tabs .nav-link:hover {
|
|
border: none;
|
|
color: #0d6efd;
|
|
}
|
|
|
|
.nav-tabs .nav-link.active {
|
|
color: #0d6efd;
|
|
border-bottom: 3px solid #0d6efd;
|
|
background-color: transparent;
|
|
}
|
|
|
|
.tab-content {
|
|
background-color: white;
|
|
border-radius: 0 0 0.5rem 0.5rem;
|
|
box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
|
|
}
|
|
|
|
.card {
|
|
border: 1px solid rgba(0, 0, 0, 0.125);
|
|
border-radius: 0.5rem;
|
|
box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
|
|
}
|
|
|
|
.card-title {
|
|
color: #495057;
|
|
font-weight: 600;
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
.table-responsive {
|
|
margin-top: 1rem;
|
|
}
|
|
|
|
.table {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.table thead th {
|
|
background-color: #f8f9fa;
|
|
border-bottom: 2px solid #dee2e6;
|
|
font-weight: 600;
|
|
color: #495057;
|
|
}
|
|
|
|
.table tbody tr:hover {
|
|
background-color: #f8f9fa;
|
|
}
|
|
|
|
.btn {
|
|
border-radius: 0.375rem;
|
|
font-weight: 500;
|
|
}
|
|
|
|
.btn-primary {
|
|
background-color: #0d6efd;
|
|
border-color: #0d6efd;
|
|
}
|
|
|
|
.btn-primary:hover {
|
|
background-color: #0b5ed7;
|
|
border-color: #0a58ca;
|
|
}
|
|
|
|
.btn-outline-primary {
|
|
color: #0d6efd;
|
|
border-color: #0d6efd;
|
|
}
|
|
|
|
.btn-outline-primary:hover {
|
|
background-color: #0d6efd;
|
|
border-color: #0d6efd;
|
|
}
|
|
|
|
.form-control, .form-select {
|
|
border-radius: 0.375rem;
|
|
border: 1px solid #ced4da;
|
|
}
|
|
|
|
.form-control:focus, .form-select:focus {
|
|
border-color: #86b7fe;
|
|
box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
|
|
}
|
|
|
|
pre {
|
|
background-color: #f8f9fa;
|
|
border: 1px solid #dee2e6;
|
|
border-radius: 0.375rem;
|
|
padding: 1rem;
|
|
white-space: pre-wrap;
|
|
word-wrap: break-word;
|
|
font-family: 'Courier New', Courier, monospace;
|
|
font-size: 0.875rem;
|
|
}
|
|
|
|
.badge {
|
|
font-weight: 500;
|
|
padding: 0.35em 0.65em;
|
|
}
|
|
|
|
.badge.bg-success {
|
|
background-color: #198754 !important;
|
|
}
|
|
|
|
.badge.bg-warning {
|
|
background-color: #ffc107 !important;
|
|
}
|
|
|
|
.badge.bg-danger {
|
|
background-color: #dc3545 !important;
|
|
}
|
|
|
|
.badge.bg-info {
|
|
background-color: #0dcaf0 !important;
|
|
}
|
|
|
|
.spinner-border {
|
|
margin: 1rem auto;
|
|
display: block;
|
|
}
|
|
|
|
.modal-content {
|
|
border-radius: 0.5rem;
|
|
}
|
|
|
|
.modal-header {
|
|
border-bottom: 1px solid #dee2e6;
|
|
}
|
|
|
|
.modal-footer {
|
|
border-top: 1px solid #dee2e6;
|
|
}
|
|
|
|
/* Status indicators */
|
|
.status-active {
|
|
color: #198754;
|
|
}
|
|
|
|
.status-inactive {
|
|
color: #6c757d;
|
|
}
|
|
|
|
.status-error {
|
|
color: #dc3545;
|
|
}
|
|
|
|
.status-warning {
|
|
color: #ffc107;
|
|
}
|
|
|
|
/* Responsive adjustments */
|
|
@media (max-width: 768px) {
|
|
.container-fluid {
|
|
padding: 0.5rem;
|
|
}
|
|
|
|
.nav-tabs .nav-link {
|
|
padding: 0.5rem 0.75rem;
|
|
font-size: 0.875rem;
|
|
}
|
|
|
|
.tab-content {
|
|
padding: 1rem;
|
|
}
|
|
}
|
|
|
|
/* Animation for refreshing */
|
|
@keyframes spin {
|
|
0% { transform: rotate(0deg); }
|
|
100% { transform: rotate(360deg); }
|
|
}
|
|
|
|
.refreshing {
|
|
animation: spin 1s linear infinite;
|
|
}
|