.OwO {
    position: relative;
    user-select: none;
}

.OwO .OwOlogo {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    color: var(--color-400);
    background: var(--color-50);
    border: 0.0625rem solid var(--color-300);
    border-radius: var(--radius-small);
    font-size: 0.75rem;
    font-family: var(--font-family);
    padding: 0.25rem 0.5rem;
    cursor: pointer;
    transition: color var(--transition), border-color var(--transition);
}

.OwO .OwOlogo:hover,
.OwO.OwO-open .OwOlogo {
    color: var(--color-900);
    border-color: var(--color-500);
}

.OwO .OwO-body {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    bottom: calc(100% + 0.25rem);
    background: var(--scheme);
    border: 0.0625rem solid var(--color-300);
    border-radius: var(--radius-small);
    z-index: 100;
    box-shadow: 0 -4px 16px color-mix(in srgb, var(--color-700), transparent 85%);
}

.OwO.OwO-open .OwO-body {
    display: block;
}

.OwO .OwO-body .OwO-items {
    display: none;
    padding: 0.75rem;
    margin: 0;
    overflow-y: auto;
    overflow-x: hidden;
    font-size: 0;
    max-height: 200px;
}

.OwO .OwO-body .OwO-items-show {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.OwO .OwO-body .OwO-items .OwO-item {
    list-style-type: none;
    background: var(--color-50);
    border: 0.0625rem solid var(--color-200);
    padding: 0.25rem 0.5rem;
    border-radius: var(--radius-small);
    display: inline-block;
    font-size: 0.75rem;
    line-height: 1.25rem;
    cursor: pointer;
    transition: background-color var(--transition), border-color var(--transition);
}

.OwO .OwO-body .OwO-items .OwO-item:hover {
    background: var(--color-100);
    border-color: var(--color-400);
}

.OwO .OwO-body .OwO-items-emoji .OwO-item {
    font-size: 1.25rem;
    line-height: 1.5rem;
    padding: 0.25rem;
}

.OwO .OwO-body .OwO-items-image .OwO-item {
    max-width: calc(25% - 0.5rem);
    box-sizing: border-box;
    padding: 0.25rem;
}

.OwO .OwO-body .OwO-items-image .OwO-item img {
    max-width: 100%;
    display: block;
}

.OwO .OwO-body .OwO-bar {
    width: 100%;
    border-block-start: 0.0625rem solid var(--color-200);
    background: var(--color-50);
    border-radius: 0 0 var(--radius-small) var(--radius-small);
}

.OwO .OwO-body .OwO-bar .OwO-packages {
    margin: 0;
    padding: 0;
    font-size: 0;
    display: flex;
}

.OwO .OwO-body .OwO-bar .OwO-packages li {
    list-style-type: none;
    display: inline-block;
    line-height: 1.75rem;
    font-size: 0.75rem;
    font-family: var(--font-family);
    padding: 0 0.75rem;
    cursor: pointer;
    color: var(--color-500);
    transition: background-color var(--transition), color var(--transition);
}

.OwO .OwO-body .OwO-bar .OwO-packages li:first-child {
    border-radius: 0 0 0 var(--radius-small);
}

.OwO .OwO-body .OwO-bar .OwO-packages li:hover {
    background: var(--color-100);
    color: var(--color-900);
}

.OwO .OwO-body .OwO-bar .OwO-packages .OwO-package-active {
    background: var(--color-100);
    color: var(--color-900);
    font-weight: 600;
}
