.rosu-graph-card {
  margin-top: 12px;
  position: relative;
  z-index: -1; /* keep below tag suggestions */
}

.rosu-graph-header { align-items: baseline; }

.rosu-graph-title {
  margin: 0 0 4px 0;
  font-size: 18px;
}

.rosu-graph-sub { margin: 0; color: #bbb; font-size: 12px; }

.rosu-mods-rail {
  position: absolute;
  right: 14px;
  top: 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  z-index: 2;
}
.rosu-graph-header { display: flex; position: relative; }
.rosu-mods-rail .mod-toggle {
  background: #1b1f24;
  color: #eaeef2;
  border: 1px solid rgba(255,255,255,0.18);
  border-radius: 6px;
  padding: 4px 8px;
  cursor: pointer;
  font-size: 12px;
}
.rosu-mods-rail .mod-toggle.active {
  background: #0d6efd;
  border-color: #0d6efd;
  color: #fff;
}

.rosu-graph-container {
  position: relative;
  background: #101214;
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 8px;
  padding: 8px;

}

/* Zoom reset button */
.rosu-graph-container .rosu-zoom-reset {
  position: absolute;
  bottom: 8px;
  right: 8px;
  background: #1b1f24;
  color: #eaeef2;
  border: 1px solid rgba(255,255,255,0.18);
  border-radius: 6px;
  padding: 4px 8px;
  font-size: 12px;
  cursor: pointer;
  z-index: 3;
}
.rosu-graph-container .rosu-zoom-reset:hover {
  border-color: #0d6efd;
}

#rosuGraphCanvas {
  width: 100%;
  height: 220px;
  display: block;
}

.tag-stamps-panel {
  margin-top: 8px;
}
.tag-stamps-row {
  display: flex;
  gap: 8px;
  align-items: center;
  margin-bottom: 6px;
}
.tag-stamps-row select,
.tag-stamps-row button {
  background: #1b1f24;
  color: #eaeef2;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 6px;
  padding: 6px 10px;
}
.tag-stamps-legends { font-size: 12px; color: #bbb; }
.tag-stamps-legends .tag-toggle {
  border: 1px solid rgba(255,255,255,0.3);
  color: #fff;
  padding: 4px 8px;
  border-radius: 6px;
  cursor: pointer;
}
.tag-stamps-legends .tag-toggle.hovered {
  border-width: 3px !important;
  padding: 2px 6px;
  border-color: #fff !important;
  box-shadow: 0 0 0 2px rgba(255,255,255,0.15) inset;
}
.tag-stamps-legends .tag-toggle + .tag-toggle { margin-left: 6px; }



/* Info icon + tooltip for graph usage */
.rosu-graph-container .rosu-graph-info-wrap {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 3;
}
.rosu-graph-container .rosu-graph-info {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #1b1f24;
  color: #eaeef2;
  border: 1px solid rgba(255,255,255,0.3);
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  line-height: 1;
  cursor: help;
}
.rosu-graph-container .rosu-graph-info:hover,
.rosu-graph-container .rosu-graph-info:focus {
  border-color: #0d6efd;
  outline: none;
}
.rosu-graph-container .rosu-graph-tooltip {
  position: absolute;
  top: 26px;
  left: 0;
  background: rgba(0,0,0,0.85);
  color: #fff;
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 6px;
  padding: 8px 10px;
  font-size: 12px;
  width: 280px;
  max-width: calc(100vw - 24px);
  box-shadow: 0 8px 24px rgba(0,0,0,0.35);
  opacity: 0;
  transform: translateY(-4px);
  pointer-events: none;
  transition: opacity .12s ease, transform .12s ease;
  z-index: 4;
}
.rosu-graph-container .rosu-graph-info-wrap:hover .rosu-graph-tooltip,
.rosu-graph-container .rosu-graph-info:focus + .rosu-graph-tooltip,
.rosu-graph-container .rosu-graph-info:focus-visible + .rosu-graph-tooltip {
  opacity: 1;
  transform: translateY(0);
}
.rosu-graph-container .rosu-graph-tooltip div + div { color: #ddd; margin-top: 4px; }

