body {
    overflow-x: hidden;
}

/* Images and media in rendered markdown (README files, release notes, articles). Inline, so that badges can sit side by side. */
.responsive-img,
.wiki-body img,
.wiki-body video {
    max-width: 100%;
    height: auto;
}

/* GitHub style alerts: > [!NOTE] */
.markdown-alert {
    padding: 0.5rem 1rem;
    margin-bottom: 1rem;
    border-left: 0.25rem solid #d0d7de;
}

    .markdown-alert > .markdown-alert-title {
        font-weight: 600;
        margin-bottom: 0.25rem;
    }

.markdown-alert-note { border-color: #0969da; }
.markdown-alert-tip { border-color: #1a7f37; }
.markdown-alert-important { border-color: #8250df; }
.markdown-alert-warning { border-color: #9a6700; }
.markdown-alert-caution { border-color: #cf222e; }

#blazor-error-ui {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }

.btn-thin {
    padding: 1px 6px;
    font-size: 14px;
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
    position: relative;
    min-height: 100%;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
    text-align: start;
}

.btn-thin {
    padding: 4px 8px; /* Adjust padding to make it thinner */
    font-size: 12px; /* Optionally reduce the font size */
    line-height: 1.2; /* Adjust line height for vertical alignment */
}

@media (max-width: 575.98px) {
    .sidebar-wrapper {
        position: relative;
    }

    #sidebar {
        position: absolute;
        top: 0;
        left: 0;
        width: 200px;
        transform: translateX(-100%);
        z-index: 1050;
        background: white;
        box-shadow: 2px 0 5px rgba(0, 0, 0, 0.1);
    }

        #sidebar.show {
            transform: translateX(0);
        }
}

.sidebar {
    width: 200px;
    background-color: #f8f9fa;
    flex-shrink: 0;
}

.navbar-toggler {
    position: relative;
    z-index: 1100;
}

.menu-link {
    color: #1f89cc;
}

    .menu-link:hover {
        color: #0055aa;
        text-decoration: none;
    }


.badge-tag {
    display: inline-block;
    padding: 0.35em 0.65em;
    font-size: 0.75em;
    font-weight: 500;
    border: 1px solid #ccc;
    background-color: transparent;
    color: inherit;
    border-radius: 999px;
    line-height: 1;
    white-space: nowrap;
    vertical-align: baseline;
}

    .badge-tag:hover {
        border-color: #999;
        background-color: #f8f9fa;
    }

.badge-outline {
    display: inline-block;
    padding: 0.35em 0.65em;
    font-size: 0.75em;
    font-weight: 700;
    border: 1px solid #ccc;
    background-color: transparent;
    color: inherit;
    border-radius: 999px;
    line-height: 1;
    white-space: nowrap;
    vertical-align: baseline;
}

    .badge-outline:hover {
        border-color: #999;
        background-color: #f8f9fa;
    }

.table-modern {
    border-collapse: collapse;
    width: 100%;
    font-size: 0.875rem; /* table-sm */
}

    .table-modern th,
    .table-modern td {
        padding: 0.5rem;
        border: 1px solid #dee2e6;
    }

    .table-modern tbody tr:nth-child(odd) {
        background-color: #f9f9f9; /* table-striped */
    }

    .table-modern tbody tr:hover {
        background-color: #f1f1f1; /* table-hover */
    }

pre code.hljs {
    display: block;
    overflow-x: auto;
    white-space: pre;
    word-break: normal;
    max-width: 80vw;
    box-sizing: border-box;
}
