/* top background color - narrow view */
.wy-nav-top {
    background: rgb(251, 251, 251) !important;
    border-bottom: 1px solid #adadad;
}

/* top text color - narrow view */
.wy-nav-top a, .wy-nav-top i {
    color: black !important;
}

/* top left background color */
.wy-side-nav-search {
    background-color: rgb(251, 251, 251) !important;
    border-right: 1px solid #adadad;
}
/* name/logo text color */
.wy-side-nav-search a {
    color: black !important;
}

/* sidebar background color */
.wy-side-nav-search, .wy-nav-side {
    background: #1c1f2a;
}

/* search input field border color */
.wy-side-nav-search input[type=text] {
    border-color: #6e6b6b;
}

/* tree item indentation and +/- icon area */
.wy-menu-vertical ul {
    margin-left: 0.5em;
}

/* highlight for the current section */
.wy-menu-vertical li.current > a,
.wy-menu-vertical li.toctree-l1.current > a,
.wy-menu-vertical li.toctree-l2.current > a,
.wy-menu-vertical li.toctree-l3.current > a 
{
    background: none!important;      /* No background */
    font-weight: 700 !important;     /* Bold text */
}

/* spacing adjustment for expand/collapse icons */
.wy-menu-vertical .toctree-l1 > a:before {
    margin-right: 4px;
}

/* custom style for rubric headings to make them larger */
.rst-content .rubric {
    font-size: 1.5em;
    font-weight: 800;
    margin-top: 1.8em;
    margin-bottom: 1em;
    padding-bottom: 0.3em;
}

/* container for side-by-side images */
.side-by-side {
    display: flex;
    align-items: flex-start; /* align items to the top */
    gap: 0.5em; /* add space between images */
}

/* make direct children of the container equal-width columns */
.side-by-side > * {
    flex: 1; /* each child takes up equal space */
}

/* Prevent menu text from being cut off and allow wrapping of long entries */
.wy-menu-vertical a {
    display: block !important;
    width: 100% !important;        /* Use full sidebar width */
    max-width: 100% !important;
    white-space: normal !important; /* Enable line wrapping */
    overflow: visible !important;
    text-overflow: clip !important;
    overflow-wrap: anywhere !important; /* Break long words if necessary */
}

/* Version badge placed at top-right, aligned with the main title */
.version-badge {
    float: right;
    margin-top: -40px;   /* adjust for perfect vertical alignment */
    padding: 6px 12px;
    background: #e8f0ff;
    border-radius: 6px;
    font-weight: 600;
    color: #000000;
    font-size: 15px;
    border: 1px solid #d0d8e8;
}

/* version warning banner (sphinx-multiversion) */
.version-warning {
    margin: 16px 0;
    padding: 12px 16px;
    border-left: 4px solid #f59e0b;
    background: #fff7ed;
    color: #7c2d12;
    font-size: 0.95rem;
}

.version-warning a {
    color: #2563eb;
    text-decoration: underline;
    font-weight: 600;
}