baseline-scss 0.5.0 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/LICENSE +1 -1
- data/lib/baseline_scss/version.rb +1 -1
- data/lib/baseline_scss.rb +3 -5
- data/src/baseline-scss/_helpers.scss +23 -7
- data/src/baseline-scss/_mixins.scss +65 -7
- data/src/baseline-scss/_reboot.scss +16 -172
- data/src/baseline-scss/_variables.scss +63 -127
- data/src/baseline-scss/content/_buttons.scss +77 -24
- data/src/baseline-scss/content/_code.scss +23 -10
- data/src/baseline-scss/content/_forms.scss +167 -53
- data/src/baseline-scss/content/_index.scss +8 -0
- data/src/baseline-scss/content/_lists.scss +4 -3
- data/src/baseline-scss/content/_multimedia.scss +13 -0
- data/src/baseline-scss/content/_tables.scss +21 -1
- data/src/baseline-scss/content/_typography.scss +68 -41
- data/src/baseline-scss.scss +5 -11
- metadata +4 -59
- data/src/_baseline.scss +0 -5
- data/src/baseline-scss/_content.scss +0 -7
- data/src/baseline-scss/mixins/_.scss +0 -4
- data/src/baseline-scss/mixins/_after_border.scss +0 -12
- data/src/baseline-scss/mixins/_clearfix.scss +0 -7
- data/src/baseline-scss/mixins/_font_awesome.scss +0 -12
- data/src/baseline-scss/mixins/_max_width_container.scss +0 -15
- data/src/baseline-scss/mixins/_outline.scss +0 -5
- data/src/baseline-scss/mixins/_sr_only.scss +0 -17
- data/src/vendors/_bourbon.scss +0 -54
- data/src/vendors/_include-media.scss +0 -591
- data/src/vendors/bourbon/helpers/_buttons-list.scss +0 -14
- data/src/vendors/bourbon/helpers/_scales.scss +0 -27
- data/src/vendors/bourbon/helpers/_text-inputs-list.scss +0 -26
- data/src/vendors/bourbon/library/_border-color.scss +0 -26
- data/src/vendors/bourbon/library/_border-radius.scss +0 -85
- data/src/vendors/bourbon/library/_border-style.scss +0 -25
- data/src/vendors/bourbon/library/_border-width.scss +0 -25
- data/src/vendors/bourbon/library/_buttons.scss +0 -84
- data/src/vendors/bourbon/library/_clearfix.scss +0 -25
- data/src/vendors/bourbon/library/_contrast-switch.scss +0 -81
- data/src/vendors/bourbon/library/_ellipsis.scss +0 -36
- data/src/vendors/bourbon/library/_font-face.scss +0 -65
- data/src/vendors/bourbon/library/_font-stacks.scss +0 -248
- data/src/vendors/bourbon/library/_hide-text.scss +0 -24
- data/src/vendors/bourbon/library/_hide-visually.scss +0 -70
- data/src/vendors/bourbon/library/_margin.scss +0 -37
- data/src/vendors/bourbon/library/_modular-scale.scss +0 -120
- data/src/vendors/bourbon/library/_overflow-wrap.scss +0 -25
- data/src/vendors/bourbon/library/_padding.scss +0 -36
- data/src/vendors/bourbon/library/_position.scss +0 -62
- data/src/vendors/bourbon/library/_prefixer.scss +0 -37
- data/src/vendors/bourbon/library/_shade.scss +0 -32
- data/src/vendors/bourbon/library/_size.scss +0 -50
- data/src/vendors/bourbon/library/_strip-unit.scss +0 -17
- data/src/vendors/bourbon/library/_text-inputs.scss +0 -163
- data/src/vendors/bourbon/library/_timing-functions.scss +0 -36
- data/src/vendors/bourbon/library/_tint.scss +0 -32
- data/src/vendors/bourbon/library/_triangle.scss +0 -82
- data/src/vendors/bourbon/library/_value-prefixer.scss +0 -37
- data/src/vendors/bourbon/settings/_settings.scss +0 -75
- data/src/vendors/bourbon/utilities/_assign-inputs.scss +0 -28
- data/src/vendors/bourbon/utilities/_compact-shorthand.scss +0 -42
- data/src/vendors/bourbon/utilities/_contrast-ratio.scss +0 -31
- data/src/vendors/bourbon/utilities/_directional-property.scss +0 -68
- data/src/vendors/bourbon/utilities/_fetch-bourbon-setting.scss +0 -16
- data/src/vendors/bourbon/utilities/_font-source-declaration.scss +0 -52
- data/src/vendors/bourbon/utilities/_gamma.scss +0 -24
- data/src/vendors/bourbon/utilities/_lightness.scss +0 -24
- data/src/vendors/bourbon/utilities/_unpack-shorthand.scss +0 -29
- data/src/vendors/bourbon/validators/_contains-falsy.scss +0 -20
- data/src/vendors/bourbon/validators/_contains.scss +0 -26
- data/src/vendors/bourbon/validators/_is-color.scss +0 -13
- data/src/vendors/bourbon/validators/_is-length.scss +0 -20
- data/src/vendors/bourbon/validators/_is-number.scss +0 -15
- data/src/vendors/bourbon/validators/_is-size.scss +0 -18
| @@ -1,37 +1,90 @@ | |
| 1 | 
            -
             | 
| 2 | 
            -
             | 
| 3 | 
            -
             | 
| 4 | 
            -
             | 
| 5 | 
            -
             | 
| 6 | 
            -
             | 
| 7 | 
            -
             | 
