/*--------------------------------------------------------------
# Sidebar
--------------------------------------------------------------*/

.widget-area {


}
.sidebar-type-explorer{
    background-color: rgba(255, 255, 255, 0.5);
    padding: 1.5rem 3rem 1rem;
    border-radius: 0.5rem;
}
.sidebar-type-explorer h3 {
    text-align: center;
    margin-bottom: 1.5rem;
    margin-top: 0;
    font-style: italic;
}
.types-contents {
    padding: 0;
    list-style-type: none;
    display: flex;
    flex-direction: column;
    margin: 0 1rem 0 0;
}

.type-content {
    cursor: pointer;
    margin-bottom: 1rem;
    font-size: 1rem;
    display: flex;
}
.type-content.active {
    font-weight: bold;
}
.types-contents li {
    text-align: center;
    position: relative; /* allow safe positioning if needed later */
}
/* Arrow indicator will be injected on the anchor, so keep li::before disabled */
.types-contents li::before {
    content: none !important;
}
.types-contents li a {
    display: block;
    margin: 0 auto;
    color: var(--color-primary-dark);
    transition: color 0.3s ease, border-bottom 0.3s ease;
    text-decoration: none;
    border-bottom: solid 1px var(--color-underline) ;
}

.types-contents li a:hover,
.types-contents li a:focus {
    text-decoration: none;
    border-bottom: solid 1px var(--color-primary);
}


/* Remove right-side vertical bar indicator; replace with inline arrow before text */
.types-contents li.active:after {
    content: none;
}
.types-contents li:after {
    content: none;
}

/* Inline arrow before link text (right-aligned list) */
.types-contents li a::before {
    content: "";
    margin-left: 0.5rem; /* space between text and arrow when present */
}

/* Hover (non-active): show gray arrow */
.types-contents li:hover a::before,
.types-contents li a:focus::before {
    content: "➤";
    color: var(--color-underline);

}

/* Active item: primary arrow (takes precedence over hover) */
.types-contents li.active a::before {
    content: "➤";
    color: var(--color-primary);
}

/* Optional: ensure active text remains bold as defined */
.type-content.active {
    font-weight: bold;
}

/* Sticky sidebar on desktop (two-column layouts) */
@media (min-width: 769px) {
  .two-column-right .widget-area,
  .two-column-enneatype .widget-area {
    position: sticky;
    top: calc(60px - 1rem); /* desktop navbar height from navbar.css */
    align-self: flex-start; /* ensure it sticks to the top of the flex row */
  }
}


.info { /* TODO: this is a fix for shortcode [sidebar-box-desktop] that use another var. */
    background: var(--color-primary) !important;
}
.info .enneagram-button {
    background: white;
    color: var(--color-primary) !important;
    margin-top: 15px;
    width: 100%;
    padding: 10px;
}
.info .enneagram-button.sm {
    font-size: 16px;
    padding: 5px 10px;
    min-width: 108px !important;
    min-height: 30px !important;
    display: block;
}