.resizer {
    position: relative;
    width: 2.5px;
    margin: 0 3.75px 0 var(--space-2);
    background-color: var(--color-border);
    cursor: col-resize;
}

.resizer:has(.resizer-handle[data-hidden="true"]) {
    width: 0px;
}

.resizer:hover .resizer-handle,
.resizer:active .resizer-handle {
    background-color: var(--color-accent);
}

.resizer-handle {
    position: absolute;
    width: 5px;
    height: 100%;
    left: -1.25px;
    border-radius: var(--radius-full);
    transition: background-color var(--duration-slow) var(--ease);
}

.sidebar {
    display: none;
    overflow-y: auto;
}

.sidebar.open {
    display: flex;
    width: 10%;
    min-width: max(10%, 9rem);
    max-width: 60%;
}

.entity-block {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
    padding: var(--space-4);
}

.entity {
    flex: none;
    color: inherit;
    cursor: pointer;
    width: 100%;
    height: var(--control-height);
    padding: 0 var(--space-2);
    background-color: var(--color-surface);
    border: var(--border);
    border-radius: var(--radius-md);
    font-size: var(--text-sm);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.entity:hover,
.keyboard .entity:focus {
    background-color: var(--color-fill);
}

.entity:active {
    background-color: var(--color-fill-strong);
}
