Bug 1264238 - Part 2: Sort nsCSSPropList.h entries. r=dholbert
authorCameron McCormack <cam@mcc.id.au>
Thu, 14 Apr 2016 09:55:47 +1000
changeset 331008 04af26577b0d8a3329d46b1f48f19f0a30fba631
parent 331007 e79a7ee93d9c43cc2b512a964b6487fcca6254b8
child 331009 4c1cac3142b21dad506afee4bcd58efd4ba518b9
push id6048
push userkmoir@mozilla.com
push dateMon, 06 Jun 2016 19:02:08 +0000
treeherdermozilla-beta@46d72a56c57d [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersdholbert
bugs1264238
milestone48.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1264238 - Part 2: Sort nsCSSPropList.h entries. r=dholbert
layout/style/nsCSSPropList.h
--- a/layout/style/nsCSSPropList.h
+++ b/layout/style/nsCSSPropList.h
@@ -317,110 +317,49 @@
 // :first-letter are: font properties, 'text-decoration',
 // 'text-transform', 'letter-spacing', 'word-spacing' (when
 // appropriate), 'line-height', 'float', 'vertical-align' (only if
 // 'float' is 'none'), margin properties, padding properties, border
 // properties, 'color', and background properties.  We also allow
 // 'text-shadow' (see above) and 'box-shadow' (which is like the
 // border properties).
 
-CSS_PROP_DISPLAY(
-    -moz-appearance,
-    appearance,
-    CSS_PROP_DOMPROP_PREFIXED(Appearance),
-    CSS_PROPERTY_PARSE_VALUE,
+// Please keep these sorted by property name, ignoring any "-moz-",
+// "-webkit-" or "-x-" prefix.
+
+CSS_PROP_POSITION(
+    align-content,
+    align_content,
+    AlignContent,
+    CSS_PROPERTY_PARSE_FUNCTION,
     "",
     VARIANT_HK,
-    kAppearanceKTable,
+    kAutoCompletionAlignJustifyContent,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
-CSS_PROP_SHORTHAND(
-    -moz-outline-radius,
-    _moz_outline_radius,
-    CSS_PROP_DOMPROP_PREFIXED(OutlineRadius),
+CSS_PROP_POSITION(
+    align-items,
+    align_items,
+    AlignItems,
     CSS_PROPERTY_PARSE_FUNCTION,
-    "")
-CSS_PROP_OUTLINE(
-    -moz-outline-radius-topleft,
-    _moz_outline_radius_topLeft,
-    CSS_PROP_DOMPROP_PREFIXED(OutlineRadiusTopleft),
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_VALUE_NONNEGATIVE |
-        CSS_PROPERTY_STORES_CALC |
-        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
-    "",
-    0,
-    nullptr,
-    offsetof(nsStyleOutline, mOutlineRadius),
-    eStyleAnimType_Corner_TopLeft)
-CSS_PROP_OUTLINE(
-    -moz-outline-radius-topright,
-    _moz_outline_radius_topRight,
-    CSS_PROP_DOMPROP_PREFIXED(OutlineRadiusTopright),
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_VALUE_NONNEGATIVE |
-        CSS_PROPERTY_STORES_CALC |
-        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
-    "",
-    0,
-    nullptr,
-    offsetof(nsStyleOutline, mOutlineRadius),
-    eStyleAnimType_Corner_TopRight)
-CSS_PROP_OUTLINE(
-    -moz-outline-radius-bottomright,
-    _moz_outline_radius_bottomRight,
-    CSS_PROP_DOMPROP_PREFIXED(OutlineRadiusBottomright),
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_VALUE_NONNEGATIVE |
-        CSS_PROPERTY_STORES_CALC |
-        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
-    "",
-    0,
-    nullptr,
-    offsetof(nsStyleOutline, mOutlineRadius),
-    eStyleAnimType_Corner_BottomRight)
-CSS_PROP_OUTLINE(
-    -moz-outline-radius-bottomleft,
-    _moz_outline_radius_bottomLeft,
-    CSS_PROP_DOMPROP_PREFIXED(OutlineRadiusBottomleft),
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_VALUE_NONNEGATIVE |
-        CSS_PROPERTY_STORES_CALC |
-        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
-    "",
-    0,
-    nullptr,
-    offsetof(nsStyleOutline, mOutlineRadius),
-    eStyleAnimType_Corner_BottomLeft)
-CSS_PROP_TEXT(
-    -moz-tab-size,
-    _moz_tab_size,
-    CSS_PROP_DOMPROP_PREFIXED(TabSize),
-    CSS_PROPERTY_PARSE_VALUE |
-        CSS_PROPERTY_VALUE_NONNEGATIVE,
-    "",
-    VARIANT_HI,
-    nullptr,
-    offsetof(nsStyleText, mTabSize),
-    eStyleAnimType_None)
-#ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
-CSS_PROP_FONT(
-    -x-system-font,
-    _x_system_font,
-    CSS_PROP_DOMPROP_PREFIXED(SystemFont),
-    CSS_PROPERTY_INTERNAL |
-        CSS_PROPERTY_PARSE_INACCESSIBLE |
-        CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
-        CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
-    "",
-    0,
-    kFontKTable,
+    "",
+    VARIANT_HK,
+    kAutoCompletionAlignItems,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
-#endif // !defined(CSS_PROP_LIST_EXCLUDE_INTERNAL)
+CSS_PROP_POSITION(
+    align-self,
+    align_self,
+    AlignSelf,
+    CSS_PROPERTY_PARSE_FUNCTION,
+    "",
+    VARIANT_HK,
+    kAutoCompletionAlignJustifySelf,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
 CSS_PROP_SHORTHAND(
     all,
     all,
     All,
     CSS_PROPERTY_PARSE_FUNCTION,
     "layout.css.all-shorthand.enabled")
 CSS_PROP_SHORTHAND(
     animation,
@@ -516,16 +455,36 @@ CSS_PROP_DISPLAY(
     AnimationTimingFunction,
     CSS_PROPERTY_PARSE_VALUE_LIST |
         CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
     "",
     VARIANT_KEYWORD | VARIANT_TIMING_FUNCTION, // used by list parsing
     kTransitionTimingFunctionKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
+CSS_PROP_DISPLAY(
+    -moz-appearance,
+    appearance,
+    CSS_PROP_DOMPROP_PREFIXED(Appearance),
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HK,
+    kAppearanceKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_DISPLAY(
+    backface-visibility,
+    backface_visibility,
+    BackfaceVisibility,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HK,
+    kBackfaceVisibilityKTable,
+    offsetof(nsStyleDisplay, mBackfaceVisibility),
+    eStyleAnimType_None)
 CSS_PROP_SHORTHAND(
     background,
     background,
     Background,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_BACKGROUND(
     background-attachment,
@@ -536,16 +495,29 @@ CSS_PROP_BACKGROUND(
         CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
         CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
     "",
     VARIANT_KEYWORD, // used by list parsing
     kImageLayerAttachmentKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
 CSS_PROP_BACKGROUND(
+    background-blend-mode,
+    background_blend_mode,
+    BackgroundBlendMode,
+    CSS_PROPERTY_PARSE_VALUE_LIST |
+        CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
+        CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
+        CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
+    "layout.css.background-blend-mode.enabled",
+    VARIANT_KEYWORD, // used by list parsing
+    kBlendModeKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_BACKGROUND(
     background-clip,
     background_clip,
     BackgroundClip,
     CSS_PROPERTY_PARSE_VALUE_LIST |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
         CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
         CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
     "",
@@ -578,29 +550,16 @@ CSS_PROP_BACKGROUND(
         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED |
         CSS_PROPERTY_START_IMAGE_LOADS,
     "",
     VARIANT_IMAGE, // used by list parsing
     nullptr,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
 CSS_PROP_BACKGROUND(
-    background-blend-mode,
-    background_blend_mode,
-    BackgroundBlendMode,
-    CSS_PROPERTY_PARSE_VALUE_LIST |
-        CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
-        CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
-        CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
-    "layout.css.background-blend-mode.enabled",
-    VARIANT_KEYWORD, // used by list parsing
-    kBlendModeKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_BACKGROUND(
     background-origin,
     background_origin,
     BackgroundOrigin,
     CSS_PROPERTY_PARSE_VALUE_LIST |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
         CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
         CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
     "",
@@ -688,23 +647,16 @@ CSS_PROP_SHORTHAND(
     "")
 CSS_PROP_SHORTHAND(
     border-block-end,
     border_block_end,
     BorderBlockEnd,
     CSS_PROPERTY_PARSE_FUNCTION |
         CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
     "layout.css.vertical-text.enabled")
-CSS_PROP_SHORTHAND(
-    border-block-start,
-    border_block_start,
-    BorderBlockStart,
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
-    "layout.css.vertical-text.enabled")
 CSS_PROP_LOGICAL(
     border-block-end-color,
     border_block_end_color,
     BorderBlockEndColor,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
         CSS_PROPERTY_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL |
@@ -748,16 +700,23 @@ CSS_PROP_LOGICAL(
         CSS_PROPERTY_LOGICAL_END_EDGE,
     "layout.css.vertical-text.enabled",
     VARIANT_HKL | VARIANT_CALC,
     kBorderWidthKTable,
     BorderWidth,
     Border,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
+CSS_PROP_SHORTHAND(
+    border-block-start,
+    border_block_start,
+    BorderBlockStart,
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
+    "layout.css.vertical-text.enabled")
 CSS_PROP_LOGICAL(
     border-block-start-color,
     border_block_start_color,
     BorderBlockStartColor,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
         CSS_PROPERTY_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL |
@@ -830,16 +789,44 @@ CSS_PROP_BORDER(
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
     "",
     0,
     nullptr,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
 CSS_PROP_BORDER(
+    border-bottom-left-radius,
+    border_bottom_left_radius,
+    BorderBottomLeftRadius,
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
+        CSS_PROPERTY_VALUE_NONNEGATIVE |
+        CSS_PROPERTY_STORES_CALC |
+        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
+    "",
+    0,
+    nullptr,
+    offsetof(nsStyleBorder, mBorderRadius),
+    eStyleAnimType_Corner_BottomLeft)
+CSS_PROP_BORDER(
+    border-bottom-right-radius,
+    border_bottom_right_radius,
+    BorderBottomRightRadius,
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
+        CSS_PROPERTY_VALUE_NONNEGATIVE |
+        CSS_PROPERTY_STORES_CALC |
+        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
+    "",
+    0,
+    nullptr,
+    offsetof(nsStyleBorder, mBorderRadius),
+    eStyleAnimType_Corner_BottomRight)
+CSS_PROP_BORDER(
     border-bottom-style,
     border_bottom_style,
     BorderBottomStyle,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
     "",
     VARIANT_HK,
     kBorderStyleKTable,
@@ -878,50 +865,16 @@ CSS_PROP_SHORTHAND(
     "")
 CSS_PROP_SHORTHAND(
     border-image,
     border_image,
     BorderImage,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_BORDER(
-    border-image-source,
-    border_image_source,
-    BorderImageSource,
-    CSS_PROPERTY_PARSE_VALUE |
-        CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
-        CSS_PROPERTY_START_IMAGE_LOADS,
-    "",
-    VARIANT_IMAGE | VARIANT_INHERIT,
-    nullptr,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_BORDER(
-    border-image-slice,
-    border_image_slice,
-    BorderImageSlice,
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
-    "",
-    0,
-    kBorderImageSliceKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_BORDER(
-    border-image-width,
-    border_image_width,
-    BorderImageWidth,
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
-    "",
-    0,
-    nullptr,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_BORDER(
     border-image-outset,
     border_image_outset,
     BorderImageOutset,
     CSS_PROPERTY_PARSE_FUNCTION |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
     "",
     0,
     nullptr,
@@ -933,16 +886,50 @@ CSS_PROP_BORDER(
     BorderImageRepeat,
     CSS_PROPERTY_PARSE_FUNCTION |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
     "",
     0,
     kBorderImageRepeatKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
+CSS_PROP_BORDER(
+    border-image-slice,
+    border_image_slice,
+    BorderImageSlice,
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
+    "",
+    0,
+    kBorderImageSliceKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_BORDER(
+    border-image-source,
+    border_image_source,
+    BorderImageSource,
+    CSS_PROPERTY_PARSE_VALUE |
+        CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
+        CSS_PROPERTY_START_IMAGE_LOADS,
+    "",
+    VARIANT_IMAGE | VARIANT_INHERIT,
+    nullptr,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_BORDER(
+    border-image-width,
+    border_image_width,
+    BorderImageWidth,
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
+    "",
+    0,
+    nullptr,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
 CSS_PROP_SHORTHAND(
     border-inline-end,
     border_inline_end,
     BorderInlineEnd,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_LOGICAL(
     border-inline-end-color,
@@ -1093,16 +1080,22 @@ CSS_PROP_BORDER(
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
     "",
     VARIANT_HKL | VARIANT_CALC,
     kBorderWidthKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_Custom)
 CSS_PROP_SHORTHAND(
+    border-radius,
+    border_radius,
+    BorderRadius,
+    CSS_PROPERTY_PARSE_FUNCTION,
+    "")
+CSS_PROP_SHORTHAND(
     border-right,
     border_right,
     BorderRight,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_BORDER(
     border-right-color,
     border_right_color,
@@ -1198,16 +1191,44 @@ CSS_PROP_BORDER(
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
     "",
     0,
     nullptr,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
 CSS_PROP_BORDER(
+    border-top-left-radius,
+    border_top_left_radius,
+    BorderTopLeftRadius,
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
+        CSS_PROPERTY_VALUE_NONNEGATIVE |
+        CSS_PROPERTY_STORES_CALC |
+        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
+    "",
+    0,
+    nullptr,
+    offsetof(nsStyleBorder, mBorderRadius),
+    eStyleAnimType_Corner_TopLeft)
+CSS_PROP_BORDER(
+    border-top-right-radius,
+    border_top_right_radius,
+    BorderTopRightRadius,
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
+        CSS_PROPERTY_VALUE_NONNEGATIVE |
+        CSS_PROPERTY_STORES_CALC |
+        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
+    "",
+    0,
+    nullptr,
+    offsetof(nsStyleBorder, mBorderRadius),
+    eStyleAnimType_Corner_TopRight)
+CSS_PROP_BORDER(
     border-top-style,
     border_top_style,
     BorderTopStyle,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
     "",
     VARIANT_HK,
     kBorderStyleKTable,
@@ -1229,101 +1250,117 @@ CSS_PROP_BORDER(
     eStyleAnimType_Custom)
 CSS_PROP_SHORTHAND(
     border-width,
     border_width,
     BorderWidth,
     CSS_PROPERTY_PARSE_FUNCTION |
         CSS_PROPERTY_UNITLESS_LENGTH_QUIRK,
     "")
-CSS_PROP_SHORTHAND(
-    border-radius,
-    border_radius,
-    BorderRadius,
-    CSS_PROPERTY_PARSE_FUNCTION,
-    "")
-CSS_PROP_BORDER(
-    border-top-left-radius,
-    border_top_left_radius,
-    BorderTopLeftRadius,
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
-        CSS_PROPERTY_VALUE_NONNEGATIVE |
-        CSS_PROPERTY_STORES_CALC |
-        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
-    "",
-    0,
-    nullptr,
-    offsetof(nsStyleBorder, mBorderRadius),
-    eStyleAnimType_Corner_TopLeft)
-CSS_PROP_BORDER(
-    border-top-right-radius,
-    border_top_right_radius,
-    BorderTopRightRadius,
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
-        CSS_PROPERTY_VALUE_NONNEGATIVE |
-        CSS_PROPERTY_STORES_CALC |
-        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
-    "",
-    0,
-    nullptr,
-    offsetof(nsStyleBorder, mBorderRadius),
-    eStyleAnimType_Corner_TopRight)
-CSS_PROP_BORDER(
-    border-bottom-right-radius,
-    border_bottom_right_radius,
-    BorderBottomRightRadius,
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
-        CSS_PROPERTY_VALUE_NONNEGATIVE |
-        CSS_PROPERTY_STORES_CALC |
-        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
-    "",
-    0,
-    nullptr,
-    offsetof(nsStyleBorder, mBorderRadius),
-    eStyleAnimType_Corner_BottomRight)
-CSS_PROP_BORDER(
-    border-bottom-left-radius,
-    border_bottom_left_radius,
-    BorderBottomLeftRadius,
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
-        CSS_PROPERTY_VALUE_NONNEGATIVE |
-        CSS_PROPERTY_STORES_CALC |
-        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
-    "",
-    0,
-    nullptr,
-    offsetof(nsStyleBorder, mBorderRadius),
-    eStyleAnimType_Corner_BottomLeft)
 CSS_PROP_POSITION(
     bottom,
     bottom,
     Bottom,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHLP | VARIANT_CALC,
     nullptr,
     offsetof(nsStylePosition, mOffset),
     eStyleAnimType_Sides_Bottom)
+CSS_PROP_XUL(
+    -moz-box-align,
+    box_align,
+    CSS_PROP_DOMPROP_PREFIXED(BoxAlign),
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HK,
+    kBoxAlignKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None) // XXX bug 3935
 CSS_PROP_BORDER(
     box-decoration-break,
     box_decoration_break,
     BoxDecorationBreak,
     CSS_PROPERTY_PARSE_VALUE,
     "layout.css.box-decoration-break.enabled",
     VARIANT_HK,
     kBoxDecorationBreakKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
+CSS_PROP_XUL(
+    -moz-box-direction,
+    box_direction,
+    CSS_PROP_DOMPROP_PREFIXED(BoxDirection),
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HK,
+    kBoxDirectionKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None) // XXX bug 3935
+CSS_PROP_XUL(
+    -moz-box-flex,
+    box_flex,
+    CSS_PROP_DOMPROP_PREFIXED(BoxFlex),
+    CSS_PROPERTY_PARSE_VALUE |
+        CSS_PROPERTY_VALUE_NONNEGATIVE,
+    "",
+    VARIANT_HN,
+    nullptr,
+    offsetof(nsStyleXUL, mBoxFlex),
+    eStyleAnimType_float) // XXX bug 3935
+CSS_PROP_XUL(
+    -moz-box-ordinal-group,
+    box_ordinal_group,
+    CSS_PROP_DOMPROP_PREFIXED(BoxOrdinalGroup),
+    CSS_PROPERTY_PARSE_VALUE |
+        CSS_PROPERTY_VALUE_NONNEGATIVE,
+    "",
+    VARIANT_HI,
+    nullptr,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_XUL(
+    -moz-box-orient,
+    box_orient,
+    CSS_PROP_DOMPROP_PREFIXED(BoxOrient),
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HK,
+    kBoxOrientKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None) // XXX bug 3935
+/* We treat -webkit-box-orient as a writing-mode-aware logical alias
+ * for "flex-direction": */
+CSS_PROP_LOGICAL(
+    -webkit-box-orient,
+    webkit_box_orient,
+    WebkitBoxOrient,
+    CSS_PROPERTY_PARSE_VALUE |
+      CSS_PROPERTY_LOGICAL |
+      CSS_PROPERTY_LOGICAL_SINGLE_CUSTOM_VALMAPPING,
+    "layout.css.prefixes.webkit",
+    VARIANT_HK,
+    kBoxOrientKTable,
+    WebkitBoxOrient,
+    Position,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_XUL(
+    -moz-box-pack,
+    box_pack,
+    CSS_PROP_DOMPROP_PREFIXED(BoxPack),
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HK,
+    kBoxPackKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None) // XXX bug 3935
 CSS_PROP_EFFECTS(
     box-shadow,
     box_shadow,
     BoxShadow,
     CSS_PROPERTY_PARSE_FUNCTION |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
         CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
@@ -1369,16 +1406,37 @@ CSS_PROP_EFFECTS(
     Clip,
     CSS_PROPERTY_PARSE_FUNCTION |
         CSS_PROPERTY_UNITLESS_LENGTH_QUIRK,
     "",
     0,
     nullptr,
     offsetof(nsStyleEffects, mClip),
     eStyleAnimType_Custom)
+CSS_PROP_SVGRESET(
+    clip-path,
+    clip_path,
+    ClipPath,
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_CREATES_STACKING_CONTEXT,
+    "",
+    0,
+    nullptr,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_SVG(
+    clip-rule,
+    clip_rule,
+    ClipRule,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HK,
+    kFillRuleKTable,
+    offsetof(nsStyleSVG, mClipRule),
+    eStyleAnimType_EnumU8)
 CSS_PROP_COLOR(
     color,
     color,
     Color,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
         CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED |
@@ -1393,22 +1451,36 @@ CSS_PROP_VISIBILITY(
     color_adjust,
     ColorAdjust,
     CSS_PROPERTY_PARSE_VALUE,
     "layout.css.color-adjust.enabled",
     VARIANT_HK,
     kColorAdjustKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
-CSS_PROP_SHORTHAND(
-    -moz-columns,
-    _moz_columns,
-    CSS_PROP_DOMPROP_PREFIXED(Columns),
-    CSS_PROPERTY_PARSE_FUNCTION,
-    "")
+CSS_PROP_SVG(
+    color-interpolation,
+    color_interpolation,
+    ColorInterpolation,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HK,
+    kColorInterpolationKTable,
+    offsetof(nsStyleSVG, mColorInterpolation),
+    eStyleAnimType_EnumU8)
+CSS_PROP_SVG(
+    color-interpolation-filters,
+    color_interpolation_filters,
+    ColorInterpolationFilters,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HK,
+    kColorInterpolationKTable,
+    offsetof(nsStyleSVG, mColorInterpolationFilters),
+    eStyleAnimType_EnumU8)
 CSS_PROP_COLUMN(
     -moz-column-count,
     _moz_column_count,
     CSS_PROP_DOMPROP_PREFIXED(ColumnCount),
     CSS_PROPERTY_PARSE_VALUE |
         // Need to reject 0 in addition to negatives.  If we accept 0, we
         // need to change NS_STYLE_COLUMN_COUNT_AUTO to something else.
         CSS_PROPERTY_VALUE_AT_LEAST_ONE,
@@ -1423,27 +1495,16 @@ CSS_PROP_COLUMN(
     CSS_PROP_DOMPROP_PREFIXED(ColumnFill),
     CSS_PROPERTY_PARSE_VALUE,
     "",
     VARIANT_HK,
     kColumnFillKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
 CSS_PROP_COLUMN(
-    -moz-column-width,
-    _moz_column_width,
-    CSS_PROP_DOMPROP_PREFIXED(ColumnWidth),
-    CSS_PROPERTY_PARSE_VALUE |
-        CSS_PROPERTY_VALUE_NONNEGATIVE,
-    "",
-    VARIANT_AHL | VARIANT_CALC,
-    nullptr,
-    offsetof(nsStyleColumn, mColumnWidth),
-    eStyleAnimType_Coord)
-CSS_PROP_COLUMN(
     -moz-column-gap,
     _moz_column_gap,
     CSS_PROP_DOMPROP_PREFIXED(ColumnGap),
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_NONNEGATIVE,
     "",
     VARIANT_HL | VARIANT_NORMAL | VARIANT_CALC,
     nullptr,
@@ -1482,16 +1543,33 @@ CSS_PROP_COLUMN(
     CSS_PROP_DOMPROP_PREFIXED(ColumnRuleWidth),
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_NONNEGATIVE,
     "",
     VARIANT_HKL | VARIANT_CALC,
     kBorderWidthKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_Custom)
+CSS_PROP_COLUMN(
+    -moz-column-width,
+    _moz_column_width,
+    CSS_PROP_DOMPROP_PREFIXED(ColumnWidth),
+    CSS_PROPERTY_PARSE_VALUE |
+        CSS_PROPERTY_VALUE_NONNEGATIVE,
+    "",
+    VARIANT_AHL | VARIANT_CALC,
+    nullptr,
+    offsetof(nsStyleColumn, mColumnWidth),
+    eStyleAnimType_Coord)
+CSS_PROP_SHORTHAND(
+    -moz-columns,
+    _moz_columns,
+    CSS_PROP_DOMPROP_PREFIXED(Columns),
+    CSS_PROPERTY_PARSE_FUNCTION,
+    "")
 CSS_PROP_DISPLAY(
     contain,
     contain,
     Contain,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_PARSER_FUNCTION |
         CSS_PROPERTY_FIXPOS_CB,
     "layout.css.contain.enabled",
@@ -1518,17 +1596,17 @@ CSS_PROP_TEXT(
     CSS_PROP_DOMPROP_PREFIXED(ControlCharacterVisibility),
     CSS_PROPERTY_INTERNAL |
         CSS_PROPERTY_PARSE_VALUE,
     "",
     VARIANT_HK,
     kControlCharacterVisibilityKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
-#endif
+#endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
 CSS_PROP_CONTENT(
     counter-increment,
     counter_increment,
     CounterIncrement,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
     nullptr,
@@ -1578,56 +1656,78 @@ CSS_PROP_DISPLAY(
         // pseudo-element an inline-block in the UA stylesheet. It is a block
         // by default.
         CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
     "",
     VARIANT_HK,
     kDisplayKTable,
     offsetof(nsStyleDisplay, mDisplay),
     eStyleAnimType_EnumU8)
+CSS_PROP_SVGRESET(
+    dominant-baseline,
+    dominant_baseline,
+    DominantBaseline,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HK,
+    kDominantBaselineKTable,
+    offsetof(nsStyleSVGReset, mDominantBaseline),
+    eStyleAnimType_EnumU8)
 CSS_PROP_TABLEBORDER(
     empty-cells,
     empty_cells,
     EmptyCells,
     CSS_PROPERTY_PARSE_VALUE,
     "",
     VARIANT_HK,
     kEmptyCellsKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
-CSS_PROP_POSITION(
-    align-content,
-    align_content,
-    AlignContent,
+CSS_PROP_SVG(
+    fill,
+    fill,
+    Fill,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
+    0,
+    kContextPatternKTable,
+    offsetof(nsStyleSVG, mFill),
+    eStyleAnimType_PaintServer)
+CSS_PROP_SVG(
+    fill-opacity,
+    fill_opacity,
+    FillOpacity,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HN | VARIANT_OPENTYPE_SVG_KEYWORD,
+    kContextOpacityKTable,
+    offsetof(nsStyleSVG, mFillOpacity),
+    eStyleAnimType_float)
+CSS_PROP_SVG(
+    fill-rule,
+    fill_rule,
+    FillRule,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
     VARIANT_HK,
-    kAutoCompletionAlignJustifyContent,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_POSITION(
-    align-items,
-    align_items,
-    AlignItems,
-    CSS_PROPERTY_PARSE_FUNCTION,
-    "",
-    VARIANT_HK,
-    kAutoCompletionAlignItems,
+    kFillRuleKTable,
+    offsetof(nsStyleSVG, mFillRule),
+    eStyleAnimType_EnumU8)
+CSS_PROP_EFFECTS(
+    filter,
+    filter,
+    Filter,
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_CREATES_STACKING_CONTEXT |
+        CSS_PROPERTY_FIXPOS_CB,
+    "",
+    0,
+    nullptr,
     CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_POSITION(
-    align-self,
-    align_self,
-    AlignSelf,
-    CSS_PROPERTY_PARSE_FUNCTION,
-    "",
-    VARIANT_HK,
-    kAutoCompletionAlignJustifySelf,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
+    eStyleAnimType_Custom)
 CSS_PROP_SHORTHAND(
     flex,
     flex,
     Flex,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_POSITION(
     flex-basis,
@@ -1649,32 +1749,16 @@ CSS_PROP_POSITION(
     flex_direction,
     FlexDirection,
     CSS_PROPERTY_PARSE_VALUE,
     "",
     VARIANT_HK,
     kFlexDirectionKTable,
     offsetof(nsStylePosition, mFlexDirection),
     eStyleAnimType_EnumU8)
-/* We treat -webkit-box-orient as a writing-mode-aware logical alias
- * for "flex-direction": */
-CSS_PROP_LOGICAL(
-    -webkit-box-orient,
-    webkit_box_orient,
-    WebkitBoxOrient,
-    CSS_PROPERTY_PARSE_VALUE |
-      CSS_PROPERTY_LOGICAL |
-      CSS_PROPERTY_LOGICAL_SINGLE_CUSTOM_VALMAPPING,
-    "layout.css.prefixes.webkit",
-    VARIANT_HK,
-    kBoxOrientKTable,
-    WebkitBoxOrient,
-    Position,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
 CSS_PROP_SHORTHAND(
     flex-flow,
     flex_flow,
     FlexFlow,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_POSITION(
     flex-grow,
@@ -1709,57 +1793,16 @@ CSS_PROP_POSITION(
     flex_wrap,
     FlexWrap,
     CSS_PROPERTY_PARSE_VALUE,
     "",
     VARIANT_HK,
     kFlexWrapKTable,
     offsetof(nsStylePosition, mFlexWrap),
     eStyleAnimType_EnumU8)
-CSS_PROP_POSITION(
-    order,
-    order,
-    Order,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HI,
-    nullptr,
-    offsetof(nsStylePosition, mOrder),
-    eStyleAnimType_Custom) // <integer>
-CSS_PROP_POSITION(
-    justify-content,
-    justify_content,
-    JustifyContent,
-    CSS_PROPERTY_PARSE_FUNCTION,
-    "",
-    VARIANT_HK,
-    kAutoCompletionAlignJustifyContent,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_POSITION(
-    justify-items,
-    justify_items,
-    JustifyItems,
-    CSS_PROPERTY_PARSE_FUNCTION,
-    "",
-    VARIANT_HK,
-    // for auto-completion we use same values as justify-self:
-    kAutoCompletionAlignJustifySelf,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_POSITION(
-    justify-self,
-    justify_self,
-    JustifySelf,
-    CSS_PROPERTY_PARSE_FUNCTION,
-    "",
-    VARIANT_HK,
-    kAutoCompletionAlignJustifySelf,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
 CSS_PROP_DISPLAY(
     float,
     float,
     CSS_PROP_PUBLIC_OR_PRIVATE(CssFloat, Float),
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
     "",
     VARIANT_HK,
@@ -1771,16 +1814,36 @@ CSS_PROP_BORDER(
     float_edge,
     CSS_PROP_DOMPROP_PREFIXED(FloatEdge),
     CSS_PROPERTY_PARSE_VALUE,
     "",
     VARIANT_HK,
     kFloatEdgeKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None) // XXX bug 3935
+CSS_PROP_SVGRESET(
+    flood-color,
+    flood_color,
+    FloodColor,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HC,
+    nullptr,
+    offsetof(nsStyleSVGReset, mFloodColor),
+    eStyleAnimType_Color)
+CSS_PROP_SVGRESET(
+    flood-opacity,
+    flood_opacity,
+    FloodOpacity,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HN,
+    nullptr,
+    offsetof(nsStyleSVGReset, mFloodOpacity),
+    eStyleAnimType_float)
 CSS_PROP_SHORTHAND(
     font,
     font,
     Font,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_FONT(
     font-family,
@@ -1857,28 +1920,16 @@ CSS_PROP_FONT(
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
         CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
     "",
     VARIANT_HON | VARIANT_SYSFONT,
     nullptr,
     offsetof(nsStyleFont, mFont.sizeAdjust),
     eStyleAnimType_float)
 CSS_PROP_FONT(
-    -moz-osx-font-smoothing,
-    osx_font_smoothing,
-    CSS_PROP_DOMPROP_PREFIXED(OsxFontSmoothing),
-    CSS_PROPERTY_PARSE_VALUE |
-        CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
-        CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
-    "layout.css.osx-font-smoothing.enabled",
-    VARIANT_HK,
-    kFontSmoothingKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_FONT(
     font-stretch,
     font_stretch,
     FontStretch,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
         CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
     "",
     VARIANT_HK | VARIANT_SYSFONT,
@@ -2012,51 +2063,145 @@ CSS_PROP_UIRESET(
     CSS_PROP_DOMPROP_PREFIXED(ForceBrokenImageIcon),
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_NONNEGATIVE,
     "",
     VARIANT_HI,
     nullptr,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None) // bug 58646
-CSS_PROP_POSITION(
-    grid-auto-flow,
-    grid_auto_flow,
-    GridAutoFlow,
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
-    "layout.css.grid.enabled",
-    0,
-    kGridAutoFlowKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
+CSS_PROP_SHORTHAND(
+    grid,
+    grid,
+    Grid,
+    CSS_PROPERTY_PARSE_FUNCTION,
+    "layout.css.grid.enabled")
+CSS_PROP_SHORTHAND(
+    grid-area,
+    grid_area,
+    GridArea,
+    CSS_PROPERTY_PARSE_FUNCTION,
+    "layout.css.grid.enabled")
 CSS_PROP_POSITION(
     grid-auto-columns,
     grid_auto_columns,
     GridAutoColumns,
     CSS_PROPERTY_PARSE_FUNCTION |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
     "layout.css.grid.enabled",
     0,
     kGridTrackBreadthKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
 CSS_PROP_POSITION(
+    grid-auto-flow,
+    grid_auto_flow,
+    GridAutoFlow,
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
+    "layout.css.grid.enabled",
+    0,
+    kGridAutoFlowKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_POSITION(
     grid-auto-rows,
     grid_auto_rows,
     GridAutoRows,
     CSS_PROPERTY_PARSE_FUNCTION |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
     "layout.css.grid.enabled",
     0,
     kGridTrackBreadthKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
+CSS_PROP_SHORTHAND(
+    grid-column,
+    grid_column,
+    GridColumn,
+    CSS_PROPERTY_PARSE_FUNCTION,
+    "layout.css.grid.enabled")
+CSS_PROP_POSITION(
+    grid-column-end,
+    grid_column_end,
+    GridColumnEnd,
+    CSS_PROPERTY_PARSE_FUNCTION,
+    "layout.css.grid.enabled",
+    0,
+    nullptr,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_POSITION(
+    grid-column-gap,
+    grid_column_gap,
+    GridColumnGap,
+    CSS_PROPERTY_PARSE_VALUE |
+        CSS_PROPERTY_VALUE_NONNEGATIVE |
+        CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
+    "layout.css.grid.enabled",
+    VARIANT_HL | VARIANT_CALC,
+    nullptr,
+    offsetof(nsStylePosition, mGridColumnGap),
+    eStyleAnimType_nscoord)
+CSS_PROP_POSITION(
+    grid-column-start,
+    grid_column_start,
+    GridColumnStart,
+    CSS_PROPERTY_PARSE_FUNCTION,
+    "layout.css.grid.enabled",
+    0,
+    nullptr,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_SHORTHAND(
+    grid-gap,
+    grid_gap,
+    GridGap,
+    CSS_PROPERTY_PARSE_FUNCTION,
+    "layout.css.grid.enabled")
+CSS_PROP_SHORTHAND(
+    grid-row,
+    grid_row,
+    GridRow,
+    CSS_PROPERTY_PARSE_FUNCTION,
+    "layout.css.grid.enabled")
+CSS_PROP_POSITION(
+    grid-row-end,
+    grid_row_end,
+    GridRowEnd,
+    CSS_PROPERTY_PARSE_FUNCTION,
+    "layout.css.grid.enabled",
+    0,
+    nullptr,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_POSITION(
+    grid-row-gap,
+    grid_row_gap,
+    GridRowGap,
+    CSS_PROPERTY_PARSE_VALUE |
+        CSS_PROPERTY_VALUE_NONNEGATIVE |
+        CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
+    "layout.css.grid.enabled",
+    VARIANT_HL | VARIANT_CALC,
+    nullptr,
+    offsetof(nsStylePosition, mGridRowGap),
+    eStyleAnimType_nscoord)
+CSS_PROP_POSITION(
+    grid-row-start,
+    grid_row_start,
+    GridRowStart,
+    CSS_PROPERTY_PARSE_FUNCTION,
+    "layout.css.grid.enabled",
+    0,
+    nullptr,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
 CSS_PROP_POSITION(
     grid-template-areas,
     grid_template_areas,
     GridTemplateAreas,
     CSS_PROPERTY_PARSE_FUNCTION |
         CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
     "layout.css.grid.enabled",
     0,
@@ -2084,124 +2229,40 @@ CSS_PROP_POSITION(
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
         CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
     "layout.css.grid.enabled",
     0,
     kGridTrackBreadthKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
-CSS_PROP_SHORTHAND(
-    grid,
-    grid,
-    Grid,
-    CSS_PROPERTY_PARSE_FUNCTION,
-    "layout.css.grid.enabled")
-CSS_PROP_POSITION(
-    grid-column-start,
-    grid_column_start,
-    GridColumnStart,
-    CSS_PROPERTY_PARSE_FUNCTION,
-    "layout.css.grid.enabled",
-    0,
-    nullptr,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_POSITION(
-    grid-column-end,
-    grid_column_end,
-    GridColumnEnd,
-    CSS_PROPERTY_PARSE_FUNCTION,
-    "layout.css.grid.enabled",
-    0,
-    nullptr,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_POSITION(
-    grid-row-start,
-    grid_row_start,
-    GridRowStart,
-    CSS_PROPERTY_PARSE_FUNCTION,
-    "layout.css.grid.enabled",
-    0,
-    nullptr,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_POSITION(
-    grid-row-end,
-    grid_row_end,
-    GridRowEnd,
-    CSS_PROPERTY_PARSE_FUNCTION,
-    "layout.css.grid.enabled",
-    0,
-    nullptr,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_SHORTHAND(
-    grid-column,
-    grid_column,
-    GridColumn,
-    CSS_PROPERTY_PARSE_FUNCTION,
-    "layout.css.grid.enabled")
-CSS_PROP_SHORTHAND(
-    grid-row,
-    grid_row,
-    GridRow,
-    CSS_PROPERTY_PARSE_FUNCTION,
-    "layout.css.grid.enabled")
-CSS_PROP_SHORTHAND(
-    grid-area,
-    grid_area,
-    GridArea,
-    CSS_PROPERTY_PARSE_FUNCTION,
-    "layout.css.grid.enabled")
-CSS_PROP_POSITION(
-    grid-column-gap,
-    grid_column_gap,
-    GridColumnGap,
-    CSS_PROPERTY_PARSE_VALUE |
-        CSS_PROPERTY_VALUE_NONNEGATIVE |
-        CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
-    "layout.css.grid.enabled",
-    VARIANT_HL | VARIANT_CALC,
-    nullptr,
-    offsetof(nsStylePosition, mGridColumnGap),
-    eStyleAnimType_nscoord)
-CSS_PROP_POSITION(
-    grid-row-gap,
-    grid_row_gap,
-    GridRowGap,
-    CSS_PROPERTY_PARSE_VALUE |
-        CSS_PROPERTY_VALUE_NONNEGATIVE |
-        CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
-    "layout.css.grid.enabled",
-    VARIANT_HL | VARIANT_CALC,
-    nullptr,
-    offsetof(nsStylePosition, mGridRowGap),
-    eStyleAnimType_nscoord)
-CSS_PROP_SHORTHAND(
-    grid-gap,
-    grid_gap,
-    GridGap,
-    CSS_PROPERTY_PARSE_FUNCTION,
-    "layout.css.grid.enabled")
 CSS_PROP_POSITION(
     height,
     height,
     Height,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_NONNEGATIVE |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHKLP | VARIANT_CALC,
     kWidthKTable,
     offsetof(nsStylePosition, mHeight),
     eStyleAnimType_Coord)
+CSS_PROP_TEXT(
+    hyphens,
+    hyphens,
+    Hyphens,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HK,
+    kHyphensKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
 CSS_PROP_VISIBILITY(
     image-orientation,
     image_orientation,
     ImageOrientation,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "layout.css.image-orientation.enabled",
     0,
@@ -2213,16 +2274,26 @@ CSS_PROP_LIST(
     image_region,
     CSS_PROP_DOMPROP_PREFIXED(ImageRegion),
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
     nullptr,
     offsetof(nsStyleList, mImageRegion),
     eStyleAnimType_Custom)
+CSS_PROP_VISIBILITY(
+    image-rendering,
+    image_rendering,
+    ImageRendering,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HK,
+    kImageRenderingKTable,
+    offsetof(nsStyleVisibility, mImageRendering),
+    eStyleAnimType_EnumU8)
 CSS_PROP_UIRESET(
     ime-mode,
     ime_mode,
     ImeMode,
     CSS_PROPERTY_PARSE_VALUE,
     "",
     VARIANT_HK,
     kIMEModeKTable,
@@ -2241,16 +2312,73 @@ CSS_PROP_LOGICAL(
         CSS_PROPERTY_LOGICAL_AXIS,
     "layout.css.vertical-text.enabled",
     VARIANT_AHKLP | VARIANT_CALC,
     kWidthKTable,
     Size,
     Position,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
+CSS_PROP_DISPLAY(
+    isolation,
+    isolation,
+    Isolation,
+    CSS_PROPERTY_PARSE_VALUE |
+        CSS_PROPERTY_CREATES_STACKING_CONTEXT,
+    "layout.css.isolation.enabled",
+    VARIANT_HK,
+    kIsolationKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_POSITION(
+    justify-content,
+    justify_content,
+    JustifyContent,
+    CSS_PROPERTY_PARSE_FUNCTION,
+    "",
+    VARIANT_HK,
+    kAutoCompletionAlignJustifyContent,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_POSITION(
+    justify-items,
+    justify_items,
+    JustifyItems,
+    CSS_PROPERTY_PARSE_FUNCTION,
+    "",
+    VARIANT_HK,
+    // for auto-completion we use same values as justify-self:
+    kAutoCompletionAlignJustifySelf,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_POSITION(
+    justify-self,
+    justify_self,
+    JustifySelf,
+    CSS_PROPERTY_PARSE_FUNCTION,
+    "",
+    VARIANT_HK,
+    kAutoCompletionAlignJustifySelf,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+#ifndef CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
+#ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
+CSS_PROP_FONT(
+    -x-lang,
+    _x_lang,
+    Lang,
+    CSS_PROPERTY_INTERNAL |
+        CSS_PROPERTY_PARSE_INACCESSIBLE,
+    "",
+    0,
+    nullptr,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+#endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
+#endif // CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
 CSS_PROP_POSITION(
     left,
     left,
     Left,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
@@ -2267,16 +2395,26 @@ CSS_PROP_TEXT(
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
         CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
         CSS_PROPERTY_UNITLESS_LENGTH_QUIRK,
     "",
     VARIANT_HL | VARIANT_NORMAL | VARIANT_CALC,
     nullptr,
     offsetof(nsStyleText, mLetterSpacing),
     eStyleAnimType_Coord)
+CSS_PROP_SVGRESET(
+    lighting-color,
+    lighting_color,
+    LightingColor,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HC,
+    nullptr,
+    offsetof(nsStyleSVGReset, mLightingColor),
+    eStyleAnimType_Color)
 CSS_PROP_TEXT(
     line-height,
     line_height,
     LineHeight,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_NONNEGATIVE |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
         CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
@@ -2459,26 +2597,212 @@ CSS_PROP_MARGIN(
         CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
         CSS_PROPERTY_APPLIES_TO_PAGE_RULE |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHLP | VARIANT_CALC,
     nullptr,
     offsetof(nsStyleMargin, mMargin),
     eStyleAnimType_Sides_Top)
+CSS_PROP_SHORTHAND(
+    marker,
+    marker,
+    Marker,
+    CSS_PROPERTY_PARSE_FUNCTION,
+    "")
+CSS_PROP_SVG(
+    marker-end,
+    marker_end,
+    MarkerEnd,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HUO,
+    nullptr,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_SVG(
+    marker-mid,
+    marker_mid,
+    MarkerMid,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HUO,
+    nullptr,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
 CSS_PROP_CONTENT(
     marker-offset,
     marker_offset,
     MarkerOffset,
     CSS_PROPERTY_PARSE_VALUE,
     "",
     VARIANT_AHL | VARIANT_CALC,
     nullptr,
     offsetof(nsStyleContent, mMarkerOffset),
     eStyleAnimType_Coord)
+CSS_PROP_SVG(
+    marker-start,
+    marker_start,
+    MarkerStart,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HUO,
+    nullptr,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+#ifndef MOZ_ENABLE_MASK_AS_SHORTHAND
+CSS_PROP_SVGRESET(
+    mask,
+    mask,
+    Mask,
+    CSS_PROPERTY_PARSE_VALUE |
+      CSS_PROPERTY_CREATES_STACKING_CONTEXT,
+    "",
+    VARIANT_HUO,
+    nullptr,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+#else
+CSS_PROP_SHORTHAND(
+    mask,
+    mask,
+    Mask,
+    CSS_PROPERTY_PARSE_FUNCTION,
+    "")
+CSS_PROP_SVGRESET(
+    mask-clip,
+    mask_clip,
+    MaskClip,
+    CSS_PROPERTY_PARSE_VALUE_LIST |
+        CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
+    "",
+    VARIANT_KEYWORD, // used by list parsing
+    kImageLayerOriginKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_SVGRESET(
+    mask-composite,
+    mask_composite,
+    MaskComposite,
+    CSS_PROPERTY_PARSE_VALUE_LIST |
+        CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
+    "",
+    VARIANT_KEYWORD, // used by list parsing
+    kImageLayerCompositeKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_SVGRESET(
+    mask-image,
+    mask_image,
+    MaskImage,
+    CSS_PROPERTY_PARSE_VALUE_LIST |
+        CSS_PROPERTY_CREATES_STACKING_CONTEXT |
+        CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
+        CSS_PROPERTY_START_IMAGE_LOADS,
+    "",
+    VARIANT_IMAGE, // used by list parsing
+    nullptr,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_SVGRESET(
+    mask-mode,
+    mask_mode,
+    MaskMode,
+    CSS_PROPERTY_PARSE_VALUE_LIST |
+        CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
+    "",
+    VARIANT_KEYWORD, // used by list parsing
+    kImageLayerModeKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_SVGRESET(
+    mask-origin,
+    mask_origin,
+    MaskOrigin,
+    CSS_PROPERTY_PARSE_VALUE_LIST |
+        CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
+    "",
+    VARIANT_KEYWORD, // used by list parsing
+    kImageLayerOriginKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_SVGRESET(
+    mask-position,
+    mask_position,
+    MaskPosition,
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
+        CSS_PROPERTY_STORES_CALC,
+    "",
+    0,
+    kImageLayerPositionKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_Custom)
+CSS_PROP_SVGRESET(
+    mask-repeat,
+    mask_repeat,
+    MaskRepeat,
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
+    "",
+    VARIANT_KEYWORD, // used by list parsing
+    kImageLayerRepeatKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_SVGRESET(
+    mask-size,
+    mask_size,
+    MaskSize,
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
+        CSS_PROPERTY_VALUE_NONNEGATIVE |
+        CSS_PROPERTY_STORES_CALC,
+    "",
+    0,
+    kImageLayerSizeKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_Custom)
+#endif // MOZ_ENABLE_MASK_AS_SHORTHAND
+CSS_PROP_SVGRESET(
+    mask-type,
+    mask_type,
+    MaskType,
+    CSS_PROPERTY_PARSE_VALUE,
+    "layout.css.masking.enabled",
+    VARIANT_HK,
+    kMaskTypeKTable,
+    offsetof(nsStyleSVGReset, mMaskType),
+    eStyleAnimType_EnumU8)
+#ifndef CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
+#ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
+CSS_PROP_FONT(
+    -moz-math-display,
+    math_display,
+    MathDisplay,
+    CSS_PROPERTY_INTERNAL |
+        CSS_PROPERTY_ENABLED_IN_UA_SHEETS |
+        CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HK,
+    kMathDisplayKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_FONT(
+    -moz-math-variant,
+    math_variant,
+    MathVariant,
+    CSS_PROPERTY_INTERNAL |
+        CSS_PROPERTY_PARSE_INACCESSIBLE,
+    "",
+    VARIANT_HK,
+    kMathVariantKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+#endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
+#endif // CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
 CSS_PROP_LOGICAL(
     max-block-size,
     max_block_size,
     MaxBlockSize,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_NONNEGATIVE |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
@@ -2534,44 +2858,16 @@ CSS_PROP_POSITION(
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_HKLPO | VARIANT_CALC,
     kWidthKTable,
     offsetof(nsStylePosition, mMaxWidth),
     eStyleAnimType_Coord)
-#ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
-CSS_PROP_FONT(
-    -moz-min-font-size-ratio,
-    _moz_min_font_size_ratio,
-    CSS_PROP_DOMPROP_PREFIXED(MinFontSizeRatio),
-    CSS_PROPERTY_INTERNAL |
-        CSS_PROPERTY_PARSE_VALUE |
-        CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
-    "",
-    VARIANT_INHERIT | VARIANT_PERCENT,
-    nullptr,
-    offsetof(nsStyleFont, mMinFontSizeRatio),
-    eStyleAnimType_None)
-#endif
-CSS_PROP_POSITION(
-    min-height,
-    min_height,
-    MinHeight,
-    CSS_PROPERTY_PARSE_VALUE |
-        CSS_PROPERTY_VALUE_NONNEGATIVE |
-        CSS_PROPERTY_STORES_CALC |
-        CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
-        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
-    "",
-    VARIANT_AHKLP | VARIANT_CALC,
-    kWidthKTable,
-    offsetof(nsStylePosition, mMinHeight),
-    eStyleAnimType_Coord)
 CSS_PROP_LOGICAL(
     min-block-size,
     min_block_size,
     MinBlockSize,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_NONNEGATIVE |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
@@ -2581,16 +2877,44 @@ CSS_PROP_LOGICAL(
         CSS_PROPERTY_LOGICAL_BLOCK_AXIS,
     "layout.css.vertical-text.enabled",
     VARIANT_AHLP | VARIANT_CALC,
     nullptr,
     MinSize,
     Position,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
+#ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
+CSS_PROP_FONT(
+    -moz-min-font-size-ratio,
+    _moz_min_font_size_ratio,
+    CSS_PROP_DOMPROP_PREFIXED(MinFontSizeRatio),
+    CSS_PROPERTY_INTERNAL |
+        CSS_PROPERTY_PARSE_VALUE |
+        CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
+    "",
+    VARIANT_INHERIT | VARIANT_PERCENT,
+    nullptr,
+    offsetof(nsStyleFont, mMinFontSizeRatio),
+    eStyleAnimType_None)
+#endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
+CSS_PROP_POSITION(
+    min-height,
+    min_height,
+    MinHeight,
+    CSS_PROPERTY_PARSE_VALUE |
+        CSS_PROPERTY_VALUE_NONNEGATIVE |
+        CSS_PROPERTY_STORES_CALC |
+        CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
+        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
+    "",
+    VARIANT_AHKLP | VARIANT_CALC,
+    kWidthKTable,
+    offsetof(nsStylePosition, mMinHeight),
+    eStyleAnimType_Coord)
 CSS_PROP_LOGICAL(
     min-inline-size,
     min_inline_size,
     MinInlineSize,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_NONNEGATIVE |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
@@ -2624,27 +2948,16 @@ CSS_PROP_EFFECTS(
     MixBlendMode,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_CREATES_STACKING_CONTEXT,
     "layout.css.mix-blend-mode.enabled",
     VARIANT_HK,
     kBlendModeKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
-CSS_PROP_DISPLAY(
-    isolation,
-    isolation,
-    Isolation,
-    CSS_PROPERTY_PARSE_VALUE |
-        CSS_PROPERTY_CREATES_STACKING_CONTEXT,
-    "layout.css.isolation.enabled",
-    VARIANT_HK,
-    kIsolationKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
 CSS_PROP_POSITION(
     object-fit,
     object_fit,
     ObjectFit,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
     "layout.css.object-fit-and-position.enabled",
     VARIANT_HK,
@@ -2739,26 +3052,48 @@ CSS_PROP_EFFECTS(
         CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
         CSS_PROPERTY_CAN_ANIMATE_ON_COMPOSITOR |
         CSS_PROPERTY_CREATES_STACKING_CONTEXT,
     "",
     VARIANT_HN,
     nullptr,
     offsetof(nsStyleEffects, mOpacity),
     eStyleAnimType_float)
+CSS_PROP_POSITION(
+    order,
+    order,
+    Order,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HI,
+    nullptr,
+    offsetof(nsStylePosition, mOrder),
+    eStyleAnimType_Custom) // <integer>
 CSS_PROP_DISPLAY(
     -moz-orient,
     orient,
     CSS_PROP_DOMPROP_PREFIXED(Orient),
     CSS_PROPERTY_PARSE_VALUE,
     "",
     VARIANT_HK,
     kOrientKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
+CSS_PROP_FONT(
+    -moz-osx-font-smoothing,
+    osx_font_smoothing,
+    CSS_PROP_DOMPROP_PREFIXED(OsxFontSmoothing),
+    CSS_PROPERTY_PARSE_VALUE |
+        CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
+        CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
+    "layout.css.osx-font-smoothing.enabled",
+    VARIANT_HK,
+    kFontSmoothingKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
 CSS_PROP_SHORTHAND(
     outline,
     outline,
     Outline,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_OUTLINE(
     outline-color,
@@ -2767,16 +3102,84 @@ CSS_PROP_OUTLINE(
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
     "",
     VARIANT_HCK,
     kOutlineColorKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_Custom)
 CSS_PROP_OUTLINE(
+    outline-offset,
+    outline_offset,
+    OutlineOffset,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HL | VARIANT_CALC,
+    nullptr,
+    offsetof(nsStyleOutline, mOutlineOffset),
+    eStyleAnimType_nscoord)
+CSS_PROP_SHORTHAND(
+    -moz-outline-radius,
+    _moz_outline_radius,
+    CSS_PROP_DOMPROP_PREFIXED(OutlineRadius),
+    CSS_PROPERTY_PARSE_FUNCTION,
+    "")
+CSS_PROP_OUTLINE(
+    -moz-outline-radius-bottomleft,
+    _moz_outline_radius_bottomLeft,
+    CSS_PROP_DOMPROP_PREFIXED(OutlineRadiusBottomleft),
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_VALUE_NONNEGATIVE |
+        CSS_PROPERTY_STORES_CALC |
+        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
+    "",
+    0,
+    nullptr,
+    offsetof(nsStyleOutline, mOutlineRadius),
+    eStyleAnimType_Corner_BottomLeft)
+CSS_PROP_OUTLINE(
+    -moz-outline-radius-bottomright,
+    _moz_outline_radius_bottomRight,
+    CSS_PROP_DOMPROP_PREFIXED(OutlineRadiusBottomright),
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_VALUE_NONNEGATIVE |
+        CSS_PROPERTY_STORES_CALC |
+        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
+    "",
+    0,
+    nullptr,
+    offsetof(nsStyleOutline, mOutlineRadius),
+    eStyleAnimType_Corner_BottomRight)
+CSS_PROP_OUTLINE(
+    -moz-outline-radius-topleft,
+    _moz_outline_radius_topLeft,
+    CSS_PROP_DOMPROP_PREFIXED(OutlineRadiusTopleft),
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_VALUE_NONNEGATIVE |
+        CSS_PROPERTY_STORES_CALC |
+        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
+    "",
+    0,
+    nullptr,
+    offsetof(nsStyleOutline, mOutlineRadius),
+    eStyleAnimType_Corner_TopLeft)
+CSS_PROP_OUTLINE(
+    -moz-outline-radius-topright,
+    _moz_outline_radius_topRight,
+    CSS_PROP_DOMPROP_PREFIXED(OutlineRadiusTopright),
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_VALUE_NONNEGATIVE |
+        CSS_PROPERTY_STORES_CALC |
+        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
+    "",
+    0,
+    nullptr,
+    offsetof(nsStyleOutline, mOutlineRadius),
+    eStyleAnimType_Corner_TopRight)
+CSS_PROP_OUTLINE(
     outline-style,
     outline_style,
     OutlineStyle,
     CSS_PROPERTY_PARSE_VALUE,
     "",
     VARIANT_HK,
     kOutlineStyleKTable,
     CSS_PROP_NO_OFFSET,
@@ -2787,26 +3190,16 @@ CSS_PROP_OUTLINE(
     OutlineWidth,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_NONNEGATIVE,
     "",
     VARIANT_HKL | VARIANT_CALC,
     kBorderWidthKTable,
     offsetof(nsStyleOutline, mOutlineWidth),
     eStyleAnimType_Coord)
-CSS_PROP_OUTLINE(
-    outline-offset,
-    outline_offset,
-    OutlineOffset,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HL | VARIANT_CALC,
-    nullptr,
-    offsetof(nsStyleOutline, mOutlineOffset),
-    eStyleAnimType_nscoord)
 CSS_PROP_SHORTHAND(
     overflow,
     overflow,
     Overflow,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_DISPLAY(
     overflow-clip-box,
@@ -3036,16 +3429,40 @@ CSS_PROP_SVG(
     paint_order,
     PaintOrder,
     CSS_PROPERTY_PARSE_FUNCTION,
     "svg.paint-order.enabled",
     0,
     nullptr,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
+CSS_PROP_DISPLAY(
+    perspective,
+    perspective,
+    Perspective,
+    CSS_PROPERTY_PARSE_VALUE |
+        CSS_PROPERTY_CREATES_STACKING_CONTEXT |
+        CSS_PROPERTY_FIXPOS_CB,
+    "",
+    VARIANT_NONE | VARIANT_INHERIT | VARIANT_LENGTH | VARIANT_POSITIVE_DIMENSION,
+    nullptr,
+    offsetof(nsStyleDisplay, mChildPerspective),
+    eStyleAnimType_Coord)
+CSS_PROP_DISPLAY(
+    perspective-origin,
+    perspective_origin,
+    PerspectiveOrigin,
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_STORES_CALC |
+        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
+    "",
+    0,
+    kImageLayerPositionKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_Custom)
 CSS_PROP_USERINTERFACE(
     pointer-events,
     pointer_events,
     PointerEvents,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
     "",
     VARIANT_HK,
@@ -3117,16 +3534,60 @@ CSS_PROP_TEXT(
     ruby_position,
     RubyPosition,
     CSS_PROPERTY_PARSE_VALUE,
     "",
     VARIANT_HK,
     kRubyPositionKTable,
     offsetof(nsStyleText, mRubyPosition),
     eStyleAnimType_EnumU8)
+#ifndef CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
+#ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
+CSS_PROP_FONT(
+    -moz-script-level,
+    script_level,
+    ScriptLevel,
+    // We only allow 'script-level' when unsafe rules are enabled, because
+    // otherwise it could interfere with rulenode optimizations if used in
+    // a non-MathML-enabled document.
+    CSS_PROPERTY_INTERNAL |
+        CSS_PROPERTY_ENABLED_IN_UA_SHEETS |
+        CSS_PROPERTY_PARSE_VALUE,
+    "",
+    // script-level can take Auto, Integer and Number values, but only Auto
+    // ("increment if parent is not in displaystyle") and Integer
+    // ("relative") values can be specified in a style sheet.
+    VARIANT_AHI,
+    nullptr,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_FONT(
+    -moz-script-min-size,
+    script_min_size,
+    ScriptMinSize,
+    CSS_PROPERTY_INTERNAL |
+        CSS_PROPERTY_PARSE_INACCESSIBLE,
+    "",
+    0,
+    nullptr,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_FONT(
+    -moz-script-size-multiplier,
+    script_size_multiplier,
+    ScriptSizeMultiplier,
+    CSS_PROPERTY_INTERNAL |
+        CSS_PROPERTY_PARSE_INACCESSIBLE,
+    "",
+    0,
+    nullptr,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+#endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
+#endif // CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
 CSS_PROP_DISPLAY(
     scroll-behavior,
     scroll_behavior,
     ScrollBehavior,
     CSS_PROPERTY_PARSE_VALUE,
     "layout.css.scroll-behavior.property-enabled",
     VARIANT_HK,
     kScrollBehaviorKTable,
@@ -3202,16 +3663,184 @@ CSS_PROP_DISPLAY(
     scroll_snap_type_y,
     ScrollSnapTypeY,
     CSS_PROPERTY_PARSE_VALUE,
     "layout.css.scroll-snap.enabled",
     VARIANT_HK,
     kScrollSnapTypeKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
+CSS_PROP_SVG(
+    shape-rendering,
+    shape_rendering,
+    ShapeRendering,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HK,
+    kShapeRenderingKTable,
+    offsetof(nsStyleSVG, mShapeRendering),
+    eStyleAnimType_EnumU8)
+#ifndef CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
+#ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
+CSS_PROP_TABLE(
+    -x-span,
+    _x_span,
+    Span,
+    CSS_PROPERTY_INTERNAL |
+        CSS_PROPERTY_PARSE_INACCESSIBLE,
+    "",
+    0,
+    nullptr,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+#endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
+#endif // CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
+CSS_PROP_XUL(
+    -moz-stack-sizing,
+    stack_sizing,
+    CSS_PROP_DOMPROP_PREFIXED(StackSizing),
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HK,
+    kStackSizingKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_SVGRESET(
+    stop-color,
+    stop_color,
+    StopColor,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HC,
+    nullptr,
+    offsetof(nsStyleSVGReset, mStopColor),
+    eStyleAnimType_Color)
+CSS_PROP_SVGRESET(
+    stop-opacity,
+    stop_opacity,
+    StopOpacity,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HN,
+    nullptr,
+    offsetof(nsStyleSVGReset, mStopOpacity),
+    eStyleAnimType_float)
+CSS_PROP_SVG(
+    stroke,
+    stroke,
+    Stroke,
+    CSS_PROPERTY_PARSE_FUNCTION,
+    "",
+    0,
+    kContextPatternKTable,
+    offsetof(nsStyleSVG, mStroke),
+    eStyleAnimType_PaintServer)
+CSS_PROP_SVG(
+    stroke-dasharray,
+    stroke_dasharray,
+    StrokeDasharray,
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
+        CSS_PROPERTY_NUMBERS_ARE_PIXELS,
+        // NOTE: Internal values have range restrictions.
+    "",
+    0,
+    kStrokeContextValueKTable,
+    CSS_PROP_NO_OFFSET, /* property stored in 2 separate members */
+    eStyleAnimType_Custom)
+CSS_PROP_SVG(
+    stroke-dashoffset,
+    stroke_dashoffset,
+    StrokeDashoffset,
+    CSS_PROPERTY_PARSE_VALUE |
+        CSS_PROPERTY_NUMBERS_ARE_PIXELS,
+    "",
+    VARIANT_HLPN | VARIANT_OPENTYPE_SVG_KEYWORD,
+    kStrokeContextValueKTable,
+    offsetof(nsStyleSVG, mStrokeDashoffset),
+    eStyleAnimType_Coord)
+CSS_PROP_SVG(
+    stroke-linecap,
+    stroke_linecap,
+    StrokeLinecap,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HK,
+    kStrokeLinecapKTable,
+    offsetof(nsStyleSVG, mStrokeLinecap),
+    eStyleAnimType_EnumU8)
+CSS_PROP_SVG(
+    stroke-linejoin,
+    stroke_linejoin,
+    StrokeLinejoin,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HK,
+    kStrokeLinejoinKTable,
+    offsetof(nsStyleSVG, mStrokeLinejoin),
+    eStyleAnimType_EnumU8)
+CSS_PROP_SVG(
+    stroke-miterlimit,
+    stroke_miterlimit,
+    StrokeMiterlimit,
+    CSS_PROPERTY_PARSE_VALUE |
+        CSS_PROPERTY_VALUE_AT_LEAST_ONE,
+    "",
+    VARIANT_HN,
+    nullptr,
+    offsetof(nsStyleSVG, mStrokeMiterlimit),
+    eStyleAnimType_float)
+CSS_PROP_SVG(
+    stroke-opacity,
+    stroke_opacity,
+    StrokeOpacity,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HN | VARIANT_OPENTYPE_SVG_KEYWORD,
+    kContextOpacityKTable,
+    offsetof(nsStyleSVG, mStrokeOpacity),
+    eStyleAnimType_float)
+CSS_PROP_SVG(
+    stroke-width,
+    stroke_width,
+    StrokeWidth,
+    CSS_PROPERTY_PARSE_VALUE |
+        CSS_PROPERTY_VALUE_NONNEGATIVE |
+        CSS_PROPERTY_NUMBERS_ARE_PIXELS,
+    "",
+    VARIANT_HLPN | VARIANT_OPENTYPE_SVG_KEYWORD,
+    kStrokeContextValueKTable,
+    offsetof(nsStyleSVG, mStrokeWidth),
+    eStyleAnimType_Coord)
+#ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
+CSS_PROP_FONT(
+    -x-system-font,
+    _x_system_font,
+    CSS_PROP_DOMPROP_PREFIXED(SystemFont),
+    CSS_PROPERTY_INTERNAL |
+        CSS_PROPERTY_PARSE_INACCESSIBLE |
+        CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
+        CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
+    "",
+    0,
+    kFontKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+#endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
+CSS_PROP_TEXT(
+    -moz-tab-size,
+    _moz_tab_size,
+    CSS_PROP_DOMPROP_PREFIXED(TabSize),
+    CSS_PROPERTY_PARSE_VALUE |
+        CSS_PROPERTY_VALUE_NONNEGATIVE,
+    "",
+    VARIANT_HI,
+    nullptr,
+    offsetof(nsStyleText, mTabSize),
+    eStyleAnimType_None)
 CSS_PROP_TABLE(
     table-layout,
     table_layout,
     TableLayout,
     CSS_PROPERTY_PARSE_VALUE,
     "",
     VARIANT_HK,
     kTableLayoutKTable,
@@ -3235,33 +3864,43 @@ CSS_PROP_TEXT(
     text_align_last,
     CSS_PROP_DOMPROP_PREFIXED(TextAlignLast),
     CSS_PROPERTY_PARSE_VALUE | CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "",
     VARIANT_HK,
     kTextAlignLastKTable,
     offsetof(nsStyleText, mTextAlignLast),
     eStyleAnimType_None)
-CSS_PROP_SHORTHAND(
-    text-decoration,
-    text_decoration,
-    TextDecoration,
-    CSS_PROPERTY_PARSE_FUNCTION,
-    "")
+CSS_PROP_SVG(
+    text-anchor,
+    text_anchor,
+    TextAnchor,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HK,
+    kTextAnchorKTable,
+    offsetof(nsStyleSVG, mTextAnchor),
+    eStyleAnimType_EnumU8)
 CSS_PROP_TEXT(
     text-combine-upright,
     text_combine_upright,
     TextCombineUpright,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "layout.css.text-combine-upright.enabled",
     0,
     kTextCombineUprightKTable,
     offsetof(nsStyleText, mTextCombineUpright),
     eStyleAnimType_EnumU8)
+CSS_PROP_SHORTHAND(
+    text-decoration,
+    text_decoration,
+    TextDecoration,
+    CSS_PROPERTY_PARSE_FUNCTION,
+    "")
 CSS_PROP_TEXTRESET(
     text-decoration-color,
     text_decoration_color,
     TextDecorationColor,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
         CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
@@ -3383,16 +4022,26 @@ CSS_PROP_TEXTRESET(
         CSS_PROPERTY_VALUE_PARSER_FUNCTION |
         CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
     "",
     0,
     kTextOverflowKTable,
     offsetof(nsStyleTextReset, mTextOverflow),
     eStyleAnimType_None)
 CSS_PROP_TEXT(
+    text-rendering,
+    text_rendering,
+    TextRendering,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HK,
+    kTextRenderingKTable,
+    offsetof(nsStyleText, mTextRendering),
+    eStyleAnimType_EnumU8)
+CSS_PROP_TEXT(
     text-shadow,
     text_shadow,
     TextShadow,
     CSS_PROPERTY_PARSE_FUNCTION |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
         CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
         CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
@@ -3419,98 +4068,31 @@ CSS_PROP_TEXT(
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
         CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
     "",
     VARIANT_HK,
     kTextTransformKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
-CSS_PROP_DISPLAY(
-    transform,
-    transform,
-    Transform,
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
-        CSS_PROPERTY_CREATES_STACKING_CONTEXT |
-        CSS_PROPERTY_CAN_ANIMATE_ON_COMPOSITOR |
-        CSS_PROPERTY_FIXPOS_CB,
+#ifndef CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
+#ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
+CSS_PROP_FONT(
+    -x-text-zoom,
+    _x_text_zoom,
+    TextZoom,
+    CSS_PROPERTY_INTERNAL |
+        CSS_PROPERTY_PARSE_INACCESSIBLE,
     "",
     0,
     nullptr,
-    offsetof(nsStyleDisplay, mSpecifiedTransform),
-    eStyleAnimType_Custom)
-CSS_PROP_DISPLAY(
-    transform-box,
-    transform_box,
-    TransformBox,
-    CSS_PROPERTY_PARSE_VALUE,
-    "svg.transform-box.enabled",
-    VARIANT_HK,
-    kTransformBoxKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
-CSS_PROP_DISPLAY(
-    transform-origin,
-    transform_origin,
-    TransformOrigin,
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_STORES_CALC |
-        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
-    "",
-    0,
-    kImageLayerPositionKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_Custom)
-CSS_PROP_DISPLAY(
-    perspective-origin,
-    perspective_origin,
-    PerspectiveOrigin,
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_STORES_CALC |
-        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
-    "",
-    0,
-    kImageLayerPositionKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_Custom)
-CSS_PROP_DISPLAY(
-    perspective,
-    perspective,
-    Perspective,
-    CSS_PROPERTY_PARSE_VALUE |
-        CSS_PROPERTY_CREATES_STACKING_CONTEXT |
-        CSS_PROPERTY_FIXPOS_CB,
-    "",
-    VARIANT_NONE | VARIANT_INHERIT | VARIANT_LENGTH | VARIANT_POSITIVE_DIMENSION,
-    nullptr,
-    offsetof(nsStyleDisplay, mChildPerspective),
-    eStyleAnimType_Coord)
-CSS_PROP_DISPLAY(
-    transform-style,
-    transform_style,
-    TransformStyle,
-    CSS_PROPERTY_PARSE_VALUE |
-        CSS_PROPERTY_CREATES_STACKING_CONTEXT |
-        CSS_PROPERTY_FIXPOS_CB,
-    "",
-    VARIANT_HK,
-    kTransformStyleKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_DISPLAY(
-    backface-visibility,
-    backface_visibility,
-    BackfaceVisibility,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HK,
-    kBackfaceVisibilityKTable,
-    offsetof(nsStyleDisplay, mBackfaceVisibility),
-    eStyleAnimType_None)
+#endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
+#endif // CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
 CSS_PROP_POSITION(
     top,
     top,
     Top,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
@@ -3539,16 +4121,73 @@ CSS_PROP_DISPLAY(
     TouchAction,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "layout.css.touch_action.enabled",
     VARIANT_HK,
     kTouchActionKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
+CSS_PROP_DISPLAY(
+    transform,
+    transform,
+    Transform,
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
+        CSS_PROPERTY_CREATES_STACKING_CONTEXT |
+        CSS_PROPERTY_CAN_ANIMATE_ON_COMPOSITOR |
+        CSS_PROPERTY_FIXPOS_CB,
+    "",
+    0,
+    nullptr,
+    offsetof(nsStyleDisplay, mSpecifiedTransform),
+    eStyleAnimType_Custom)
+// This shorthand is essentially an alias, but it requires different
+// parsing rules, and it therefore implemented as a shorthand.
+CSS_PROP_SHORTHAND(
+    -moz-transform,
+    _moz_transform,
+    MozTransform,
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_IS_ALIAS,
+    "layout.css.prefixes.transforms")
+CSS_PROP_DISPLAY(
+    transform-box,
+    transform_box,
+    TransformBox,
+    CSS_PROPERTY_PARSE_VALUE,
+    "svg.transform-box.enabled",
+    VARIANT_HK,
+    kTransformBoxKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
+CSS_PROP_DISPLAY(
+    transform-origin,
+    transform_origin,
+    TransformOrigin,
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_STORES_CALC |
+        CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
+    "",
+    0,
+    kImageLayerPositionKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_Custom)
+CSS_PROP_DISPLAY(
+    transform-style,
+    transform_style,
+    TransformStyle,
+    CSS_PROPERTY_PARSE_VALUE |
+        CSS_PROPERTY_CREATES_STACKING_CONTEXT |
+        CSS_PROPERTY_FIXPOS_CB,
+    "",
+    VARIANT_HK,
+    kTransformStyleKTable,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
 CSS_PROP_SHORTHAND(
     transition,
     transition,
     Transition,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_DISPLAY(
     transition-delay,
@@ -3600,17 +4239,17 @@ CSS_PROP_TEXTRESET(
     unicode_bidi,
     UnicodeBidi,
     CSS_PROPERTY_PARSE_VALUE,
     "",
     VARIANT_HK,
     kUnicodeBidiKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
-#endif // !defined(CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND)
+#endif // CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
 CSS_PROP_USERINTERFACE(
     -moz-user-focus,
     user_focus,
     CSS_PROP_DOMPROP_PREFIXED(UserFocus),
     CSS_PROPERTY_PARSE_VALUE,
     "",
     VARIANT_HK,
     kUserFocusKTable,
@@ -3641,16 +4280,26 @@ CSS_PROP_UIRESET(
     user_select,
     CSS_PROP_DOMPROP_PREFIXED(UserSelect),
     CSS_PROPERTY_PARSE_VALUE,
     "",
     VARIANT_HK,
     kUserSelectKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None) // XXX bug 3935
+CSS_PROP_SVGRESET(
+    vector-effect,
+    vector_effect,
+    VectorEffect,
+    CSS_PROPERTY_PARSE_VALUE,
+    "",
+    VARIANT_HK,
+    kVectorEffectKTable,
+    offsetof(nsStyleSVGReset, mVectorEffect),
+    eStyleAnimType_EnumU8)
 // NOTE: vertical-align is only supposed to apply to :first-letter when
 // 'float' is 'none', but we don't worry about that since it has no
 // effect otherwise
 CSS_PROP_DISPLAY(
     vertical-align,
     vertical_align,
     VerticalAlign,
     CSS_PROPERTY_PARSE_VALUE |
@@ -3695,16 +4344,27 @@ CSS_PROP_POSITION(
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHKLP | VARIANT_CALC,
     kWidthKTable,
     offsetof(nsStylePosition, mWidth),
     eStyleAnimType_Coord)
+CSS_PROP_DISPLAY(
+    will-change,
+    will_change,
+    WillChange,
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
+    "",
+    0,
+    nullptr,
+    CSS_PROP_NO_OFFSET,
+    eStyleAnimType_None)
 CSS_PROP_UIRESET(
     -moz-window-dragging,
     _moz_window_dragging,
     CSS_PROP_DOMPROP_PREFIXED(WindowDragging),
     CSS_PROPERTY_PARSE_VALUE,
     "",
     VARIANT_HK,
     kWindowDraggingKTable,
@@ -3718,17 +4378,17 @@ CSS_PROP_UIRESET(
     CSS_PROPERTY_INTERNAL |
         CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_ENABLED_IN_UA_SHEETS_AND_CHROME,
     "",
     VARIANT_HK,
     kWindowShadowKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
-#endif
+#endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
 CSS_PROP_TEXT(
     word-break,
     word_break,
     WordBreak,
     CSS_PROPERTY_PARSE_VALUE,
     "",
     VARIANT_HK,
     kWordBreakKTable,
@@ -3753,26 +4413,16 @@ CSS_PROP_TEXT(
     word_wrap,
     WordWrap,
     CSS_PROPERTY_PARSE_VALUE,
     "",
     VARIANT_HK,
     kWordWrapKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
-CSS_PROP_TEXT(
-    hyphens,
-    hyphens,
-    Hyphens,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HK,
-    kHyphensKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
 CSS_PROP_VISIBILITY(
     writing-mode,
     writing_mode,
     WritingMode,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
     "layout.css.vertical-text.enabled",
     VARIANT_HK,
@@ -3785,660 +4435,16 @@ CSS_PROP_POSITION(
     ZIndex,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_CREATES_STACKING_CONTEXT,
     "",
     VARIANT_AHI,
     nullptr,
     offsetof(nsStylePosition, mZIndex),
     eStyleAnimType_Coord)
-CSS_PROP_XUL(
-    -moz-box-align,
-    box_align,
-    CSS_PROP_DOMPROP_PREFIXED(BoxAlign),
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HK,
-    kBoxAlignKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None) // XXX bug 3935
-CSS_PROP_XUL(
-    -moz-box-direction,
-    box_direction,
-    CSS_PROP_DOMPROP_PREFIXED(BoxDirection),
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HK,
-    kBoxDirectionKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None) // XXX bug 3935
-CSS_PROP_XUL(
-    -moz-box-flex,
-    box_flex,
-    CSS_PROP_DOMPROP_PREFIXED(BoxFlex),
-    CSS_PROPERTY_PARSE_VALUE |
-        CSS_PROPERTY_VALUE_NONNEGATIVE,
-    "",
-    VARIANT_HN,
-    nullptr,
-    offsetof(nsStyleXUL, mBoxFlex),
-    eStyleAnimType_float) // XXX bug 3935
-CSS_PROP_XUL(
-    -moz-box-orient,
-    box_orient,
-    CSS_PROP_DOMPROP_PREFIXED(BoxOrient),
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HK,
-    kBoxOrientKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None) // XXX bug 3935
-CSS_PROP_XUL(
-    -moz-box-pack,
-    box_pack,
-    CSS_PROP_DOMPROP_PREFIXED(BoxPack),
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HK,
-    kBoxPackKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None) // XXX bug 3935
-CSS_PROP_XUL(
-    -moz-box-ordinal-group,
-    box_ordinal_group,
-    CSS_PROP_DOMPROP_PREFIXED(BoxOrdinalGroup),
-    CSS_PROPERTY_PARSE_VALUE |
-        CSS_PROPERTY_VALUE_NONNEGATIVE,
-    "",
-    VARIANT_HI,
-    nullptr,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_XUL(
-    -moz-stack-sizing,
-    stack_sizing,
-    CSS_PROP_DOMPROP_PREFIXED(StackSizing),
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HK,
-    kStackSizingKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-
-#ifndef CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
-#ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
-CSS_PROP_FONT(
-    -moz-script-level,
-    script_level,
-    ScriptLevel,
-    // We only allow 'script-level' when unsafe rules are enabled, because
-    // otherwise it could interfere with rulenode optimizations if used in
-    // a non-MathML-enabled document.
-    CSS_PROPERTY_INTERNAL |
-        CSS_PROPERTY_ENABLED_IN_UA_SHEETS |
-        CSS_PROPERTY_PARSE_VALUE,
-    "",
-    // script-level can take Auto, Integer and Number values, but only Auto
-    // ("increment if parent is not in displaystyle") and Integer
-    // ("relative") values can be specified in a style sheet.
-    VARIANT_AHI,
-    nullptr,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_FONT(
-    -moz-script-size-multiplier,
-    script_size_multiplier,
-    ScriptSizeMultiplier,
-    CSS_PROPERTY_INTERNAL |
-        CSS_PROPERTY_PARSE_INACCESSIBLE,
-    "",
-    0,
-    nullptr,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_FONT(
-    -moz-script-min-size,
-    script_min_size,
-    ScriptMinSize,
-    CSS_PROPERTY_INTERNAL |
-        CSS_PROPERTY_PARSE_INACCESSIBLE,
-    "",
-    0,
-    nullptr,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_FONT(
-    -moz-math-variant,
-    math_variant,
-    MathVariant,
-    CSS_PROPERTY_INTERNAL |
-        CSS_PROPERTY_PARSE_INACCESSIBLE,
-    "",
-    VARIANT_HK,
-    kMathVariantKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_FONT(
-    -moz-math-display,
-    math_display,
-    MathDisplay,
-    CSS_PROPERTY_INTERNAL |
-        CSS_PROPERTY_ENABLED_IN_UA_SHEETS |
-        CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HK,
-    kMathDisplayKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-#endif // !defined(CSS_PROP_LIST_EXCLUDE_INTERNAL)
-#endif // !defined(CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND)
-
-CSS_PROP_SVGRESET(
-    clip-path,
-    clip_path,
-    ClipPath,
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_CREATES_STACKING_CONTEXT,
-    "",
-    0,
-    nullptr,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_SVG(
-    clip-rule,
-    clip_rule,
-    ClipRule,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HK,
-    kFillRuleKTable,
-    offsetof(nsStyleSVG, mClipRule),
-    eStyleAnimType_EnumU8)
-CSS_PROP_SVG(
-    color-interpolation,
-    color_interpolation,
-    ColorInterpolation,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HK,
-    kColorInterpolationKTable,
-    offsetof(nsStyleSVG, mColorInterpolation),
-    eStyleAnimType_EnumU8)
-CSS_PROP_SVG(
-    color-interpolation-filters,
-    color_interpolation_filters,
-    ColorInterpolationFilters,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HK,
-    kColorInterpolationKTable,
-    offsetof(nsStyleSVG, mColorInterpolationFilters),
-    eStyleAnimType_EnumU8)
-CSS_PROP_SVGRESET(
-    dominant-baseline,
-    dominant_baseline,
-    DominantBaseline,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HK,
-    kDominantBaselineKTable,
-    offsetof(nsStyleSVGReset, mDominantBaseline),
-    eStyleAnimType_EnumU8)
-CSS_PROP_SVG(
-    fill,
-    fill,
-    Fill,
-    CSS_PROPERTY_PARSE_FUNCTION,
-    "",
-    0,
-    kContextPatternKTable,
-    offsetof(nsStyleSVG, mFill),
-    eStyleAnimType_PaintServer)
-CSS_PROP_SVG(
-    fill-opacity,
-    fill_opacity,
-    FillOpacity,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HN | VARIANT_OPENTYPE_SVG_KEYWORD,
-    kContextOpacityKTable,
-    offsetof(nsStyleSVG, mFillOpacity),
-    eStyleAnimType_float)
-CSS_PROP_SVG(
-    fill-rule,
-    fill_rule,
-    FillRule,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HK,
-    kFillRuleKTable,
-    offsetof(nsStyleSVG, mFillRule),
-    eStyleAnimType_EnumU8)
-CSS_PROP_EFFECTS(
-    filter,
-    filter,
-    Filter,
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_CREATES_STACKING_CONTEXT |
-        CSS_PROPERTY_FIXPOS_CB,
-    "",
-    0,
-    nullptr,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_Custom)
-CSS_PROP_SVGRESET(
-    flood-color,
-    flood_color,
-    FloodColor,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HC,
-    nullptr,
-    offsetof(nsStyleSVGReset, mFloodColor),
-    eStyleAnimType_Color)
-CSS_PROP_SVGRESET(
-    flood-opacity,
-    flood_opacity,
-    FloodOpacity,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HN,
-    nullptr,
-    offsetof(nsStyleSVGReset, mFloodOpacity),
-    eStyleAnimType_float)
-CSS_PROP_VISIBILITY(
-    image-rendering,
-    image_rendering,
-    ImageRendering,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HK,
-    kImageRenderingKTable,
-    offsetof(nsStyleVisibility, mImageRendering),
-    eStyleAnimType_EnumU8)
-CSS_PROP_SVGRESET(
-    lighting-color,
-    lighting_color,
-    LightingColor,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HC,
-    nullptr,
-    offsetof(nsStyleSVGReset, mLightingColor),
-    eStyleAnimType_Color)
-CSS_PROP_SHORTHAND(
-    marker,
-    marker,
-    Marker,
-    CSS_PROPERTY_PARSE_FUNCTION,
-    "")
-CSS_PROP_SVG(
-    marker-end,
-    marker_end,
-    MarkerEnd,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HUO,
-    nullptr,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_SVG(
-    marker-mid,
-    marker_mid,
-    MarkerMid,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HUO,
-    nullptr,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_SVG(
-    marker-start,
-    marker_start,
-    MarkerStart,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HUO,
-    nullptr,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-#ifdef MOZ_ENABLE_MASK_AS_SHORTHAND
-CSS_PROP_SHORTHAND(
-    mask,
-    mask,
-    Mask,
-    CSS_PROPERTY_PARSE_FUNCTION,
-    "")
-CSS_PROP_SVGRESET(
-    mask-clip,
-    mask_clip,
-    MaskClip,
-    CSS_PROPERTY_PARSE_VALUE_LIST |
-        CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
-    "",
-    VARIANT_KEYWORD, // used by list parsing
-    kImageLayerOriginKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_SVGRESET(
-    mask-composite,
-    mask_composite,
-    MaskComposite,
-    CSS_PROPERTY_PARSE_VALUE_LIST |
-        CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
-    "",
-    VARIANT_KEYWORD, // used by list parsing
-    kImageLayerCompositeKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_SVGRESET(
-    mask-image,
-    mask_image,
-    MaskImage,
-    CSS_PROPERTY_PARSE_VALUE_LIST |
-        CSS_PROPERTY_CREATES_STACKING_CONTEXT |
-        CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
-        CSS_PROPERTY_START_IMAGE_LOADS,
-    "",
-    VARIANT_IMAGE, // used by list parsing
-    nullptr,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_SVGRESET(
-    mask-mode,
-    mask_mode,
-    MaskMode,
-    CSS_PROPERTY_PARSE_VALUE_LIST |
-        CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
-    "",
-    VARIANT_KEYWORD, // used by list parsing
-    kImageLayerModeKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_SVGRESET(
-    mask-origin,
-    mask_origin,
-    MaskOrigin,
-    CSS_PROPERTY_PARSE_VALUE_LIST |
-        CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
-    "",
-    VARIANT_KEYWORD, // used by list parsing
-    kImageLayerOriginKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_SVGRESET(
-    mask-repeat,
-    mask_repeat,
-    MaskRepeat,
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
-    "",
-    VARIANT_KEYWORD, // used by list parsing
-    kImageLayerRepeatKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_SVGRESET(
-    mask-position,
-    mask_position,
-    MaskPosition,
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
-        CSS_PROPERTY_STORES_CALC,
-    "",
-    0,
-    kImageLayerPositionKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_Custom)
-CSS_PROP_SVGRESET(
-    mask-size,
-    mask_size,
-    MaskSize,
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
-        CSS_PROPERTY_VALUE_NONNEGATIVE |
-        CSS_PROPERTY_STORES_CALC,
-    "",
-    0,
-    kImageLayerSizeKTable,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_Custom)
-#else
-CSS_PROP_SVGRESET(
-    mask,
-    mask,
-    Mask,
-    CSS_PROPERTY_PARSE_VALUE |
-      CSS_PROPERTY_CREATES_STACKING_CONTEXT,
-    "",
-    VARIANT_HUO,
-    nullptr,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-#endif
-CSS_PROP_SVGRESET(
-    mask-type,
-    mask_type,
-    MaskType,
-    CSS_PROPERTY_PARSE_VALUE,
-    "layout.css.masking.enabled",
-    VARIANT_HK,
-    kMaskTypeKTable,
-    offsetof(nsStyleSVGReset, mMaskType),
-    eStyleAnimType_EnumU8)
-CSS_PROP_SVG(
-    shape-rendering,
-    shape_rendering,
-    ShapeRendering,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HK,
-    kShapeRenderingKTable,
-    offsetof(nsStyleSVG, mShapeRendering),
-    eStyleAnimType_EnumU8)
-CSS_PROP_SVGRESET(
-    stop-color,
-    stop_color,
-    StopColor,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HC,
-    nullptr,
-    offsetof(nsStyleSVGReset, mStopColor),
-    eStyleAnimType_Color)
-CSS_PROP_SVGRESET(
-    stop-opacity,
-    stop_opacity,
-    StopOpacity,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HN,
-    nullptr,
-    offsetof(nsStyleSVGReset, mStopOpacity),
-    eStyleAnimType_float)
-CSS_PROP_SVG(
-    stroke,
-    stroke,
-    Stroke,
-    CSS_PROPERTY_PARSE_FUNCTION,
-    "",
-    0,
-    kContextPatternKTable,
-    offsetof(nsStyleSVG, mStroke),
-    eStyleAnimType_PaintServer)
-CSS_PROP_SVG(
-    stroke-dasharray,
-    stroke_dasharray,
-    StrokeDasharray,
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
-        CSS_PROPERTY_NUMBERS_ARE_PIXELS,
-        // NOTE: Internal values have range restrictions.
-    "",
-    0,
-    kStrokeContextValueKTable,
-    CSS_PROP_NO_OFFSET, /* property stored in 2 separate members */
-    eStyleAnimType_Custom)
-CSS_PROP_SVG(
-    stroke-dashoffset,
-    stroke_dashoffset,
-    StrokeDashoffset,
-    CSS_PROPERTY_PARSE_VALUE |
-        CSS_PROPERTY_NUMBERS_ARE_PIXELS,
-    "",
-    VARIANT_HLPN | VARIANT_OPENTYPE_SVG_KEYWORD,
-    kStrokeContextValueKTable,
-    offsetof(nsStyleSVG, mStrokeDashoffset),
-    eStyleAnimType_Coord)
-CSS_PROP_SVG(
-    stroke-linecap,
-    stroke_linecap,
-    StrokeLinecap,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HK,
-    kStrokeLinecapKTable,
-    offsetof(nsStyleSVG, mStrokeLinecap),
-    eStyleAnimType_EnumU8)
-CSS_PROP_SVG(
-    stroke-linejoin,
-    stroke_linejoin,
-    StrokeLinejoin,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HK,
-    kStrokeLinejoinKTable,
-    offsetof(nsStyleSVG, mStrokeLinejoin),
-    eStyleAnimType_EnumU8)
-CSS_PROP_SVG(
-    stroke-miterlimit,
-    stroke_miterlimit,
-    StrokeMiterlimit,
-    CSS_PROPERTY_PARSE_VALUE |
-        CSS_PROPERTY_VALUE_AT_LEAST_ONE,
-    "",
-    VARIANT_HN,
-    nullptr,
-    offsetof(nsStyleSVG, mStrokeMiterlimit),
-    eStyleAnimType_float)
-CSS_PROP_SVG(
-    stroke-opacity,
-    stroke_opacity,
-    StrokeOpacity,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HN | VARIANT_OPENTYPE_SVG_KEYWORD,
-    kContextOpacityKTable,
-    offsetof(nsStyleSVG, mStrokeOpacity),
-    eStyleAnimType_float)
-CSS_PROP_SVG(
-    stroke-width,
-    stroke_width,
-    StrokeWidth,
-    CSS_PROPERTY_PARSE_VALUE |
-        CSS_PROPERTY_VALUE_NONNEGATIVE |
-        CSS_PROPERTY_NUMBERS_ARE_PIXELS,
-    "",
-    VARIANT_HLPN | VARIANT_OPENTYPE_SVG_KEYWORD,
-    kStrokeContextValueKTable,
-    offsetof(nsStyleSVG, mStrokeWidth),
-    eStyleAnimType_Coord)
-CSS_PROP_SVG(
-    text-anchor,
-    text_anchor,
-    TextAnchor,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HK,
-    kTextAnchorKTable,
-    offsetof(nsStyleSVG, mTextAnchor),
-    eStyleAnimType_EnumU8)
-CSS_PROP_TEXT(
-    text-rendering,
-    text_rendering,
-    TextRendering,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HK,
-    kTextRenderingKTable,
-    offsetof(nsStyleText, mTextRendering),
-    eStyleAnimType_EnumU8)
-CSS_PROP_SVGRESET(
-    vector-effect,
-    vector_effect,
-    VectorEffect,
-    CSS_PROPERTY_PARSE_VALUE,
-    "",
-    VARIANT_HK,
-    kVectorEffectKTable,
-    offsetof(nsStyleSVGReset, mVectorEffect),
-    eStyleAnimType_EnumU8)
-
-CSS_PROP_DISPLAY(
-    will-change,
-    will_change,
-    WillChange,
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
-    "",
-    0,
-    nullptr,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-
-// The shorthands below are essentially aliases, but they require different
-// parsing rules, and are therefore implemented as shorthands.
-CSS_PROP_SHORTHAND(
-    -moz-transform,
-    _moz_transform,
-    MozTransform,
-    CSS_PROPERTY_PARSE_FUNCTION |
-        CSS_PROPERTY_IS_ALIAS,
-    "layout.css.prefixes.transforms")
-
-#ifndef CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
-#ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
-// We have a few properties that are in style structs but are not stored
-// in style sheets (or nsCSS* structs).  Some fields in these property
-// definitions are bogus (e.g., they work for nsRuleData* offsets but
-// not nsCSS* offsets).
-CSS_PROP_FONT(
-    -x-lang,
-    _x_lang,
-    Lang,
-    CSS_PROPERTY_INTERNAL |
-        CSS_PROPERTY_PARSE_INACCESSIBLE,
-    "",
-    0,
-    nullptr,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_TABLE(
-    -x-span,
-    _x_span,
-    Span,
-    CSS_PROPERTY_INTERNAL |
-        CSS_PROPERTY_PARSE_INACCESSIBLE,
-    "",
-    0,
-    nullptr,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-CSS_PROP_FONT(
-    -x-text-zoom,
-    _x_text_zoom,
-    TextZoom,
-    CSS_PROPERTY_INTERNAL |
-        CSS_PROPERTY_PARSE_INACCESSIBLE,
-    "",
-    0,
-    nullptr,
-    CSS_PROP_NO_OFFSET,
-    eStyleAnimType_None)
-#endif /* !defined(CSS_PROP_LIST_EXCLUDE_INTERNAL) */
-#endif /* !defined(CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND) */
 
 #ifdef USED_CSS_PROP
 
 #undef USED_CSS_PROP
 #undef CSS_PROP_FONT
 #undef CSS_PROP_COLOR
 #undef CSS_PROP_BACKGROUND
 #undef CSS_PROP_LIST