.imx-jg-item { position: relative; }
.imx-notes-star {
  position: absolute;
  top: 6px;
  left: 6px;
  z-index: 3;
  width: 22px;
  height: 22px;
  border-radius: 999px;
  background: #e6c15a;
  color: #111;
  font-size: 13px;
  line-height: 22px;
  text-align: center;
  pointer-events: none;
}
.imx-jg-item.is-noted { box-shadow: inset 0 0 0 2px #e6c15a; }
.imx-notes-lb {
  position: fixed;
  inset: 5vh 5vw;
  width: 90vw;
  height: 90vh;
  z-index: 100000;
  background: rgba(6, 6, 8, 0.96);
  display: flex;
  gap: 12px;
  padding: 52px 16px 16px;
  box-shadow: 0 0 0 100vw rgba(0, 0, 0, 0.55);
}
.imx-notes-x { position: absolute; top: 10px; right: 14px; border: 0; background: transparent; color: #fff; font-size: 28px; cursor: pointer; }
.imx-notes-view { flex: 1; min-width: 0; display: flex; align-items: center; justify-content: center; }
.imx-notes-view img { max-width: 100%; max-height: 100%; object-fit: contain; }
.imx-jg-lb.has-notes { display: flex; align-items: stretch; padding-right: 336px; }
.imx-jg-lb .imx-notes-side {
  position: absolute;
  top: 52px;
  right: 16px;
  bottom: 16px;
  width: 300px;
  overflow: auto;
  background: #161616;
  color: #eee;
  border-radius: 12px;
  padding: 14px;
}
.imx-notes-title { margin: 0 0 10px; color: #aaa; font-size: 0.8rem; }
.imx-notes-tags { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 10px; }
.imx-notes-tags a { background: #2a2a2e; color: #e6c15a; border-radius: 999px; padding: 3px 8px; font-size: 0.78rem; text-decoration: none; }
.imx-notes-nav { display: flex; gap: 8px; margin-bottom: 8px; }
.imx-notes-nav button { border: 0; background: #2a2a2e; min-width: 44px; height: 32px; border-radius: 4px; cursor: pointer; opacity: 0.55; }
.imx-notes-nav button.is-on { opacity: 1; }
.imx-notes-desc { font-size: 0.92rem; line-height: 1.5; }
.imx-notes-desc[hidden] { display: none !important; }
.imx-notes-comment { list-style: none; margin: 10px 0 0; padding-top: 8px; border-top: 1px solid #2a2a2e; }
.imx-notes-form textarea, .imx-notes-form button { width: 100%; margin-top: 8px; }
.imx-notes-tag-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 10px; }
.imx-notes-tag-grid .imx-jg-item { margin: 0; }
.imx-notes-tag-grid img { width: 100%; aspect-ratio: 1; object-fit: cover; display: block; }