| 8 | 
            -
               | 
| 1 | 
            +
            @use 'baseline-scss/mixins' as _;
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            button,
         | 
| 4 | 
            +
            [type='button'],
         | 
| 5 | 
            +
            [type='reset'],
         | 
| 6 | 
            +
            [type='submit'],
         | 
| 7 | 
            +
            .button {
         | 
| 8 | 
            +
              --_button_background_color: var(--button_background_color);
         | 
| 9 | 
            +
              --_button_border_color: var(--button_border_color);
         | 
| 10 | 
            +
              --_button_border_width: var(--button_border_width, .1rem);
         | 
| 11 | 
            +
              --_button_color: var(--button_color);
         | 
| 12 | 
            +
             | 
| 13 | 
            +
              background-color: var(--_button_background_color, var(--gray_200));
         | 
| 14 | 
            +
              border-color: var(--_button_border_color, var(--gray_600));
         | 
| 15 | 
            +
              border-radius: var(--button_border_radius, .3rem);
         | 
| 16 | 
            +
              border-style: var(--button_border_style, solid);
         | 
| 17 | 
            +
              border-width: var(--_button_border_width);
         | 
| 18 | 
            +
              color: var(--_button_color, var(--body_color));
         | 
| 19 | 
            +
              display: var(--button_display, inline-block);
         | 
| 20 | 
            +
              font-size: var(--button_font_size, var(--body_font_size));
         | 
| 21 | 
            +
              font-weight: var(--button_font_weight, var(--font_weight_normal));
         | 
| 22 | 
            +
              line-height: var(--button_line_height, calc(2 * (var(--_) - var(--_button_border_width))));
         | 
| 23 | 
            +
              padding: var(--button_padding, 0 .5em);
         | 
| 24 | 
            +
              text-decoration: var(--button_text-decoration, none);
         | 
| 25 | 
            +
              white-space: var(--button_white_space, nowrap);
         | 
| 9 26 |  | 
| 10 27 | 
             
              &:hover {
         | 
| 11 | 
            -
                 | 
| 12 | 
            -
                 | 
| 13 | 
            -
                 | 
| 28 | 
            +
                --_button_background_color: var(--button_background_color_hover, var(--button_background_color, var(--gray_300)));
         | 
| 29 | 
            +
                --_button_border_color: var(--button_border_color_hover, var(--button_border_color, var(--gray_800)));
         | 
| 30 | 
            +
                --_button_color: var(--button_color_hover, var(--button_color));
         | 
| 14 31 | 
             
              }
         | 
| 15 32 |  | 
| 16 33 | 
             
              &:focus {
         | 
| 17 | 
            -
                 | 
| 34 | 
            +
                --_button_background_color: var(--button_background_color_focus, var(--button_background_color));
         | 
| 35 | 
            +
                --_button_border_color: var(--button_border_color_focus, var(--button_border_color, var(--gray_600)));
         | 
| 36 | 
            +
                --_button_color: var(--button_color_focus, var(--button_color));
         | 
| 18 37 |  | 
| 19 | 
            -
                 | 
| 20 | 
            -
             | 
| 21 | 
            -
                 | 
| 38 | 
            +
                &:not(:focus-visible) {
         | 
| 39 | 
            +
                  outline: 0; // Explicitly remove focus outline in Chromium.
         | 
| 40 | 
            +
                }
         | 
| 22 41 | 
             
              }
         | 
| 42 | 
            +
            }
         | 
| 23 43 |  | 
| 24 | 
            -
             | 
| 25 | 
            -
             | 
| 26 | 
            -
             | 
| 27 | 
            -
             | 
| 44 | 
            +
            button:active,
         | 
| 45 | 
            +
            [type='button']:active,
         | 
| 46 | 
            +
            [type='reset']:active,
         | 
| 47 | 
            +
            [type='submit']:active,
         | 
| 48 | 
            +
            .button:has(:checked) {
         | 
| 49 | 
            +
              --_button_background_color: var(--button_background_color_active, var(--button_background_color, var(--gray_100)));
         | 
| 50 | 
            +
              --_button_border_color: var(--button_border_color_active, var(--button_border_color, var(--gray_500)));
         | 
| 51 | 
            +
              --_button_color: var(--button_color_active, var(--button_color));
         | 
| 52 | 
            +
            }
         | 
| 53 | 
            +
             | 
| 54 | 
            +
            button:disabled,
         | 
| 55 | 
            +
            [type='button']:disabled,
         | 
| 56 | 
            +
            [type='reset']:disabled,
         | 
| 57 | 
            +
            [type='submit']:disabled,
         | 
| 58 | 
            +
            .button:has(:disabled),
         | 
| 59 | 
            +
            .button._disabled {
         | 
| 60 | 
            +
              --_button_background_color: var(--button_background_color_disabled, var(--button_background_color));
         | 
| 61 | 
            +
              --_button_border_color: var(--button_border_color_disabled, var(--button_border_color, var(--gray_300)));
         | 
| 62 | 
            +
              --_button_color: var(--button_color_disabled, var(--button_color, var(--gray_400)));
         | 
| 63 | 
            +
             | 
| 64 | 
            +
              pointer-events: none;
         | 
| 65 | 
            +
            }
         | 
| 66 | 
            +
             | 
| 67 | 
            +
            button,
         | 
| 68 | 
            +
            [type='button'],
         | 
| 69 | 
            +
            [type='reset'],
         | 
