748286b5 |
1 | ///\r |
2 | /// Forty by HTML5 UP\r |
3 | /// html5up.net | @ajlkn\r |
4 | /// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)\r |
5 | ///\r |
6 | \r |
7 | /* Form */\r |
8 | \r |
9 | form {\r |
10 | margin: 0 0 _size(element-margin) 0;\r |
11 | \r |
12 | > :last-child {\r |
13 | margin-bottom: 0;\r |
14 | }\r |
15 | \r |
16 | > .fields {\r |
17 | $gutter: (_size(element-margin) * 0.75);\r |
18 | \r |
19 | @include vendor('display', 'flex');\r |
20 | @include vendor('flex-wrap', 'wrap');\r |
21 | width: calc(100% + #{$gutter * 2});\r |
22 | margin: ($gutter * -1) 0 _size(element-margin) ($gutter * -1);\r |
23 | \r |
24 | > .field {\r |
25 | @include vendor('flex-grow', '0');\r |
26 | @include vendor('flex-shrink', '0');\r |
27 | padding: $gutter 0 0 $gutter;\r |
28 | width: calc(100% - #{$gutter * 1});\r |
29 | \r |
30 | &.half {\r |
31 | width: calc(50% - #{$gutter * 0.5});\r |
32 | }\r |
33 | \r |
34 | &.third {\r |
35 | width: calc(#{100% / 3} - #{$gutter * (1 / 3)});\r |
36 | }\r |
37 | \r |
38 | &.quarter {\r |
39 | width: calc(25% - #{$gutter * 0.25});\r |
40 | }\r |
41 | }\r |
42 | }\r |
43 | \r |
44 | @include breakpoint('<=xsmall') {\r |
45 | > .fields {\r |
46 | $gutter: (_size(element-margin) * 0.75);\r |
47 | \r |
48 | width: calc(100% + #{$gutter * 2});\r |
49 | margin: ($gutter * -1) 0 _size(element-margin) ($gutter * -1);\r |
50 | \r |
51 | > .field {\r |
52 | padding: $gutter 0 0 $gutter;\r |
53 | width: calc(100% - #{$gutter * 1});\r |
54 | \r |
55 | &.half {\r |
56 | width: calc(100% - #{$gutter * 1});\r |
57 | }\r |
58 | \r |
59 | &.third {\r |
60 | width: calc(100% - #{$gutter * 1});\r |
61 | }\r |
62 | \r |
63 | &.quarter {\r |
64 | width: calc(100% - #{$gutter * 1});\r |
65 | }\r |
66 | }\r |
67 | }\r |
68 | }\r |
69 | }\r |
70 | \r |
71 | label {\r |
cb4379e1 |
72 | color: _palette_light(fg-bold);\r |
748286b5 |
73 | display: block;\r |
74 | font-size: 0.8em;\r |
75 | font-weight: _font(weight-bold);\r |
76 | letter-spacing: _font(letter-spacing-alt);\r |
77 | margin: 0 0 (_size(element-margin) * 0.5) 0;\r |
78 | text-transform: uppercase;\r |
3690e1d4 |
79 | @media screen and (prefers-color-scheme: dark) {\r |
80 | color: _palette_dark(fg-bold);\r |
81 | }\r |
748286b5 |
82 | }\r |
83 | \r |
84 | input[type="text"],\r |
85 | input[type="password"],\r |
86 | input[type="email"],\r |
87 | input[type="tel"],\r |
88 | input[type="search"],\r |
89 | input[type="url"],\r |
90 | select,\r |
91 | textarea {\r |
92 | @include vendor('appearance', 'none');\r |
cb4379e1 |
93 | background: _palette_light(border-bg);\r |
748286b5 |
94 | border: none;\r |
95 | border-radius: 0;\r |
96 | color: inherit;\r |
97 | display: block;\r |
98 | outline: 0;\r |
99 | padding: 0 1em;\r |
100 | text-decoration: none;\r |
101 | width: 100%;\r |
3690e1d4 |
102 | @media screen and (prefers-color-scheme: dark) {\r |
103 | background: _palette_dark(border-bg);\r |
104 | }\r |
748286b5 |
105 | \r |
106 | &:invalid {\r |
107 | box-shadow: none;\r |
108 | }\r |
109 | \r |
110 | &:focus {\r |
cb4379e1 |
111 | border-color: _palette_light(highlight);\r |
112 | box-shadow: 0 0 0 2px _palette_light(highlight);\r |
3690e1d4 |
113 | @media screen and (prefers-color-scheme: dark) {\r |
114 | border-color: _palette_dark(highlight);\r |
115 | box-shadow: 0 0 0 2px _palette_dark(highlight);\r |
116 | }\r |
748286b5 |
117 | }\r |
118 | }\r |
119 | \r |
120 | select {\r |
cb4379e1 |
121 | background-image: svg-url("<svg xmlns='http://www.w3.org/2000/svg' width='40' height='40' preserveAspectRatio='none' viewBox='0 0 40 40'><path d='M9.4,12.3l10.4,10.4l10.4-10.4c0.2-0.2,0.5-0.4,0.9-0.4c0.3,0,0.6,0.1,0.9,0.4l3.3,3.3c0.2,0.2,0.4,0.5,0.4,0.9 c0,0.4-0.1,0.6-0.4,0.9L20.7,31.9c-0.2,0.2-0.5,0.4-0.9,0.4c-0.3,0-0.6-0.1-0.9-0.4L4.3,17.3c-0.2-0.2-0.4-0.5-0.4-0.9 c0-0.4,0.1-0.6,0.4-0.9l3.3-3.3c0.2-0.2,0.5-0.4,0.9-0.4S9.1,12.1,9.4,12.3z' fill='#{_palette_light(border)}' /></svg>");\r |
748286b5 |
122 | background-size: 1.25rem;\r |
123 | background-repeat: no-repeat;\r |
124 | background-position: calc(100% - 1rem) center;\r |
125 | height: _size(element-height);\r |
126 | padding-right: _size(element-height);\r |
127 | text-overflow: ellipsis;\r |
3690e1d4 |
128 | @media screen and (prefers-color-scheme: dark) {\r |
129 | background-image: svg-url("<svg xmlns='http://www.w3.org/2000/svg' width='40' height='40' preserveAspectRatio='none' viewBox='0 0 40 40'><path d='M9.4,12.3l10.4,10.4l10.4-10.4c0.2-0.2,0.5-0.4,0.9-0.4c0.3,0,0.6,0.1,0.9,0.4l3.3,3.3c0.2,0.2,0.4,0.5,0.4,0.9 c0,0.4-0.1,0.6-0.4,0.9L20.7,31.9c-0.2,0.2-0.5,0.4-0.9,0.4c-0.3,0-0.6-0.1-0.9-0.4L4.3,17.3c-0.2-0.2-0.4-0.5-0.4-0.9 c0-0.4,0.1-0.6,0.4-0.9l3.3-3.3c0.2-0.2,0.5-0.4,0.9-0.4S9.1,12.1,9.4,12.3z' fill='#{_palette_dark(border)}' /></svg>");\r |
130 | }\r |
748286b5 |
131 | \r |
132 | option {\r |
cb4379e1 |
133 | color: _palette_light(fg-bold);\r |
134 | background: _palette_light(bg);\r |
3690e1d4 |
135 | @media screen and (prefers-color-scheme: dark) {\r |
136 | color: _palette_dark(fg-bold);\r |
137 | background: _palette_dark(bg);\r |
138 | }\r |
748286b5 |
139 | }\r |
140 | \r |
141 | &:focus {\r |
142 | &::-ms-value {\r |
143 | background-color: transparent;\r |
144 | }\r |
145 | }\r |
146 | \r |
147 | &::-ms-expand {\r |
148 | display: none;\r |
149 | }\r |
150 | }\r |
151 | \r |
152 | input[type="text"],\r |
153 | input[type="password"],\r |
154 | input[type="email"],\r |
155 | input[type="tel"],\r |
156 | input[type="search"],\r |
157 | input[type="url"],\r |
158 | select {\r |
159 | height: _size(element-height);\r |
160 | }\r |
161 | \r |
162 | textarea {\r |
163 | padding: 0.75em 1em;\r |
164 | }\r |
165 | \r |
166 | input[type="checkbox"],\r |
167 | input[type="radio"], {\r |
168 | @include vendor('appearance', 'none');\r |
169 | display: block;\r |
170 | float: left;\r |
171 | margin-right: -2em;\r |
172 | opacity: 0;\r |
173 | width: 1em;\r |
174 | z-index: -1;\r |
175 | \r |
176 | & + label {\r |
177 | @include icon(false, solid);\r |
cb4379e1 |
178 | color: _palette_light(fg);\r |
748286b5 |
179 | cursor: pointer;\r |
180 | display: inline-block;\r |
181 | font-weight: _font(weight);\r |
182 | padding-left: (_size(element-height) * 0.6) + 1em;\r |
183 | padding-right: 0.75em;\r |
184 | position: relative;\r |
3690e1d4 |
185 | @media screen and (prefers-color-scheme: dark) {\r |
186 | color: _palette_dark(fg);\r |
187 | }\r |
748286b5 |
188 | \r |
189 | &:before {\r |
cb4379e1 |
190 | background: _palette_light(border-bg);\r |
748286b5 |
191 | content: '';\r |
192 | display: inline-block;\r |
193 | font-size: 0.8em;\r |
194 | height: (_size(element-height) * 0.75);\r |
195 | left: 0;\r |
196 | letter-spacing: 0;\r |
197 | line-height: (_size(element-height) * 0.75);\r |
198 | position: absolute;\r |
199 | text-align: center;\r |
200 | top: 0;\r |
201 | width: (_size(element-height) * 0.75);\r |
3690e1d4 |
202 | @media screen and (prefers-color-scheme: dark) {\r |
203 | background: _palette_dark(border-bg);\r |
204 | }\r |
748286b5 |
205 | }\r |
206 | }\r |
207 | \r |
208 | &:checked + label {\r |
209 | &:before {\r |
cb4379e1 |
210 | background: _palette_light(fg-bold);\r |
211 | border-color: _palette_light(highlight);\r |
748286b5 |
212 | content: '\f00c';\r |
cb4379e1 |
213 | color: _palette_light(bg);\r |
3690e1d4 |
214 | @media screen and (prefers-color-scheme: dark) {\r |
215 | background: _palette_dark(fg-bold);\r |
216 | border-color: _palette_dark(highlight);\r |
217 | color: _palette_dark(bg);\r |
218 | }\r |
748286b5 |
219 | }\r |
220 | }\r |
221 | \r |
222 | &:focus + label {\r |
223 | &:before {\r |
cb4379e1 |
224 | box-shadow: 0 0 0 2px _palette_light(highlight);\r |
3690e1d4 |
225 | @media screen and (prefers-color-scheme: dark) {\r |
226 | box-shadow: 0 0 0 2px _palette_dark(highlight);\r |
227 | }\r |
748286b5 |
228 | }\r |
229 | }\r |
230 | }\r |
231 | \r |
232 | input[type="checkbox"] {\r |
233 | & + label {\r |
234 | &:before {\r |
235 | }\r |
236 | }\r |
237 | }\r |
238 | \r |
239 | input[type="radio"] {\r |
240 | & + label {\r |
241 | &:before {\r |
242 | border-radius: 100%;\r |
243 | }\r |
244 | }\r |
245 | }\r |
246 | \r |
247 | ::-webkit-input-placeholder {\r |
cb4379e1 |
248 | color: _palette_light(fg-light) !important;\r |
748286b5 |
249 | opacity: 1.0;\r |
3690e1d4 |
250 | @media screen and (prefers-color-scheme: dark) {\r |
251 | color: _palette_dark(fg-light) !important;\r |
252 | }\r |
748286b5 |
253 | }\r |
254 | \r |
255 | :-moz-placeholder {\r |
cb4379e1 |
256 | color: _palette_light(fg-light) !important;\r |
748286b5 |
257 | opacity: 1.0;\r |
3690e1d4 |
258 | @media screen and (prefers-color-scheme: dark) {\r |
259 | color: _palette_dark(fg-light) !important;\r |
260 | }\r |
748286b5 |
261 | }\r |
262 | \r |
263 | ::-moz-placeholder {\r |
cb4379e1 |
264 | color: _palette_light(fg-light) !important;\r |
748286b5 |
265 | opacity: 1.0;\r |
3690e1d4 |
266 | @media screen and (prefers-color-scheme: dark) {\r |
267 | color: _palette_dark(fg-light) !important;\r |
268 | }\r |
748286b5 |
269 | }\r |
270 | \r |
271 | :-ms-input-placeholder {\r |
cb4379e1 |
272 | color: _palette_light(fg-light) !important;\r |
748286b5 |
273 | opacity: 1.0;\r |
3690e1d4 |
274 | @media screen and (prefers-color-scheme: dark) {\r |
275 | color: _palette_dark(fg-light) !important;\r |
276 | }\r |
748286b5 |
277 | } |