html, body {
    height: 100%;
    margin: 0;
    overflow: hidden; /* prevent double scrollbars */
}

/* Sidebar fixed to left */
.sidebar {
    position: fixed;
    top: 56px; /* below header */
    left: 0;
    width: 220px;
    height: calc(100vh - 56px); /* full height minus header */
    overflow-y: auto; /* scroll independently */
    z-index: 1030;
}

/* Content area beside sidebar */
.content-area {
    margin-top: 56px; /* below header */
    margin-left: 220px; /* to the right of sidebar */
    height: calc(100vh - 56px);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

    /* Scroll only inside main content */
    .content-area main {
        flex-grow: 1;
        overflow-y: auto;
    }

/* Added by Aparna Oak on 16-09-2025 */
/* Autofit table to content */
table.auto-fit {
    table-layout: auto; /* Default but we force it */
    width: auto; /* Only as wide as needed */
    border-collapse: collapse;
}

    table.auto-fit th,
    table.auto-fit td {
        white-space: nowrap; /* Prevent wrapping so columns expand to fit */
        padding: 10px 20px;
    }