| 70 | 
            +
            [type='submit'] {
         | 
| 71 | 
            +
              &:not(:disabled) {
         | 
| 72 | 
            +
                cursor: pointer; // Add 'hand' cursor to non-disabled button elements.
         | 
| 28 73 | 
             
              }
         | 
| 74 | 
            +
            }
         | 
| 29 75 |  | 
| 30 | 
            -
             | 
| 31 | 
            -
             | 
| 32 | 
            -
             | 
| 33 | 
            -
                 | 
| 34 | 
            -
                pointer-events: none;
         | 
| 76 | 
            +
            button:not(:disabled),
         | 
| 77 | 
            +
            .button:not(._disabled) {
         | 
| 78 | 
            +
              &:focus {
         | 
| 79 | 
            +
                @include _.outline();
         | 
| 35 80 | 
             
              }
         | 
| 36 81 | 
             
            }
         | 
| 37 82 |  | 
| 83 | 
            +
            a.button {
         | 
| 84 | 
            +
              --link_color: var(--_button_color, var(--body_color));
         | 
| 85 | 
            +
              --link_text_decoration: var(--button_text-decoration, none);
         | 
| 86 | 
            +
            }
         | 
| 87 | 
            +
             | 
| 88 | 
            +
            [role='button'] {
         | 
| 89 | 
            +
              cursor: pointer; // Set the cursor for non-`<button>` buttons.
         | 
| 90 | 
            +
            }
         | 
| @@ -1,15 +1,28 @@ | |
| 1 | 
            -
            pre | 
| 2 | 
            -
              @include _(var(--font_size_code), var(--font_size_code_lines));
         | 
| 3 | 
            -
              @include margin(0 null var(--_));
         | 
| 4 | 
            -
             | 
| 5 | 
            -
              font-family: var(--font_family_code);
         | 
| 6 | 
            -
            }
         | 
| 7 | 
            -
             | 
| 1 | 
            +
            pre,
         | 
| 8 2 | 
             
            code,
         | 
| 9 3 | 
             
            kbd,
         | 
