.bzg-emoji{
  max-width:980px;
  margin:30px auto;
  background:#fff;
  padding:22px;
  border-radius:14px;
  box-shadow:0 10px 30px rgba(0,0,0,.08);
  font-family:system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
}

.bzg-emoji h2{
  text-align:center;
  margin:0 0 14px;
}

#emoji-search{
  width:100%;
  padding:12px;
  border-radius:10px;
  border:1px solid #ccc;
  margin-bottom:10px;
}

.bzg-emoji__meta{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:10px;
  margin: 10px 0 18px;
  opacity:.85;
  font-size:.9rem;
}

.bzg-emoji__dot{opacity:.5}

.bzg-emoji__acc{
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:12px;
  margin-bottom:10px;
  overflow:hidden;
}

.bzg-emoji__acc summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  background:#f8fafc;
  user-select:none;
}

.bzg-emoji__acc summary::-webkit-details-marker{display:none}

.bzg-emoji__accTitle{
  font-weight:800;
}

.bzg-emoji__accCount{
  font-size:.85rem;
  opacity:.75;
  padding:4px 10px;
  border-radius:999px;
  background:#eef2ff;
  color:#1d4ed8;
  border:1px solid #c7d2fe;
}

.bzg-emoji__acc[open] summary{
  background:#e0e7ff;
}

.bzg-emoji__accBody{
  padding:14px;
  background:#fff;
}

.bzg-emoji__section{
  margin-top: 14px;
}

.bzg-emoji__section h3{
  margin:0 0 10px;
  padding-bottom:6px;
  border-bottom:2px solid #e5e7eb;
  font-size:1.1rem;
}

.bzg-emoji__grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(56px,1fr));
  gap:10px;
}

.emoji-btn{
  width:100%;
  font-size:28px;
  padding:12px 8px;
  border-radius:12px;
  border:1px solid #e5e7eb;
  background:#f8fafc;
  cursor:pointer;
  line-height:1;
}

.emoji-btn:hover{background:#e0e7ff}

.emoji-btn.copied{
  background:#bbf7d0;
  border-color:#86efac;
}

.bzg-emoji__empty{
  padding:22px;
  text-align:center;
  background:#f1f5f9;
  border-radius:12px;
  opacity:.8;
}

.bzg-emoji__note{
  margin-top:18px;
  font-size:.85em;
  opacity:.8;
  text-align:center;
}

@media (max-width:520px){
  .bzg-emoji{padding:16px}
  .bzg-emoji__grid{
    grid-template-columns:repeat(auto-fill,minmax(52px,1fr));
    gap:8px;
  }
  .emoji-btn{font-size:26px}
}
