.ww-expandable {
    margin: 0;
}

.ww-expandable__toggle {
    width: fit-content;
    max-width: 100%;
    text-align: left;
    border: 0;
    background: transparent;
    padding: 0.38rem 0.5rem;
    border-radius: 0.4rem;
    color: #2e2e2e;
    font: inherit;
    display: flex;
    align-items: flex-start;
    gap: 0.35rem;
    cursor: pointer;
}

.ww-expandable__toggle:hover {
    background: #f1f5f9;
}

.ww-expandable--open .ww-expandable__toggle {
    background: #dbeafe;
    color: #0d3b7a;
}

.ww-expandable__caret {
    width: 1rem;
    height: 1rem;
    flex: 0 0 1rem;
    opacity: 0.75;
    transition: transform 0.2s ease, opacity 0.12s ease;
}

.ww-expandable__toggle[aria-expanded="true"] .ww-expandable__caret,
.ww-expandable__list-btn[aria-expanded="true"] .ww-expandable__caret,
.ww-expandable__toggle-btn[aria-expanded="true"] .ww-expandable__caret {
    opacity: 1;
    transform: rotate(90deg);
}

.ww-expandable__items {
    display: grid;
    grid-template-rows: 0;
    overflow: hidden;
    width: 100%;
    transition: grid-template-rows 0.24s ease;
}

.ww-expandable__items > * {
    min-height: 0;
    margin-left: 1.1rem;
    padding-left: 0.45rem;
    border-left: 1px solid #e2e8f0;
}

.ww-expandable--open > .ww-expandable__items {
    grid-template-rows: 1fr;
}

/** This variation of the toggle button is more compact and looks more like a button than a list item */
.ww-expandable__toggle-btn {
    box-sizing: border-box;
    padding: 4px;
    height: 22px;
    border: 1px solid #ECECEC;
    color: #000;
    background-color: #FFF;
    font-size: 12px;
    border-top-color: #ccc;
    text-align: center;
    border-bottom-right-radius: 2px;
    border-bottom-left-radius: 2px;
    cursor: default;
    transition: color .5s, border-color .5s, background-color .5s;
    -webkit-transition: color .5s, border-color .5s, background-color .5s;
}

.ww-expandable__toggle-btn span {
    color: #222;
    vertical-align: top;
    margin-left: -2px;
}

.ww-expandable__toggle-btn:hover {
    border-color: #999;
    background-color: #ECECEC;
}