.emoji-picker-container {
    --emoji-size: 48px;
    margin: 1em 0;
}

.emoji-picker-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5em;
    justify-content: flex-start;
}

.emoji-picker-btn {
    font-size: var(--emoji-size);
    line-height: 1.1;
    padding: 0.15em 0.25em;
    background: #fafbfc;
    border: 1.5px solid #dcdcdc;
    border-radius: 8px;
    cursor: pointer;
    transition: border-color 0.2s, box-shadow 0.15s;
    user-select: none;
    filter: grayscale(0%);
}
.emoji-picker-btn:hover,
.emoji-picker-btn:focus {
    border-color: #8bbcf7;
    background: #eaf4fe;
    box-shadow: 0 2px 8px rgba(80,120,220,.07);
    outline: none;
}
.emoji-picker-btn.selected {
    border-color: #1877f2;
    background: #def2ff;
    filter: drop-shadow(0 0 7px #78d0ff88);
}
@media (max-width: 600px) {
    .emoji-picker-btn {
        font-size: calc(var(--emoji-size) * 0.7);
    }
}