/* Custom styles to enhance the Bootstrap theme */ .card { border: 1px solid rgba(255, 255, 255, 0.125); box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075); } .card-header { background-color: rgba(255, 255, 255, 0.03); border-bottom: 1px solid rgba(255, 255, 255, 0.125); } .navbar-brand { font-weight: 600; } .btn-group-sm > .btn { border-radius: 0.25rem !important; } .btn-group-sm > .btn:not(:last-child) { border-right: 1px solid rgba(255, 255, 255, 0.2); } .table-responsive { border-radius: 0.375rem; } .badge { font-size: 0.75em; } .alert { border: 1px solid transparent; border-radius: 0.375rem; } pre { background-color: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.125); border-radius: 0.375rem; padding: 1rem; font-size: 0.875rem; } .text-nowrap { white-space: nowrap; } /* Animation for status indicators */ .badge { transition: all 0.2s ease-in-out; } /* Custom scrollbar for logs */ .table-responsive::-webkit-scrollbar { width: 6px; } .table-responsive::-webkit-scrollbar-track { background: rgba(255, 255, 255, 0.1); border-radius: 3px; } .table-responsive::-webkit-scrollbar-thumb { background: rgba(255, 255, 255, 0.3); border-radius: 3px; } .table-responsive::-webkit-scrollbar-thumb:hover { background: rgba(255, 255, 255, 0.5); } /* Status indicator pulse animation */ @keyframes pulse { 0% { opacity: 1; } 50% { opacity: 0.7; } 100% { opacity: 1; } } .pulse { animation: pulse 2s infinite; } /* Responsive card spacing */ @media (max-width: 768px) { .card { margin-bottom: 1rem; } .btn-group { flex-direction: column; } .btn-group .btn { border-radius: 0.375rem !important; margin-bottom: 0.25rem; } }