+/**
+ * GTK_STYLE_CLASS_VIEW:
+ *
+ * A CSS class defining a view, such as iconviews or treeviews.
+ *
+ * This is used in #GtkTreeView, #GtkIconView, #GtkTextView,
+ * as well as #GtkCalendar.
+ */
+#define GTK_STYLE_CLASS_VIEW "view"
+
+/**
+ * GTK_STYLE_CLASS_SIDEBAR:
+ *
+ * A CSS class defining a sidebar, such as the left side in
+ * a file chooser.
+ *
+ * This is used in #GtkFileChooser and in #GtkAssistant.
+ */
+#define GTK_STYLE_CLASS_SIDEBAR "sidebar"
+
+/**
+ * GTK_STYLE_CLASS_IMAGE:
+ *
+ * A CSS class defining an image, such as the icon in an entry.
+ *
+ * This is used when rendering icons in #GtkEntry.
+ */
+#define GTK_STYLE_CLASS_IMAGE "image"
+
+/**
+ * GTK_STYLE_CLASS_HIGHLIGHT:
+ *
+ * A CSS class defining a highlighted area, such as headings in
+ * assistants and calendars.
+ *
+ * This is used in #GtkAssistant and #GtkCalendar.
+ */
+#define GTK_STYLE_CLASS_HIGHLIGHT "highlight"
+
+/**
+ * GTK_STYLE_CLASS_FRAME:
+ *
+ * A CSS class defining a frame delimiting content, such as
+ * #GtkFrame or the scrolled window frame around the
+ * scrollable area.
+ *
+ * This is used in #GtkFrame and #GtkScrollbar.
+ */
+#define GTK_STYLE_CLASS_FRAME "frame"
+
+/**
+ * GTK_STYLE_CLASS_DND:
+ *
+ * A CSS class for a drag-and-drop indicator.
+ *
+ * This is used when drawing an outline around a potential
+ * drop target during DND.
+ */
+#define GTK_STYLE_CLASS_DND "dnd"
+
+/**
+ * GTK_STYLE_CLASS_PANE_SEPARATOR:
+ *
+ * A CSS class for a pane separator, such as those in #GtkPaned.
+ *
+ * Used in #GtkPaned.
+ */
+#define GTK_STYLE_CLASS_PANE_SEPARATOR "pane-separator"
+
+/**
+ * GTK_STYLE_CLASS_SEPARATOR:
+ *
+ * A CSS class for a separator.
+ *
+ * This is used in #GtkSeparator, #GtkSeparatorMenuItem,
+ * #GtkSeparatorToolItem, and when drawing separators in #GtkTreeView.
+ */
+#define GTK_STYLE_CLASS_SEPARATOR "separator"
+
+/**
+ * GTK_STYLE_CLASS_INFO:
+ *
+ * A CSS class for an area displaying an informational message,
+ * such as those in infobars.
+ *
+ * This is used by #GtkInfoBar.
+ */
+#define GTK_STYLE_CLASS_INFO "info"
+
+/**
+ * GTK_STYLE_CLASS_WARNING:
+ *
+ * A CSS class for an area displaying a warning message,
+ * such as those in infobars.
+ *
+ * This is used by #GtkInfoBar.
+ */
+#define GTK_STYLE_CLASS_WARNING "warning"
+
+/**
+ * GTK_STYLE_CLASS_QUESTION:
+ *
+ * A CSS class for an area displaying a question to the user,
+ * such as those in infobars.
+ *
+ * This is used by #GtkInfoBar.
+ */
+#define GTK_STYLE_CLASS_QUESTION "question"
+
+/**
+ * GTK_STYLE_CLASS_ERROR:
+ *
+ * A CSS class for an area displaying an error message,
+ * such as those in infobars.
+ *
+ * This is used by #GtkInfoBar.
+ */
+#define GTK_STYLE_CLASS_ERROR "error"
+
+/**
+ * GTK_STYLE_CLASS_HORIZONTAL:
+ *
+ * A CSS class for horizontally layered widgets.
+ *
+ * This is used by widgets implementing #GtkOrientable.
+ */
+#define GTK_STYLE_CLASS_HORIZONTAL "horizontal"
+
+/**
+ * GTK_STYLE_CLASS_VERTICAL:
+ *
+ * A CSS class for vertically layered widgets.
+ *
+ * This is used by widgets implementing #GtkOrientable.
+ */
+#define GTK_STYLE_CLASS_VERTICAL "vertical"
+
+/**
+ * GTK_STYLE_CLASS_TOP:
+ *
+ * A CSS class to indicate an area at the top of a widget.
+ *
+ * This is used by widgets that can render an area in different
+ * positions, such as tabs in a #GtkNotebook.
+ */
+#define GTK_STYLE_CLASS_TOP "top"
+
+/**
+ * GTK_STYLE_CLASS_BOTTOM:
+ *
+ * A CSS class to indicate an area at the bottom of a widget.
+ *
+ * This is used by widgets that can render an area in different
+ * positions, such as tabs in a #GtkNotebook.
+ */
+#define GTK_STYLE_CLASS_BOTTOM "bottom"
+
+/**
+ * GTK_STYLE_CLASS_LEFT:
+ *
+ * A CSS class to indicate an area at the left of a widget.
+ *
+ * This is used by widgets that can render an area in different
+ * positions, such as tabs in a #GtkNotebook.
+ */
+#define GTK_STYLE_CLASS_LEFT "left"
+
+/**
+ * GTK_STYLE_CLASS_RIGHT:
+ *
+ * A CSS class to indicate an area at the right of a widget.
+ *
+ * This is used by widgets that can render an area in different
+ * positions, such as tabs in a #GtkNotebook.
+ */
+#define GTK_STYLE_CLASS_RIGHT "right"
+
+/**
+ * GTK_STYLE_CLASS_PULSE:
+ *
+ * A CSS class to use when rendering a pulse in an indeterminate progress bar.
+ *
+ * This is used by #GtkProgressBar and #GtkEntry.
+ */
+#define GTK_STYLE_CLASS_PULSE "pulse"
+
+/**
+ * GTK_STYLE_CLASS_ARROW:
+ *
+ * A CSS class used when rendering an arrow element.
+ *
+ * Note that #gtk_render_arrow automatically adds this style class
+ * to the style context when rendering an arrow element.
+ */
+#define GTK_STYLE_CLASS_ARROW "arrow"
+
+/**
+ * GTK_STYLE_CLASS_OSD:
+ *
+ * A CSS class used when rendering an OSD (On Screen Display) element,
+ * on top of another container.
+ */
+#define GTK_STYLE_CLASS_OSD "osd"
+
+/**
+ * GTK_STYLE_CLASS_LEVEL_BAR:
+ *
+ * A CSS class used when rendering a level indicator, such
+ * as a battery charge level, or a password strength.
+ *
+ * This is used by #GtkLevelBar.
+ */
+#define GTK_STYLE_CLASS_LEVEL_BAR "level-bar"
+
+/**
+ * GTK_STYLE_CLASS_CURSOR_HANDLE:
+ *
+ * A CSS class used when rendering a drag handle for
+ * text selection.
+ */
+#define GTK_STYLE_CLASS_CURSOR_HANDLE "cursor-handle"
+
+/**
+ * GTK_STYLE_CLASS_INSERTION_CURSOR:
+ *
+ * A CSS class used when rendering a drag handle for
+ * the insertion cursor position.
+ */
+#define GTK_STYLE_CLASS_INSERTION_CURSOR "insertion-cursor"
+