body{
        font-family: 'Roboto', sans-serif;
        background-color: #dfdfdf;
    }
    * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }
    table {
        width: 99vw;
        margin-left:auto;
        margin-right:auto;
        border-collapse: collapse;
        font-family: Arial, sans-serif;
        font-size: 14px;
        margin-top: 20px;
        background-color:#fff;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.16);
        border: 1px black;
    }

    thead {
        background-color: #2c5364;
        color: #ecf0f1;
    }

    th, td {
        padding: 12px 16px;
        text-align: left;
        border-bottom: 1px solid #ddd;
    }

    tbody tr:hover {
        background-color: #f5f5f5;
    }

    td:last-child {
        text-align: right;
    }

    .badge-fresh {
        color: #2ecc71;
        font-weight: bold;
    }

    .badge-stale {
        color: #e67e22;
        font-weight: bold;
    }

    .badge-offline {
        color: #e74c3c;
        font-weight: bold;
    }
    .heartbeat-header {
        width: 100%;
        background-color: #2c3e50; 
        color: #fff;
        font-size: 1.4rem;
        font-weight: bold;
        display: flex;
        align-items: center;
        padding: 16px 20px;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.69);
        margin-bottom: 20px;
        width: 100vw;
    }

    .heartbeat-header .icon {
        margin-right: 12px;
        font-size: 1.6em;
    }

    .heartbeat-header .title {
        flex-grow: 1;
    }
    header {
        background-color: #2c3e50;
        background: linear-gradient(to right, #0f2027, #203a43, #2c5364);
        padding: 20px;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.42);
    }

    .navbar {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .nav-btn {
        display: inline-block;
        text-decoration: none;
        font: inherit;
        background-color: transparent;
        color: white;
        border: none;
        padding: 10px 16px;
        cursor: pointer;
        font-size: 1rem;
        transition: background-color 0.3s ease;
        margin-left:1em;
    }

    .nav-btn:hover {
        background-color: rgba(255, 255, 255, 0.2); /* 50% white overlay */
    }
    .admin-btn {
        margin-left: auto;
    }
    .disabled-btn {
        pointer-events: none;      /* Prevent all mouse events */
        background-color: transparent;
        cursor: default;
        transition: none;          /* Remove transitions if needed */
    }
    .disabled-btn:hover {
        background-color: transparent; /* No hover effect */
        transform: none;
    }