* {
    box-sizing: border-box;
}

html, body {
    height: 100%;
    margin: 0;
    overflow: hidden; /* disable page scroll */
    background-color: white;
    color: black;
    font-family: monospace;
    font-size: 14px;
}

.container {
    width: 80%;
    max-width: 1200px;
    margin: 0 auto;
}

/* Navigation */
.navbar-wrapper {
    background-color: white;
    position: sticky;
    top: 0;
    z-index: 1000;
}

.navbar {
    display: flex;
    height: 60px;
    color: black;
}

.nav-left {
    width: 20%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    padding-left: 1.5rem;
}

.nav-right {
    width: 80%;
    display: flex;
    align-items: center;
    padding-left: 4.5rem;
    font-size: 0.9rem;
}

.nav-right a {
    color: black;
    text-decoration: none;
    margin-right: 50px;
}

/* Main Layout */
.container.main-wrapper {
    display: flex;
    height: calc(100vh - 60px);
}

.sidebar {
    width: 20%;
    background-color: white;
    padding-left: 1rem;
    padding-right: 1rem;
    position: sticky;
    top: 60px;
    height: calc(100vh - 60px);
    overflow-y: auto; /* sidebar can scroll if needed */
    margin-top: 2.5rem;
}

.sidebar a {
    text-decoration: none;
    color: black;
}

.content {
    width: 80%;
    padding-left: 4rem;
    height: calc(100vh - 60px);
    overflow-y: auto; /* only this scrolls */
    background-color: white;
    margin-top: 2rem;
    padding-bottom: 2rem;
}

.content a {
    text-decoration: none;
    color: black;
}