baseline-scss 0.3.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.
Files changed (76) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +15 -0
  3. data/lib/baseline-scss.rb +1 -0
  4. data/lib/baseline_scss/version.rb +3 -0
  5. data/lib/baseline_scss.rb +41 -0
  6. data/src/_content.scss +7 -0
  7. data/src/_helpers.scss +49 -0
  8. data/src/_mixins.scss +7 -0
  9. data/src/_reboot.scss +227 -0
  10. data/src/_variables.scss +149 -0
  11. data/src/_vendors.scss +3 -0
  12. data/src/baseline.scss +8 -0
  13. data/src/content/_buttons.scss +37 -0
  14. data/src/content/_code.scss +15 -0
  15. data/src/content/_forms.scss +88 -0
  16. data/src/content/_lists.scss +15 -0
  17. data/src/content/_multimedia.scss +8 -0
  18. data/src/content/_tables.scss +27 -0
  19. data/src/content/_typography.scss +99 -0
  20. data/src/mixins/_.scss +4 -0
  21. data/src/mixins/_after_border.scss +12 -0
  22. data/src/mixins/_clearfix.scss +7 -0
  23. data/src/mixins/_font_awesome.scss +12 -0
  24. data/src/mixins/_max_width_container.scss +15 -0
  25. data/src/mixins/_outline.scss +5 -0
  26. data/src/mixins/_sr_only.scss +17 -0
  27. data/src/vendors/_bourbon.scss +54 -0
  28. data/src/vendors/_include-media.scss +591 -0
  29. data/src/vendors/animate.css +4072 -0
  30. data/src/vendors/bourbon/helpers/_buttons-list.scss +14 -0
  31. data/src/vendors/bourbon/helpers/_scales.scss +27 -0
  32. data/src/vendors/bourbon/helpers/_text-inputs-list.scss +26 -0
  33. data/src/vendors/bourbon/library/_border-color.scss +26 -0
  34. data/src/vendors/bourbon/library/_border-radius.scss +85 -0
  35. data/src/vendors/bourbon/library/_border-style.scss +25 -0
  36. data/src/vendors/bourbon/library/_border-width.scss +25 -0
  37. data/src/vendors/bourbon/library/_buttons.scss +84 -0
  38. data/src/vendors/bourbon/library/_clearfix.scss +25 -0
  39. data/src/vendors/bourbon/library/_contrast-switch.scss +81 -0
  40. data/src/vendors/bourbon/library/_ellipsis.scss +36 -0
  41. data/src/vendors/bourbon/library/_font-face.scss +65 -0
  42. data/src/vendors/bourbon/library/_font-stacks.scss +248 -0
  43. data/src/vendors/bourbon/library/_hide-text.scss +24 -0
  44. data/src/vendors/bourbon/library/_hide-visually.scss +70 -0
  45. data/src/vendors/bourbon/library/_margin.scss +37 -0
  46. data/src/vendors/bourbon/library/_modular-scale.scss +120 -0
  47. data/src/vendors/bourbon/library/_overflow-wrap.scss +25 -0
  48. data/src/vendors/bourbon/library/_padding.scss +36 -0
  49. data/src/vendors/bourbon/library/_position.scss +62 -0
  50. data/src/vendors/bourbon/library/_prefixer.scss +37 -0
  51. data/src/vendors/bourbon/library/_shade.scss +32 -0
  52. data/src/vendors/bourbon/library/_size.scss +50 -0
  53. data/src/vendors/bourbon/library/_strip-unit.scss +17 -0
  54. data/src/vendors/bourbon/library/_text-inputs.scss +163 -0
  55. data/src/vendors/bourbon/library/_timing-functions.scss +36 -0
  56. data/src/vendors/bourbon/library/_tint.scss +32 -0
  57. data/src/vendors/bourbon/library/_triangle.scss +82 -0
  58. data/src/vendors/bourbon/library/_value-prefixer.scss +37 -0
  59. data/src/vendors/bourbon/settings/_settings.scss +75 -0
  60. data/src/vendors/bourbon/utilities/_assign-inputs.scss +28 -0
  61. data/src/vendors/bourbon/utilities/_compact-shorthand.scss +42 -0
  62. data/src/vendors/bourbon/utilities/_contrast-ratio.scss +31 -0
  63. data/src/vendors/bourbon/utilities/_directional-property.scss +68 -0
  64. data/src/vendors/bourbon/utilities/_fetch-bourbon-setting.scss +16 -0
  65. data/src/vendors/bourbon/utilities/_font-source-declaration.scss +52 -0
  66. data/src/vendors/bourbon/utilities/_gamma.scss +24 -0
  67. data/src/vendors/bourbon/utilities/_lightness.scss +24 -0
  68. data/src/vendors/bourbon/utilities/_unpack-shorthand.scss +29 -0
  69. data/src/vendors/bourbon/validators/_contains-falsy.scss +20 -0
  70. data/src/vendors/bourbon/validators/_contains.scss +26 -0
  71. data/src/vendors/bourbon/validators/_is-color.scss +13 -0
  72. data/src/vendors/bourbon/validators/_is-length.scss +20 -0
  73. data/src/vendors/bourbon/validators/_is-number.scss +15 -0
  74. data/src/vendors/bourbon/validators/_is-size.scss +18 -0
  75. data/src/vendors/normalize.css +349 -0
  76. metadata +130 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 9755d89b7b2d330d040774fd5989a2238d978db2abf8e8c101a4022d6f92d877