| 10 4 | 
             
            samp {
         | 
| 11 | 
            -
              font-family: var(-- | 
| 12 | 
            -
              font-size: var(-- | 
| 13 | 
            -
             | 
| 5 | 
            +
              font-family: var(--code_font_family);
         | 
| 6 | 
            +
              font-size: var(--code_font_size);
         | 
| 7 | 
            +
            }
         | 
| 8 | 
            +
             | 
| 9 | 
            +
            pre {
         | 
| 10 | 
            +
              display: block;
         | 
| 11 | 
            +
              line-height: var(--code_line_height);
         | 
| 12 | 
            +
              margin: 0 0 var(--_);
         | 
| 13 | 
            +
              overflow: auto;
         | 
| 14 | 
            +
             | 
| 15 | 
            +
              code {
         | 
| 16 | 
            +
                color: inherit;
         | 
| 17 | 
            +
                font-size: inherit;
         | 
| 18 | 
            +
                word-break: normal;
         | 
| 19 | 
            +
              }
         | 
| 14 20 | 
             
            }
         | 
| 15 21 |  | 
| 22 | 
            +
            code {
         | 
| 23 | 
            +
              word-wrap: break-word;
         | 
| 24 | 
            +
             | 
| 25 | 
            +
              a > & {
         | 
| 26 | 
            +
                color: inherit; // Avoid broken underline and more when inside anchors.
         | 
| 27 | 
            +
              }
         | 
| 28 | 
            +
            }
         | 
| @@ -1,94 +1,208 @@ | |
| 1 | 
            +
            @use 'baseline-scss/mixins' as _;
         | 
| 2 | 
            +
             | 
| 1 3 | 
             
            form {
         | 
| 2 | 
            -
              margin:  | 
| 4 | 
            +
              margin-bottom: var(--_);
         | 
| 5 | 
            +
             | 
| 6 | 
            +
              > fieldset:last-child {
         | 
| 7 | 
            +
                margin-bottom: 0;
         | 
| 8 | 
            +
              }
         | 
| 3 9 | 
             
            }
         | 
| 4 10 |  | 
| 5 11 | 
             
            fieldset {
         | 
| 6 | 
            -
               | 
| 7 | 
            -
             | 
| 8 | 
            -
              border: 0;
         | 
| 9 | 
            -
              padding: var(--_) var(--fieldset_padding_h);
         | 
| 12 | 
            +
              border: 0; // Don't affect page layout.
         | 
| 10 13 | 
             
              margin: 0 0 var(--_);
         | 
| 14 | 
            +
              min-width: 0; // Behave like a standard block element.
         | 
| 15 | 
            +
              padding: var(--_) .5em;
         | 
| 11 16 |  | 
| 12 | 
            -
               | 
| 13 | 
            -
                 | 
| 14 | 
            -
                z-index: -1;
         | 
| 15 | 
            -
              }
         | 
| 16 | 
            -
             | 
| 17 | 
            -
              > :last-child {
         | 
| 18 | 
            -
                margin-bottom: 0;
         | 
| 17 | 
            +
              &:has(> legend:first-child) {
         | 
| 18 | 
            +
                @include _.inset_border();
         | 
| 19 19 | 
             
              }
         | 
| 20 20 | 
             
            }
         | 
| 21 21 |  | 
| 22 22 | 
             
            legend {
         | 
| 23 23 | 
             
              background-color: var(--body_background_color);
         | 
| 24 | 
            -
              padding:  | 
| 24 | 
            +
              padding: 0 .5em;
         | 
| 25 25 | 
             
            }
         | 
| 26 26 |  | 
| 27 | 
            -
             | 
| 28 | 
            -
             | 
| 29 | 
            -
             | 
| 30 | 
            -
              border: var(--input_border_width) var(--input_border_style) var(--input_border_color);
         | 
| 31 | 
            -
              border-radius: var(--input_border_radius);
         | 
| 32 | 
            -
              color: var(--input_color);
         | 
| 33 | 
            -
              height: var(--input_height);
         | 
| 27 | 
            +
            label {
         | 
| 28 | 
            +
              display: inline-block; // Allow labels to use `margin` for spacing.
         | 
| 29 | 
            +
            }
         | 
| 34 30 |  | 
| 35 | 
            -
             | 
| 36 | 
            -
             | 
| 37 | 
            -
             | 
| 38 | 
            -
             | 
| 31 | 
            +
            input,
         | 
| 32 | 
            +
            optgroup,
         | 
| 33 | 
            +
            select,
         | 
| 34 | 
            +
            textarea {
         | 
| 35 | 
            +
              font-size: inherit;
         | 
| 36 | 
            +
              line-height: inherit;
         | 
| 37 | 
            +
             | 
| 38 | 
            +
              &:disabled {
         | 
| 39 | 
            +
                pointer-events: none;
         | 
| 39 40 | 
             
              }
         | 
| 41 | 
            +
            }
         | 
| 40 42 |  | 
| 43 | 
            +
            input,
         | 
| 44 | 
            +
            select,
         | 
| 45 | 
            +
            textarea {
         | 
| 41 46 | 
             
              &:focus {
         | 
| 42 | 
            -
                @include outline();
         | 
| 47 | 
            +
                @include _.outline();
         | 
| 48 | 
            +
              }
         | 
| 49 | 
            +
            }
         | 
| 50 | 
            +
             | 
| 51 | 
            +
            [type='color'],
         | 
| 52 | 
            +
            [type='date'],
         | 
| 53 | 
            +
            [type='datetime'],
         | 
| 54 | 
            +
            [type='datetime-local'],
         | 
| 55 | 
            +
            [type='email'],
         | 
| 56 | 
            +
            [type='month'],
         | 
| 57 | 
            +
            [type='number'],
         | 
| 58 | 
            +
            [type='password'],
         | 
| 59 | 
            +
            [type='search'],
         | 
| 60 | 
            +
            [type='tel'],
         | 
| 61 | 
            +
            [type='text'],
         | 
| 62 | 
            +
            [type='time'],
         | 
| 63 | 
            +
            [type='url'],
         | 
| 64 | 
            +
            [type='week'],
         | 
| 65 | 
            +
            input:not([type]),
         | 
| 66 | 
            +
            select,
         | 
| 67 | 
            +
            textarea {
         | 
| 68 | 
            +
              --_input_background_color: var(--input_background_color);
         | 
| 69 | 
            +
              --_input_border_color: var(--input_border_color);
         | 
| 70 | 
            +
              --_input_border_width: var(--input_border_width, .1rem);
         | 
| 71 | 
            +
              --_input_color: var(--input_color);
         | 
| 72 | 
            +
             | 
| 73 | 
            +
              background-color: var(--_input_background_color, var(--body_background_color));
         | 
| 74 | 
            +
              border-color: var(--_input_border_color, var(--gray_600));
         | 
| 75 | 
            +
              border-radius: var(--input_border_radius, 0);
         | 
| 76 | 
            +
              border-style: var(--input_border_style, solid);
         | 
| 77 | 
            +
              border-width: var(--_input_border_width);
         | 
| 78 | 
            +
              color: var(--_input_color, var(--body_color));
         | 
| 79 | 
            +
              font-size: var(--input_font_size, var(--body_font_size));
         | 
| 80 | 
            +
              font-weight: var(--input_font_weight, var(--font_weight_normal));
         | 
| 81 | 
            +
              line-height: var(--input_line_height, calc(2 * (var(--_) - var(--_input_border_width))));
         | 
| 82 | 
            +
              padding: var(--input_padding, 0 .25em);
         | 
| 83 | 
            +
             | 
| 84 | 
            +
              &:hover {
         | 
| 85 | 
            +
                --_input_background_color: var(--input_background_color_hover, var(--input_background_color));
         | 
| 86 | 
            +
                --_input_border_color: var(--input_border_color_hover, var(--input_border_color, var(--gray_800)));
         | 
| 87 | 
            +
                --_input_color: var(--input_color_hover, var(--input_color));
         | 
| 88 | 
            +
              }
         | 
| 43 89 |  | 
| 44 | 
            -
             | 
| 45 | 
            -
                 | 
| 46 | 
            -
                 | 
| 90 | 
            +
              &:focus {
         | 
| 91 | 
            +
                --_input_background_color: var(--input_background_color_focus, var(--input_background_color));
         | 
| 92 | 
            +
                --_input_border_color: var(--input_border_color_focus, var(--input_border_color));
         | 
| 93 | 
            +
                --_input_color: var(--input_color_focus, var(--input_color));
         | 
| 47 94 | 
             
              }
         | 
| 48 95 |  | 
| 49 96 | 
             
              &:active {
         | 
| 50 | 
            -
                 | 
| 51 | 
            -
                 | 
| 52 | 
            -
                 | 
| 97 | 
            +
                --_input_background_color: var(--input_background_color_active, var(--input_background_color));
         | 
| 98 | 
            +
                --_input_border_color: var(--input_border_color_active, var(--input_border_color, var(--gray_500)));
         | 
| 99 | 
            +
                --_input_color: var(--input_color_active, var(--input_color));
         | 
| 53 100 | 
             
              }
         | 
| 54 101 |  | 
| 55 | 
            -
               | 
| 56 | 
            -
                 | 
| 57 | 
            -
                border-color: var(--input_border_color_disabled);
         | 
| 58 | 
            -
                color: var(--input_color_disabled);
         | 
| 59 | 
            -
                pointer-events: none;
         | 
| 102 | 
            +
              &[aria-activedescendant] {
         | 
| 103 | 
            +
                outline: 0;
         | 
| 60 104 | 
             
              }
         | 
| 61 105 |  | 
| 62 | 
            -
               | 
| 63 | 
            -
                 | 
| 64 | 
            -
                 | 
| 65 | 
            -
                color: var(--input_color_read_only);
         | 
| 106 | 
            +
              &[aria-invalid='true'] {
         | 
| 107 | 
            +
                --_input_background_color: var(--input_background_color_invalid, var(--invalid_background_color));
         | 
| 108 | 
            +
                --_input_border_color: var(--input_border_color_invalid, var(--invalid_border_color));
         | 
| 66 109 | 
             
              }
         | 
| 67 110 | 
             
            }
         | 
| 68 111 |  | 
| 69 | 
            -
             | 
| 70 | 
            -
             | 
| 112 | 
            +
            [type='color'],
         | 
| 113 | 
            +
            [type='date'],
         | 
| 114 | 
            +
            [type='datetime'],
         | 
| 115 | 
            +
            [type='datetime-local'],
         | 
| 116 | 
            +
            [type='email'],
         | 
| 117 | 
            +
            [type='month'],
         | 
| 118 | 
            +
            [type='number'],
         | 
| 119 | 
            +
            [type='password'],
         | 
| 120 | 
            +
            [type='search'],
         | 
| 121 | 
            +
            [type='tel'],
         | 
| 122 | 
            +
            [type='text'],
         | 
| 123 | 
            +
            [type='time'],
         | 
| 124 | 
            +
            [type='url'],
         | 
| 125 | 
            +
            [type='week'],
         | 
| 126 | 
            +
            input:not([type]),
         | 
| 127 | 
            +
            textarea {
         | 
| 128 | 
            +
              &:focus:invalid {
         | 
| 129 | 
            +
                --_input_background_color: var(--input_background_color_warning, var(--warning_background_color));
         | 
| 130 | 
            +
                --_input_border_color: var(--input_border_color_warningd, var(--warning_border_color));
         | 
| 131 | 
            +
              }
         | 
| 132 | 
            +
             | 
| 133 | 
            +
              &::placeholder {
         | 
| 134 | 
            +
                color: var(--input_placeholder_color, var(--gray_600));
         | 
| 135 | 
            +
              }
         | 
| 136 | 
            +
             | 
| 137 | 
            +
              &:read-only {
         | 
| 138 | 
            +
                --_input_background_color: var(--input_background_color_read_only, var(--input_background_color, var(--gray_200)));
         | 
| 139 | 
            +
                --_input_border_color: var(--input_border_color_read_only, var(--input_border_color, var(--gray_300)));
         | 
| 140 | 
            +
                --_input_color: var(--input_color_read_only, var(--input_color, var(--gray_400)));
         | 
| 141 | 
            +
              }
         | 
| 142 | 
            +
             | 
| 143 | 
            +
              &:user-invalid {
         | 
| 144 | 
            +
                --_input_background_color: var(--input_background_color_invalid, var(--invalid_background_color));
         | 
| 145 | 
            +
                --_input_border_color: var(--input_border_color_invalid, var(--invalid_border_color));
         | 
| 146 | 
            +
              }
         | 
| 147 | 
            +
             | 
| 148 | 
            +
              &:user-valid {
         | 
| 149 | 
            +
                --_input_background_color: var(--input_background_color_valid, var(--valid_background_color));
         | 
| 150 | 
            +
                --_input_border_color: var(--input_border_color_valid, var(--valid_border_color));
         | 
| 151 | 
            +
              }
         | 
| 71 152 | 
             
            }
         | 
| 72 153 |  | 
| 73 | 
            -
             | 
| 74 | 
            -
             | 
| 75 | 
            -
             | 
| 76 | 
            -
             | 
| 77 | 
            -
             | 
| 154 | 
            +
            [type='color'],
         | 
| 155 | 
            +
            [type='date'],
         | 
| 156 | 
            +
            [type='datetime'],
         | 
| 157 | 
            +
            [type='datetime-local'],
         | 
| 158 | 
            +
            [type='email'],
         | 
| 159 | 
            +
            [type='month'],
         | 
| 160 | 
            +
            [type='number'],
         | 
| 161 | 
            +
            [type='password'],
         | 
| 162 | 
            +
            [type='search'],
         | 
| 163 | 
            +
            [type='tel'],
         | 
| 164 | 
            +
            [type='text'],
         | 
| 165 | 
            +
            [type='time'],
         | 
| 166 | 
            +
            [type='url'],
         | 
| 167 | 
            +
            [type='week'],
         | 
| 168 | 
            +
            input:not([type]),
         | 
| 169 | 
            +
            select,
         | 
| 170 | 
            +
            textarea {
         | 
| 171 | 
            +
              &:disabled { // put here to override :read-only
         | 
| 172 | 
            +
                --_input_background_color: var(--input_background_color_disabled, var(--input_background_color, var(--gray_200)));
         | 
| 173 | 
            +
                --_input_border_color: var(--input_border_color_disabled, var(--input_border_color, var(--gray_300)));
         | 
| 174 | 
            +
                --_input_color: var(--input_color_disabled, var(--input_color, var(--gray_400)));
         | 
| 78 175 | 
             
              }
         | 
| 79 176 | 
             
            }
         | 
| 80 177 |  | 
| 81 | 
            -
             | 
| 82 | 
            -
             | 
| 83 | 
            -
             | 
| 178 | 
            +
            [type='range'] {
         | 
| 179 | 
            +
              vertical-align: middle;
         | 
| 180 | 
            +
            }
         | 
| 181 | 
            +
             | 
| 182 | 
            +
            [type='search'] {
         | 
| 183 | 
            +
              outline-offset: -.2rem;
         | 
| 84 184 | 
             
            }
         | 
| 85 185 |  | 
| 86 | 
            -
             | 
| 87 | 
            -
               | 
| 186 | 
            +
            select {
         | 
| 187 | 
            +
              height: var(--select_height, calc(2 * var(--_)));
         | 
| 188 | 
            +
              margin-top: calc(var(--_input_border_width) / -2);
         | 
| 189 | 
            +
              word-wrap: normal; // Remove the inheritance of word-wrap in Safari.
         | 
| 190 | 
            +
             | 
| 191 | 
            +
              &:disabled {
         | 
| 192 | 
            +
                opacity: 1; // Undo the opacity change from Chrome.
         | 
| 193 | 
            +
              }
         | 
| 88 194 | 
             
            }
         | 
| 89 195 |  | 
| 90 196 | 
             
            textarea {
         | 
| 197 | 
            +
              --input_line_height: var(--body_line_height);
         | 
| 198 | 
            +
              --input_padding: calc(var(--_half) - var(--_input_border_width)) .25em;
         | 
| 199 | 
            +
             | 
| 91 200 | 
             
              height: auto;
         | 
| 92 | 
            -
               | 
| 201 | 
            +
              resize: vertical; // Don't break its (horizontal) containers.
         | 
| 202 | 
            +
              vertical-align: top;
         | 
| 93 203 | 
             
            }
         | 
| 94 204 |  | 
| 205 | 
            +
            ::file-selector-button {
         | 
| 206 | 
            +
              font: inherit; // Inherit font family and line height for file input buttons.
         | 
| 207 | 
            +
              -webkit-appearance: button; // Correct the inability to style clickable types in iOS and Safari.
         | 
| 208 | 
            +
            }
         | 
| @@ -1,5 +1,6 @@ | |
| 1 1 | 
             
            dl, ol, ul {
         | 
| 2 | 
            -
               | 
| 2 | 
            +
              margin-top: 0;
         | 
| 3 | 
            +
              margin-bottom: var(--_);
         | 
| 3 4 |  | 
| 4 5 | 
             
              & & {
         | 
| 5 6 | 
             
                margin-bottom: 0;
         | 
| @@ -7,7 +8,7 @@ dl, ol, ul { | |
| 7 8 | 
             
            }
         | 
| 8 9 |  | 
| 9 10 | 
             
            dl dl {
         | 
| 10 | 
            -
              margin-left:  | 
| 11 | 
            +
              margin-left: 1.5em;
         | 
| 11 12 | 
             
            }
         | 
| 12 13 |  | 
| 13 14 | 
             
            dt {
         | 
| @@ -19,5 +20,5 @@ dd { | |
| 19 20 | 
             
            }
         | 
| 20 21 |  | 
| 21 22 | 
             
            ol, ul {
         | 
| 22 | 
            -
              padding-left:  | 
| 23 | 
            +
              padding-left: 1.5em;
         | 
| 23 24 | 
             
            }
         | 
| @@ -2,7 +2,20 @@ figure { | |
| 2 2 | 
             
              margin: 0 0 var(--_);
         | 
| 3 3 | 
             
            }
         | 
| 4 4 |  | 
| 5 | 
            +
            audio,
         | 
| 6 | 
            +
            canvas,
         | 
| 7 | 
            +
            iframe,
         | 
| 8 | 
            +
            img,
         | 
| 9 | 
            +
            svg,
         | 
| 10 | 
            +
            video {
         | 
| 11 | 
            +
              vertical-align: middle; // Remove gap between the bottom of their containers.
         | 
| 12 | 
            +
            }
         | 
| 13 | 
            +
             | 
| 5 14 | 
             
            img {
         | 
| 6 15 | 
             
              display: inline-block;
         | 
| 7 16 | 
             
              max-width: 100%;
         | 
| 8 17 | 
             
            }
         | 
| 18 | 
            +
             | 
| 19 | 
            +
            svg {
         | 
| 20 | 
            +
              overflow: hidden; // Workaround for the SVG overflow bug in IE10/11.
         | 
| 21 | 
            +
            }
         | 
| @@ -1,4 +1,6 @@ | |
| 1 1 | 
             
            table {
         | 
| 2 | 
            +
              border-collapse: collapse; // Prevent double borders.
         | 
| 3 | 
            +
            	border-color: currentcolor;
         | 
| 2 4 | 
             
              margin-bottom: var(--_);
         | 
| 3 5 | 
             
              width: 100%;
         | 
| 4 6 | 
             
            }
         | 
| @@ -7,13 +9,25 @@ caption { | |
| 7 9 | 
             
              font-weight: var(--font_weight_bold);
         | 
| 8 10 | 
             
            }
         | 
| 9 11 |  | 
| 12 | 
            +
            thead,
         | 
| 13 | 
            +
            tbody,
         | 
| 14 | 
            +
            tfoot,
         | 
| 15 | 
            +
            tr,
         | 
| 16 | 
            +
            td,
         | 
| 17 | 
            +
            th {
         | 
| 18 | 
            +
              border-color: inherit;
         | 
| 19 | 
            +
              border-style: solid;
         | 
| 20 | 
            +
              border-width: 0;
         | 
| 21 | 
            +
            }
         | 
| 22 | 
            +
             | 
| 10 23 | 
             
            thead th {
         | 
| 11 24 | 
             
              font-weight: var(--font_weight_bold);
         | 
| 12 25 | 
             
              vertical-align: bottom;
         | 
| 13 26 | 
             
            }
         | 
| 14 27 |  | 
| 15 28 | 
             
            td, th {
         | 
| 16 | 
            -
              padding: var(-- | 
| 29 | 
            +
              padding-block: var(--table_cell_padding_block, 0);
         | 
| 30 | 
            +
              padding-inline: var(--table_cell_padding_inline, .25em);
         | 
| 17 31 | 
             
              vertical-align: top;
         | 
| 18 32 |  | 
| 19 33 | 
             
              > dl,
         | 
| @@ -25,3 +39,9 @@ td, th { | |
| 25 39 | 
             
                }
         | 
| 26 40 | 
             
              }
         | 
| 27 41 | 
             
            }
         | 
| 42 | 
            +
             | 
| 43 | 
            +
            th {
         | 
| 44 | 
            +
              font-weight: inherit;
         | 
| 45 | 
            +
              text-align: inherit; // Matches default `<td>` alignment.
         | 
| 46 | 
            +
              text-align: -webkit-match-parent; // Fix alignment for Safari.
         | 
| 47 | 
            +
            }
         | 
| @@ -1,9 +1,13 @@ | |
| 1 | 
            +
            @use 'baseline-scss/mixins' as _;
         | 
| 2 | 
            +
             | 
| 1 3 | 
             
            address {
         | 
| 2 | 
            -
               | 
| 4 | 
            +
              font-style: normal;
         | 
| 5 | 
            +
              line-height: inherit;
         | 
| 6 | 
            +
              margin-bottom: var(--_);
         | 
| 3 7 | 
             
            }
         | 
| 4 8 |  | 
| 5 9 | 
             
            blockquote {
         | 
| 6 | 
            -
               | 
| 10 | 
            +
              margin: 0 2em var(--_);
         | 
| 7 11 | 
             
            }
         | 
| 8 12 |  | 
| 9 13 | 
             
            h1, ._h1,
         | 
| @@ -12,86 +16,109 @@ h3, ._h3, | |
| 12 16 | 
             
            h4, ._h4,
         | 
| 13 17 | 
             
            h5, ._h5,
         | 
| 14 18 | 
             
            h6, ._h6 {
         | 
| 15 | 
            -
               | 
| 16 | 
            -
             | 
| 17 | 
            -
               | 
| 18 | 
            -
               | 
| 19 | 
            +
              font-family: var(--h_font_family);
         | 
| 20 | 
            +
              font-weight: var(--h_font_weight);
         | 
| 21 | 
            +
              margin-top: 0;
         | 
| 22 | 
            +
              margin-bottom: var(--_);
         | 
| 19 23 |  | 
| 20 24 | 
             
              small, ._small {
         | 
| 21 | 
            -
                font-weight: var(-- | 
| 25 | 
            +
                font-weight: var(--font_weight_normal);
         | 
| 22 26 | 
             
              }
         | 
| 23 27 | 
             
            }
         | 
| 24 28 |  | 
| 25 29 | 
             
            h1, ._h1 {
         | 
| 26 | 
            -
               | 
| 30 | 
            +
              font-size: var(--h1_font_size);
         | 
| 31 | 
            +
              line-height: var(--h1_line_height);
         | 
| 27 32 | 
             
            }
         | 
| 28 33 |  | 
| 29 34 | 
             
            h2, ._h2 {
         | 
| 30 | 
            -
               | 
| 35 | 
            +
              font-size: var(--h2_font_size);
         | 
| 36 | 
            +
              line-height: var(--h2_line_height);
         | 
| 31 37 | 
             
            }
         | 
| 32 38 |  | 
| 33 39 | 
             
            h3, ._h3 {
         | 
| 34 | 
            -
               | 
| 40 | 
            +
              font-size: var(--h3_font_size);
         | 
| 41 | 
            +
              line-height: var(--h3_line_height);
         | 
| 35 42 | 
             
            }
         | 
| 36 43 |  | 
| 37 44 | 
             
            h4, ._h4 {
         | 
| 38 | 
            -
               | 
| 45 | 
            +
              font-size: var(--h4_font_size);
         | 
| 46 | 
            +
              line-height: var(--h4_line_height);
         | 
| 39 47 | 
             
            }
         | 
| 40 48 |  | 
| 41 49 | 
             
            h5, ._h5 {
         | 
| 42 | 
            -
               | 
| 50 | 
            +
              font-size: var(--h5_font_size);
         | 
| 51 | 
            +
              line-height: var(--h5_line_height);
         | 
| 43 52 | 
             
            }
         | 
| 44 53 |  | 
| 45 54 | 
             
            h6, ._h6 {
         | 
| 46 | 
            -
               | 
| 55 | 
            +
              font-size: var(--h6_font_size);
         | 
| 56 | 
            +
              line-height: var(--h6_line_height);
         | 
| 47 57 | 
             
            }
         | 
| 48 58 |  | 
| 49 59 | 
             
            p, ._p {
         | 
| 50 | 
            -
               | 
| 60 | 
            +
              margin-top: 0;
         | 
| 61 | 
            +
              margin-bottom: var(--_);
         | 
| 51 62 | 
             
            }
         | 
| 52 63 |  | 
| 53 64 | 
             
            hr {
         | 
| 54 | 
            -
              @include margin(0 null);
         | 
| 55 | 
            -
             | 
| 56 65 | 
             
              border: 0;
         | 
| 57 | 
            -
              border-top: var(-- | 
| 58 | 
            -
               | 
| 66 | 
            +
              border-top: var(--hr_border_size, .1rem) var(--hr_border_style, solid) var(--hr_border_color, var(--body_color));
         | 
| 67 | 
            +
              box-sizing: border-box;
         | 
| 68 | 
            +
              height: var(--hr_height, var(--_));
         | 
| 69 | 
            +
              margin: 0;
         | 
| 59 70 | 
             
            }
         | 
| 60 71 |  | 
| 61 72 | 
             
            a {
         | 
| 62 | 
            -
              &:link {
         | 
| 63 | 
            -
                 | 
| 73 | 
            +
              &:any-link {
         | 
| 74 | 
            +
                --_link_color: var(--link_color);
         | 
| 75 | 
            +
                --_link_text_decoration: var(--link_text_decoration);
         | 
| 76 | 
            +
             | 
| 77 | 
            +
                color: var(--_link_color, #00e);
         | 
| 78 | 
            +
                text-decoration: var(--_link_text_decoration, underline);
         | 
| 79 | 
            +
             | 
| 80 | 
            +
                &:visited {
         | 
| 81 | 
            +
                  --_link_color: var(--link_color_visited, var(--link_color, #528));
         | 
| 82 | 
            +
                  --_link_text_decoration: var(--link_text_decoration_visited, var(--link_text_decoration));
         | 
| 83 | 
            +
                }
         | 
| 84 | 
            +
             | 
| 85 | 
            +
                &:hover {
         | 
| 86 | 
            +
                  --_link_color: var(--link_color_hover, var(--link_color, #00f));
         | 
| 87 | 
            +
                  --_link_text_decoration: var(--link_text_decoration_hover, var(--link_text_decoration));
         | 
| 88 | 
            +
                }
         | 
| 89 | 
            +
             | 
| 90 | 
            +
                &:focus {
         | 
| 91 | 
            +
                  --_link_color: var(--link_color_focus, var(--link_color));
         | 
| 92 | 
            +
                  --_link_text_decoration: var(--link_text_decoration_focus, var(--link_text_decoration));
         | 
| 93 | 
            +
             | 
| 94 | 
            +
                  @include _.outline();
         | 
| 95 | 
            +
             | 
| 96 | 
            +
                  &._disabled {
         | 
| 97 | 
            +
                    outline: 0;
         | 
| 98 | 
            +
                  }
         | 
| 99 | 
            +
                }
         | 
| 100 | 
            +
             | 
| 101 | 
            +
                &:active {
         | 
| 102 | 
            +
                  --_link_color: var(--link_color_active, var(--link_color, #f00));
         | 
| 103 | 
            +
                  --_link_text_decoration: var(--link_text_decoration_active, var(--link_text_decoration));
         | 
| 104 | 
            +
                }
         | 
| 64 105 | 
             
              }
         | 
| 65 106 |  | 
| 66 | 
            -
              &: | 
| 67 | 
            -
                 | 
| 68 | 
            -
              }
         | 
| 69 | 
            -
             | 
| 70 | 
            -
              &[href]:hover {
         | 
| 71 | 
            -
                color: var(--link_hover_color);
         | 
| 72 | 
            -
              }
         | 
| 73 | 
            -
             | 
| 74 | 
            -
              &:focus {
         | 
| 75 | 
            -
                @include outline();
         | 
| 76 | 
            -
             | 
| 77 | 
            -
                color: var(--link_focus_color);
         | 
| 78 | 
            -
              }
         | 
| 79 | 
            -
             | 
| 80 | 
            -
              &[href]:active {
         | 
| 81 | 
            -
                color: var(--link_active_color);
         | 
| 107 | 
            +
              &:not([href]):not([tabindex]):focus {
         | 
| 108 | 
            +
                outline: 0; // Plain anchors don't need an outline.
         | 
| 82 109 | 
             
              }
         | 
| 83 110 | 
             
            }
         | 
| 84 111 |  | 
| 85 | 
            -
             | 
| 86 | 
            -
               | 
| 87 | 
            -
               | 
| 112 | 
            +
            abbr[title] {
         | 
| 113 | 
            +
              cursor: help; // Add explicit cursor to indicate changed behavior.
         | 
| 114 | 
            +
              text-decoration-skip-ink: none; // Prevent the text-decoration to be skipped.
         | 
| 88 115 | 
             
            }
         | 
| 89 116 |  | 
| 90 117 | 
             
            mark {
         | 
| 91 | 
            -
              background-color: var(--mark_background_color);
         | 
| 118 | 
            +
              background-color: var(--mark_background_color, #ff0);
         | 
| 92 119 | 
             
            }
         | 
| 93 120 |  | 
| 94 | 
            -
            small, | 
| 121 | 
            +
            small,
         | 
| 95 122 | 
             
            sub,
         | 
| 96 123 | 
             
            sup {
         | 
| 97 124 | 
             
              font-size: var(--font_size_small);
         |