/* /Shared/MainLayout.razor.rz.scp.css */
html[b-m8btvfte0r], body[b-m8btvfte0r] {
    height: 100%;
    margin: 0;
    background-color: #0d1117; /* deep dark blue/grey */
    color: #e0e6f0; /* light bluish-grey text */
    font-family: sans-serif;
}

.page[b-m8btvfte0r] {
    min-height: 100vh;
    position: relative;
    display: flex;
    flex-direction: column;
    background-color: #0d1117; /* match body */
    color: #e0e6f0;
}

main[b-m8btvfte0r] {
    flex: 1;
    background-color: #161b22; /* slightly lighter than body for contrast */
    padding: 1rem;
    border-radius: 6px;
}

/* Sidebar with blue gradient */
.sidebar[b-m8btvfte0r] {
    background-image: linear-gradient(180deg, #0b1a33 0%, #13294b 70%);
    color: #e0e6f0;
}

/* Top navigation bar */
.top-row[b-m8btvfte0r] {
    background-color: #1c2533; /* dark bluish-grey */
    border-bottom: 1px solid #2a3445;
    justify-content: flex-start;
    height: 3.0rem;
    display: flex;
    align-items: center;
}

    .top-row[b-m8btvfte0r]  a,
    .top-row[b-m8btvfte0r]  .btn-link {
        white-space: nowrap;
        text-decoration: none;
        color: #a8c5ff; /* soft blue links */
    }

        .top-row[b-m8btvfte0r]  a:hover,
        .top-row[b-m8btvfte0r]  .btn-link:hover {
            text-decoration: underline;
            color: #ffffff; /* brighten on hover */
        }

        .top-row[b-m8btvfte0r]  a:first-child {
            overflow: hidden;
            text-overflow: ellipsis;
        }

/* Mobile view */
@media (max-width: 640.98px) {
    .top-row:not(.auth)[b-m8btvfte0r] {
        display: none;
    }

    .top-row.auth[b-m8btvfte0r] {
        justify-content: space-between;
    }

    .top-row[b-m8btvfte0r]  a,
    .top-row[b-m8btvfte0r]  .btn-link {
        margin-left: 0;
    }
}

/* Desktop view */
@media (min-width: 641px) {
    .page[b-m8btvfte0r] {
        flex-direction: row;
    }

    .sidebar[b-m8btvfte0r] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-m8btvfte0r] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

        .top-row.auth[b-m8btvfte0r]  a:first-child {
            flex: 1;
            text-align: right;
            width: 0;
        }

    .top-row[b-m8btvfte0r],
    article[b-m8btvfte0r] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

/* Article/content */
article[b-m8btvfte0r] {
    background-color: #161b22; /* same as main */
    border-radius: 6px;
    padding: 1rem;
    color: #e0e6f0;
}