4
+ data.tar.gz: 9dfc6ae6d7ac0567c0429e2504dff8f7dc72b672c2757c5f2ccaa53a5a4261b1
5
+ SHA512:
6
+ metadata.gz: 5e039450b77684a327d072edbd14ba6aa3eda1a0abd5b15d7b4f15ca36823579141894d2aeed93aeaaadd47e514206a8671ee69b4c761cb4b1332defe47dc670
7
+ data.tar.gz: 26c8ace3bfc321f7324025f9f2b94e7c0c5ca5ad200165eceedb262b503f690019e7d1874d3f724ef05560437ecce3c93a9ac6019144e7d3120a446631092dba
data/LICENSE ADDED
@@ -0,0 +1,15 @@
1
+ ISC License
2
+
3
+ Copyright (c) 2023 David Susco
4
+
5
+ Permission to use, copy, modify, and/or distribute this software for any
6
+ purpose with or without fee is hereby granted, provided that the above
7
+ copyright notice and this permission notice appear in all copies.
8
+
9
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
10
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
11
+ FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
12
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
13
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
14
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
15
+ PERFORMANCE OF THIS SOFTWARE.
@@ -0,0 +1 @@
1
+ require 'baseline_scss'
@@ -0,0 +1,3 @@
1
+ module BaselineScss
2
+ VERSION = '0.3.0'.freeze
3
+ end
@@ -0,0 +1,41 @@
1
+ module BaselineScss
2
+ if defined?(Jekyll)
3
+ Jekyll::Command.class_eval do
4
+ class << self
5
+ def configuration_from_options(options)
6
+ return options if options.is_a?(Jekyll::Configuration)
7
+
8
+ options = Jekyll.configuration(options)
9
+
10
+ begin
11
+ options['sass']['load_paths'] << File.expand_path('../src', __dir__)
12
+ rescue
13
+ options.merge!({ 'sass' => { 'load_paths' => [File.expand_path('../src', __dir__)] } })
14
+ end
15
+
16
+ options
17
+ end
18
+ end
19
+ end
20
+ elsif defined?(Rails) && defined?(Rails::Engine)
21
+ class Engine < ::Rails::Engine
22
+ initializer 'baseline-scss.paths', group: :all do |app|
23
+ app.config.assets.paths << File.expand_path('../src', __dir__)
24
+ end
25
+ end
26
+ else
27
+ begin
28
+ require 'sass'
29
+
30
+ Sass.load_paths << File.expand_path('../src', __dir__)
31
+ rescue LoadError
32
+ end
33
+
34
+ begin
35
+ require 'sassc'
36
+
37
+ SassC.load_paths << File.expand_path('../src', __dir__)
38
+ rescue LoadError
39
+ end
40
+ end
41
+ end
data/src/_content.scss ADDED
@@ -0,0 +1,7 @@
1
+ @import 'content/_buttons';
2
+ @import 'content/_code';
3
+ @import 'content/_forms';
4
+ @import 'content/_lists';
5
+ @import 'content/_multimedia';
6
+ @import 'content/_tables';
7
+ @import 'content/_typography';
data/src/_helpers.scss ADDED
@@ -0,0 +1,49 @@
1
+ ._clearfix {
2
+ @include clearfix();
3
+ }
4
+
5
+ ._margin_bottom {
6
+ margin-bottom: var(--_);
7
+ }
8
+ ._no_margin_bottom {
9
+ margin-bottom: 0;
10
+ }
11
+
12
+ ._responsive_table_wrapper {
13
+ margin-bottom: var(--_);
14
+ overflow-x: auto;
15
+
16
+ > table:last-child {
17
+ margin-bottom: 0;
18
+ }
19
+ }
20
+
21
+ ._sr_only {
22
+ @include sr_only();
23
+ }
24
+ ._sr_only_focusable {
25
+ @include sr_only_focusable();
26
+ }
27
+
28
+ ._text_left {
29
+ text-align: left;
30
+ }
31
+ ._text_right {
32
+ text-align: right;
33
+ }
34
+ ._text_center {
35
+ text-align: center;
36
+ }
37
+ ._text_justify {
38
+ text-align: justify;
39
+ }
40
+
41
+ ._text_capitalize {
42
+ text-transform: capitalize;
43
+ }
44
+ ._text_uppercase {
45
+ text-transform: uppercase;
46
+ }
47
+ ._text_lowercase {
48
+ text-transform: lowercase;
49
+ }
data/src/_mixins.scss ADDED
@@ -0,0 +1,7 @@
1
+ @import 'mixins/_';
2
+ @import 'mixins/_after_border';
3
+ @import 'mixins/_clearfix';
4
+ @import 'mixins/_font_awesome';
5
+ @import 'mixins/_max_width_container';
6
+ @import 'mixins/_outline';
7
+ @import 'mixins/_sr_only';
data/src/_reboot.scss ADDED
@@ -0,0 +1,227 @@
1
+ @at-root {
2
+ @-ms-viewport {
3
+ width: device-width; // Honor viewport meta in IE10+.
4
+ }
5
+ }
6
+
7
+ *,
8
+ *::before,
9
+ *::after {
10
+ box-sizing: border-box;
11
+ }
12
+
13
+ ::-moz-selection,
14
+ ::selection {
15
+ text-shadow: none; // Remove text-shadow in selection highlight.
16
+ }
17
+
18
+ [hidden] {
19
+ display: none !important;
20
+ }
21
+
22
+ [tabindex]:not([tabindex^='-']):focus {
23
+ @include outline();
24
+ }
25
+ // Don't outline elements that programmatically receive focus but wouldn't normally show an outline.
26
+ [tabindex="-1"]:focus:not(:focus-visible) {
27
+ outline: 0 !important;
28
+ }
29
+
30
+ html {
31
+ font-size: x-small; // 1rem == 10px
32
+ }
33
+
34
+ body {
35
+ @include _();
36
+
37
+ background-color: var(--body_background_color); // Best practice.
38
+ color: var(--body_color);
39
+ font-family: var(--font_family);
40
+ font-weight: normal;
41
+ text-align: left;
42
+
43
+ -webkit-text-size-adjust: 100%; // Prevent adjustments of font size after orientation changes in iOS.
44
+ -webkit-tap-highlight-color: rgba(#000, 0); // Change the default tap highlight to be completely transparent in iOS.
45
+ }
46
+
47
+ article,
48
+ aside,
49
+ canvas,
50
+ details,
51
+ dialog,
52
+ figcaption,
53
+ figure,
54
+ footer,
55
+ header,
56
+ hgroup,
57
+ main,
58
+ nav,
59
+ section {
60
+ display: block;
61
+ }
62
+
63
+ iframe {
64
+ border: 0;
65
+ vertical-align: middle;
66
+ }
67
+
68
+ summary {
69
+ cursor: pointer;
70
+ }
71
+
72
+ // Code
73
+ code {
74
+ word-wrap: break-word;
75
+
76
+ a > & {
77
+ color: inherit; // Avoid broken underline and more when inside anchors.
78
+ }
79
+ }
80
+
81
+ pre {
82
+ display: block;
83
+ overflow: auto;
84
+ -ms-overflow-style: scrollbar; // Force scrollbar in IE11+/Edge.
85
+
86
+ code {
87
+ color: inherit;
88
+ font-size: inherit;
89
+ word-break: normal;
90
+ }
91
+ }
92
+
93
+ // Forms
94
+ fieldset {
95
+ border: 0; // Don't affect page layout.
96
+ min-width: 0; // Behave like a standard block element.
97
+ }
98
+
99
+ label {
100
+ display: inline-block; // Allow labels to use `margin` for spacing.
101
+ }
102
+
103
+ button,
104
+ input,
105
+ optgroup,
106
+ select,
107
+ textarea {
108
+ line-height: inherit;
109
+ vertical-align: bottom; // Make's elments behave better height-wise.
110
+ }
111
+
112
+ #{$all-buttons} {
113
+ &:focus:not(:focus-visible) {
114
+ outline: 0; // Explicitly remove focus outline in Chromium.
115
+ }
116
+
117
+ &:not(:disabled) {
118
+ cursor: pointer; // Add "hand" cursor to non-disabled button elements.
119
+ }
120
+ }
121
+
122
+ [role="button"] {
123
+ cursor: pointer; // Set the cursor for non-`<button>` buttons.
124
+ }
125
+
126
+ [type="search"] {
127
+ outline-offset: -.2rem;
128
+ }
129
+
130
+ output {
131
+ display: inline-block;
132
+ }
133
+
134
+ select {
135
+ word-wrap: normal; // Remove the inheritance of word-wrap in Safari.
136
+
137
+ &:disabled {
138
+ opacity: 1; // Undo the opacity change from Chrome.
139
+ }
140
+ }
141
+
142
+ textarea {
143
+ resize: vertical; // Don't break its (horizontal) containers.
144
+ }
145
+
146
+ ::file-selector-button {
147
+ font: inherit; // Inherit font family and line height for file input buttons.
148
+ -webkit-appearance: button; // Correct the inability to style clickable types in iOS and Safari.
149
+ }
150
+
151
+ ::-webkit-color-swatch-wrapper {
152
+ padding: 0;
153
+ }
154
+
155
+ ::-webkit-datetime-edit-fields-wrapper,
156
+ ::-webkit-datetime-edit-text,
157
+ ::-webkit-datetime-edit-minute,
158
+ ::-webkit-datetime-edit-hour-field,
159
+ ::-webkit-datetime-edit-day-field,
160
+ ::-webkit-datetime-edit-month-field,
161
+ ::-webkit-datetime-edit-year-field {
162
+ padding: 0;
163
+ }
164
+
165
+ // Lists
166
+ dt {
167
+ font-weight: bold;
168
+ }
169
+
170
+ dd {
171
+ margin-left: 0;
172
+ }
173
+
174
+ // Multimedia
175
+ audio,
176
+ canvas,
177
+ iframe,
178
+ img,
179
+ svg,
180
+ video {
181
+ vertical-align: middle; // Remove gap between the bottom of their containers.
182
+ }
183
+
184
+ svg {
185
+ overflow: hidden; // Workaround for the SVG overflow bug in IE10/11.
186
+ }
187
+
188
+ // Tables
189
+ table {
190
+ border-collapse: collapse; // Prevent double borders.
191
+ }
192
+
193
+ thead,
194
+ tbody,
195
+ tfoot,
196
+ tr,
197
+ td,
198
+ th {
199
+ border-color: inherit;
200
+ border-style: solid;
201
+ border-width: 0;
202
+ }
203
+
204
+ th {
205
+ font-weight: inherit;
206
+ text-align: inherit; // Matches default `<td>` alignment.
207
+ text-align: -webkit-match-parent; // Fix alignment for Safari.
208
+ }
209
+
210
+ // Typography
211
+ address {
212
+ font-style: normal;
213
+ line-height: inherit;
214
+ }
215
+
216
+ hr {
217
+ box-sizing: border-box;
218
+ }
219
+
220
+ a:not([href]):not([tabindex]):focus {
221
+ outline: 0; // Plain anchors don't need an outline.
222
+ }
223
+
224
+ abbr[title] {
225
+ cursor: help; // Add explicit cursor to indicate changed behavior.
226
+ text-decoration-skip-ink: none; // Prevent the text-decoration to be skipped.
227
+ }
@@ -0,0 +1,149 @@
1
+ $_: 1.2rem !default;
2
+ $_half_ceil: calc(ceil(calc($_ / 2 * 10)) / 10) !default;
3
+ $_half_floor: $_ - $_half_ceil !default;
4
+
5
+ :root {
6
+ --_: #{$_};
7
+ --_half_ceil: #{$_half_ceil};
8
+ --_half_floor: #{$_half_floor};
9
+
10
+ // Fonts
11
+ --font_family_sans: sans-serif;
12
+ --font_family_serif: serif;
13
+ --font_family_mono: monospace;
14
+
15
+ --font_family: var(--font_family_sans);
16
+ --font_family_h: var(--font_family_sans);
17
+ --font_family_code: var(--font_family_mono);
18
+
19
+ --font_weight: normal;
20
+ --font_weight_bold: bold;
21
+ --font_weight_h: var(--font_weight_bold);
22
+
23
+ --font_size: 1.6rem;
24
+ --font_size_lines: 2;
25
+ --font_size_code: 1.5rem;
26
+ --font_size_code_lines: 2;
27
+ --font_size_h1: 3.2rem;
28
+ --font_size_h1_lines: 3;
29
+ --font_size_h2: 2.8rem;
30
+ --font_size_h2_lines: 3;
31
+ --font_size_h3: 2.4rem;
32
+ --font_size_h3_lines: 2;
33
+ --font_size_h4: 2rem;
34
+ --font_size_h4_lines: 2;
35
+ --font_size_h5: 1.6rem;
36
+ --font_size_h5_lines: 2;
37
+ --font_size_h6: 1.2rem;
38
+ --font_size_h6_lines: 1;
39
+ --font_size_large: 125%;
40
+ --font_size_small: 75%;
41
+
42
+ // Colors
43
+ --body_background_color: #fff;
44
+ --body_color: #000;
45
+
46
+ --create_background_color: #cfc;
47
+ --create_border_color: #3c3;
48
+ --update_background_color: #cff;
49
+ --update_border_color: #3cc;
50
+ --destroy_background_color: #fcc;
51
+ --destroy_border_color: #c33;
52
+
53
+ // Outline
54
+ --outline_color: #9cf;
55
+ --outline_offset: .2rem;
56
+ --outline_style: auto;
57
+ --outline_width: .2rem;
58
+
59
+ // Containers
60
+ --container_padding: 2rem;
61
+ --container_max_width: 100%;
62
+
63
+ // Buttons
64
+ --button_background_color: #efefef;
65
+ --button_background_color_hover: #e5e5e5;
66
+ --button_background_color_focus: var(--button_background_color);
67
+ --button_background_color_active: #f5f5f5;
68
+ --button_background_color_disabled: #eee;
69
+
70
+ --button_border_color: #767676;
71
+ --button_border_color_hover: #4f4f4f;
72
+ --button_border_color_focus: var(--button_border_color);
73
+ --button_border_color_active: #8d8d8d;
74
+ --button_border_color_disabled: #d0d0d0;
75
+
76
+ --button_border_style: solid;
77
+
78
+ --button_border_radius: .3rem;
79
+
80
+ --button_border_width: .1rem;
81
+
82
+ --button_color: var(--body_color);
83
+ --button_color_hover: var(--button_color);
84
+ --button_color_focus: var(--button_color);
85
+ --button_color_active: var(--button_color);
86
+ --button_color_disabled: #b3b3b3;
87
+
88
+ --button_height: calc(2 * var(--_));
89
+
90
+ --button_padding: 0 .5em;
91
+
92
+ // Forms
93
+ --fieldset_padding_h: 1rem;
94
+
95
+ --legend_padding_h: 0 .5rem;
96
+
97
+ --input_background_color: var(--body_background_color);
98
+ --input_background_color_hover: var(--input_background_color);
99
+ --input_background_color_focus: var(--input_background_color);
100
+ --input_background_color_active: var(--input_background_color);
101
+ --input_background_color_disabled: #eee;
102
+
103
+ --input_border_color: #767676;
104
+ --input_border_color_hover: #4f4f4f;
105
+ --input_border_color_focus: var(--input_border_color);
106
+ --input_border_color_active: #8d8d8d;
107
+ --input_border_color_disabled: #d0d0d0;
108
+
109
+ --input_border_style: inset;
110
+
111
+ --input_border_radius: 0;
112
+
113
+ --input_border_width: .1rem;
114
+
115
+ --input_color: var(--body_color);
116
+ --input_color_hover: var(--input_color);
117
+ --input_color_focus: var(--input_color);
118
+ --input_color_active: var(--input_color);
119
+ --input_color_disabled: #b3b3b3;
120
+
121
+ --input_height: calc(var(--_) * 2);
122
+
123
+ --input_padding: 0 .25em;
124
+
125
+ --textarea_padding_h: .25em;
126
+
127
+ // Lists
128
+ --dl_margin_l: 1.5em;
129
+ --list_padding_l: 1.5em;
130
+
131
+ // Tables
132
+ --table_cell_padding: 0 .25em;
133
+
134
+ // Typography
135
+ --blockquote_margin_h: 2rem;
136
+
137
+ --hr_border_color: var(--body_color);
138
+ --hr_border_style: solid;
139
+ --hr_border_width: .1rem;
140
+ --hr_height: var(--_);
141
+
142
+ --link_color: #00e;
143
+ --link_visited_color: #528;
144
+ --link_hover_color: #00f;
145
+ --link_focus_color: var(--link_hover_color);
146
+ --link_active_color: var(--link_hover_color);
147
+
148
+ --mark_background_color: #ff0;
149
+ }
data/src/_vendors.scss ADDED
@@ -0,0 +1,3 @@
1
+ @import 'vendors/_bourbon';
2
+ @import 'vendors/_include-media';
3
+ @import 'vendors/normalize';
data/src/baseline.scss ADDED
@@ -0,0 +1,8 @@
1
+ @import '_vendors';
2
+
3
+ @import '_variables';
4
+ @import '_mixins';
5
+
6
+ @import '_reboot';
7
+ @import '_content';
8
+ @import '_helpers';
@@ -0,0 +1,37 @@
1
+ #{$all-buttons} {
2
+ background-color: var(--button_background_color);
3
+ border: var(--button_border_width) var(--button_border_style) var(--button_border_color);
4
+ border-radius: var(--button_border_radius);
5
+ color: var(--button_color);
6
+ height: var(--button_height);
7
+ line-height: 1;
8
+ padding: var(--button_padding);
9
+
10
+ &:hover {
11
+ background-color: var(--button_background_color_hover);
12
+ border-color: var(--button_border_color_hover);
13
+ color: var(--button_color_hover);
14
+ }
15
+
16
+ &:focus {
17
+ @include outline();
18
+
19
+ background-color: var(--button_background_color_focus);
20
+ border-color: var(--button_border_color_focus);
21
+ color: var(--button_color_focus);
22
+ }
23
+
24
+ &:active {
25
+ background-color: var(--button_background_color_active);
26
+ border-color: var(--button_border_color_active);
27
+ color: var(--button_color_active);
28
+ }
29
+
30
+ &:disabled {
31
+ background-color: var(--button_background_color_disabled);
32
+ border-color: var(--button_border_color_disabled);
33
+ color: var(--button_color_disabled);
34
+ pointer-events: none;
35
+ }
36
+ }
37
+
@@ -0,0 +1,15 @@
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
+
8
+ code,
9
+ kbd,
10
+ samp {
11
+ font-family: var(--font_family_code);
12
+ font-size: var(--font_size_code);
13
+ vertical-align: bottom;
14
+ }
15
+
@@ -0,0 +1,88 @@
1
+ form {
2
+ margin: 0 0 var(--_);
3
+ }
4
+
5
+ fieldset {
6
+ @include after_border();
7
+
8
+ border: 0;
9
+ padding: var(--_) var(--fieldset_padding_h);
10
+ margin: 0 0 var(--_);
11
+
12
+ &::after {
13
+ top: calc(-1 * var(--_));
14
+ z-index: -1;
15
+ }
16
+
17
+ > :last-child {
18
+ margin-bottom: 0;
19
+ }
20
+ }
21
+
22
+ legend {
23
+ background-color: var(--body_background_color);
24
+ padding: var(--legend_padding_h);
25
+ }
26
+
27
+ #{$all-text-inputs},
28
+ select {
29
+ background-color: var(--input_background_color);
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);
34
+
35
+ &:hover {
36
+ background-color: var(--input_background_color_hover);
37
+ border-color: var(--input_border_color_hover);
38
+ color: var(--input_color_hover);
39
+ }
40
+
41
+ &:focus {
42
+ @include outline();
43
+
44
+ background-color: var(--input_background_color_focus);
45
+ border-color: var(--input_border_color_focus);
46
+ color: var(--input_color_focus);
47
+ }
48
+
49
+ &:active {
50
+ background-color: var(--input_background_color_active);
51
+ border-color: var(--input_border_color_active);
52
+ color: var(--input_color_active);
53
+ }
54
+
55
+ &:disabled {
56
+ background-color: var(--input_background_color_disabled);
57
+ border-color: var(--input_border_color_disabled);
58
+ color: var(--input_color_disabled);
59
+ pointer-events: none;
60
+ }
61
+ }
62
+
63
+ #{$all-text-inputs} {
64
+ padding: var(--input_padding);
65
+ }
66
+
67
+ input[type='checkbox'],
68
+ input[type='radio'],
69
+ input[type='range'] {
70
+ &:focus {
71
+ @include outline();
72
+ }
73
+ }
74
+
75
+ input[type='checkbox'],
76
+ input[type='radio'] {
77
+ vertical-align: baseline;
78
+ }
79
+
80
+ input[type='range'] {
81
+ vertical-align: text-top;
82
+ }
83
+
84
+ textarea {
85
+ height: auto;
86
+ padding: calc(var(--_half_ceil) - var(--input_border_width)) var(--textarea_padding_h) calc(var(--_half_floor) - var(--input_border_width));
87
+ }
88
+
@@ -0,0 +1,15 @@
1
+ dl, ol, ul {
2
+ @include margin(0 null var(--_));
3
+
4
+ & & {
5
+ margin-bottom: 0;
6
+ }
7
+ }
8
+
9
+ dl dl {
10
+ margin-left: var(--dl_margin_l);
11
+ }
12
+
13
+ ol, ul {
14
+ padding-left: var(--list_padding_l);
15
+ }
@@ -0,0 +1,8 @@
1
+ figure {
2
+ margin: 0 0 var(--_);
3
+ }
4
+
5
+ img {
6
+ display: inline-block;
7
+ max-width: 100%;
8
+ }