.table tbody tr:hover {
  background-color: var(--bs-light);
}

.table td,
.table th {
  text-align: center;
  vertical-align: middle;
}

.table .fw-bold {
  text-align: center;
}

.action-buttons {
  display: flex;
  gap: 0.25rem;
  flex-wrap: wrap;
  justify-content: center;
}

.action-buttons .btn {
  font-size: 0.75rem;
  padding: 0.25rem 0.5rem;
}

.docker-status {
  font-size: 0.875rem;
  border: none;
  padding: 0.25rem 0.75rem;
  cursor: default;
  margin-right: 1rem;
  border-radius: 20px;
}

.docker-status:hover {
  background: 0 0 !important;
}

.docker-status.connected {
  background-color: #198754 !important;
  color: #fff !important;
}

.docker-status.disconnected {
  background-color: #dc3545 !important;
  color: #fff !important;
}

.name-preview {
  font-family: 'Courier New', monospace;
  padding: 2px 4px;
  border-radius: 3px;
  font-size: 0.9em;
  border: 1px solid var(--bs-border-color);
}

[data-bs-theme='light'] .name-preview {
  background-color: #f8f9fa;
  color: #495057;
}

[data-bs-theme='dark'] .name-preview {
  background-color: #495057;
  color: #f8f9fa;
}

.login-container {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
}

.main-app {
  display: none;
}

.theme-switcher {
  position: absolute;
  top: 1rem;
  right: 1rem;
}

.user-dropdown {
  position: relative;
}

.user-info {
  display: flex;
  align-items: center;
  cursor: pointer;
  padding: 0.375rem 0.75rem;
  border: 1px solid #6c757d;
  border-radius: 0.375rem;
  background: 0 0;
  color: #f8f9fa;
  text-decoration: none;
}

.user-info:hover {
  background-color: rgba(255, 255, 255, 0.1);
  color: #f8f9fa;
}

.toast-container {
  position: fixed;
  bottom: 1rem;
  right: 1rem;
  z-index: 1055;
}

.toast {
  min-width: 300px;
}

.webvnc-badge {
  font-size: 0.75rem;
}
