2 * Angular Material Design
3 * https://github.com/angular/material
12 vertical-align: middle;
14 * The .md-input class is added to the input/textarea
16 md-input-container:after {
20 md-input-container.md-block {
22 md-input-container .md-errors-spacer {
26 [dir=rtl] md-input-container .md-errors-spacer {
28 md-input-container > md-icon {
33 [dir=rtl] md-input-container > md-icon {
35 [dir=rtl] md-input-container > md-icon {
37 md-input-container textarea,
38 md-input-container input[type="text"],
39 md-input-container input[type="password"],
40 md-input-container input[type="datetime"],
41 md-input-container input[type="datetime-local"],
42 md-input-container input[type="date"],
43 md-input-container input[type="month"],
44 md-input-container input[type="time"],
45 md-input-container input[type="week"],
46 md-input-container input[type="number"],
47 md-input-container input[type="email"],
48 md-input-container input[type="url"],
49 md-input-container input[type="search"],
50 md-input-container input[type="tel"],
51 md-input-container input[type="color"] {
52 /* remove default appearance from all input/textarea */
53 -moz-appearance: none;
54 -webkit-appearance: none; }
55 md-input-container input[type="date"],
56 md-input-container input[type="datetime-local"],
57 md-input-container input[type="month"],
58 md-input-container input[type="time"],
59 md-input-container input[type="week"] {
61 md-input-container textarea {
64 md-input-container textarea.md-input {
66 -ms-flex-preferred-size: auto; }
67 md-input-container textarea[md-no-autogrow] {
70 md-input-container label:not(.md-container-ignore) {
75 [dir=rtl] md-input-container label:not(.md-container-ignore) {
77 [dir=rtl] md-input-container label:not(.md-container-ignore) {
79 md-input-container label:not(.md-container-ignore).md-required:after {
82 vertical-align: top; }
83 md-input-container label:not(.md-no-float):not(.md-container-ignore),
84 md-input-container .md-placeholder {
86 text-overflow: ellipsis;
89 -webkit-box-ordinal-group: 2;
93 -webkit-font-smoothing: antialiased;
97 -webkit-transform: translate3d(0, 28px, 0) scale(1);
98 transform: translate3d(0, 28px, 0) scale(1);
99 -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
100 transition: -webkit-transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
101 transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
102 transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), -webkit-transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
104 -webkit-transform-origin: left top;
105 transform-origin: left top; }
106 [dir=rtl] md-input-container label:not(.md-no-float):not(.md-container-ignore), [dir=rtl]
107 md-input-container .md-placeholder {
109 [dir=rtl] md-input-container label:not(.md-no-float):not(.md-container-ignore), [dir=rtl]
110 md-input-container .md-placeholder {
111 padding-right: 3px; }
112 [dir=rtl] md-input-container label:not(.md-no-float):not(.md-container-ignore), [dir=rtl]
113 md-input-container .md-placeholder {
114 -webkit-transform-origin: right top;
115 transform-origin: right top; }
116 md-input-container .md-placeholder {
120 -webkit-transition-property: opacity, -webkit-transform;
121 transition-property: opacity, -webkit-transform;
122 transition-property: opacity, transform;
123 transition-property: opacity, transform, -webkit-transform;
124 -webkit-transform: translate3d(0, 30px, 0);
125 transform: translate3d(0, 30px, 0); }
126 md-input-container.md-input-focused .md-placeholder {
128 -webkit-transform: translate3d(0, 24px, 0);
129 transform: translate3d(0, 24px, 0); }
130 md-input-container.md-input-has-value .md-placeholder {
131 -webkit-transition: none;
134 md-input-container:not(.md-input-has-value) input:not(:focus),
135 md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-ampm-field,
136 md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-day-field,
137 md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-hour-field,
138 md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-millisecond-field,
139 md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-minute-field,
140 md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-month-field,
141 md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-second-field,
142 md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-week-field,
143 md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-year-field,
144 md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-text {
145 color: transparent; }
146 md-input-container .md-input {
147 -webkit-box-ordinal-group: 3;
157 border-width: 0 0 1px 0;
160 -ms-flex-preferred-size: 26px;
164 box-sizing: border-box;
166 [dir=rtl] md-input-container .md-input {
168 md-input-container .md-input:focus {
170 md-input-container .md-input:invalid {
173 md-input-container .md-input.md-no-flex {
174 -webkit-box-flex: 0 !important;
175 -webkit-flex: none !important;
176 flex: none !important; }
177 md-input-container .md-char-counter {
181 [dir=rtl] md-input-container .md-char-counter {
183 [dir=rtl] md-input-container .md-char-counter {
185 [dir=rtl] md-input-container .md-char-counter {
187 md-input-container .md-input-messages-animation {
189 -webkit-box-ordinal-group: 5;
194 [dir=rtl] md-input-container .md-input-messages-animation {
196 md-input-container .md-input-messages-animation.ng-enter .md-input-message-animation {
198 margin-top: -100px; }
199 md-input-container .md-input-message-animation, md-input-container .md-char-counter {
203 -webkit-transition: all 0.3s cubic-bezier(0.55, 0, 0.55, 0.2);
204 transition: all 0.3s cubic-bezier(0.55, 0, 0.55, 0.2);
208 md-input-container .md-input-message-animation:not(.md-char-counter), md-input-container .md-char-counter:not(.md-char-counter) {
211 [dir=rtl] md-input-container .md-input-message-animation:not(.md-char-counter), [dir=rtl] md-input-container .md-char-counter:not(.md-char-counter) {
213 [dir=rtl] md-input-container .md-input-message-animation:not(.md-char-counter), [dir=rtl] md-input-container .md-char-counter:not(.md-char-counter) {
215 md-input-container:not(.md-input-invalid) .md-auto-hide .md-input-message-animation {
217 margin-top: -100px; }
218 md-input-container .md-input-message-animation:not(.ng-animate) {
220 margin-top: -100px; }
221 md-input-container .md-input-message-animation.ng-enter {
223 margin-top: -100px; }
224 md-input-container.md-input-focused label:not(.md-no-float), md-input-container.md-input-has-placeholder label:not(.md-no-float), md-input-container.md-input-has-value label:not(.md-no-float) {
225 -webkit-transform: translate3d(0, 6px, 0) scale(0.75);
226 transform: translate3d(0, 6px, 0) scale(0.75);
227 -webkit-transition: width cubic-bezier(0.25, 0.8, 0.25, 1) 0.4s, -webkit-transform cubic-bezier(0.25, 0.8, 0.25, 1) 0.4s;
228 transition: width cubic-bezier(0.25, 0.8, 0.25, 1) 0.4s, -webkit-transform cubic-bezier(0.25, 0.8, 0.25, 1) 0.4s;
229 transition: transform cubic-bezier(0.25, 0.8, 0.25, 1) 0.4s, width cubic-bezier(0.25, 0.8, 0.25, 1) 0.4s;
230 transition: transform cubic-bezier(0.25, 0.8, 0.25, 1) 0.4s, width cubic-bezier(0.25, 0.8, 0.25, 1) 0.4s, -webkit-transform cubic-bezier(0.25, 0.8, 0.25, 1) 0.4s; }
231 md-input-container.md-input-has-value label {
232 -webkit-transition: none;
234 md-input-container.md-input-focused .md-input,
235 md-input-container .md-input.ng-invalid.ng-dirty,
236 md-input-container.md-input-resized .md-input {
238 border-width: 0 0 2px 0; }
239 md-input-container .md-input[disabled],
240 [disabled] md-input-container .md-input {
241 background-position: bottom -1px left 0;
242 background-size: 4px 1px;
243 background-repeat: repeat-x; }
244 md-input-container.md-icon-float {
245 -webkit-transition: margin-top 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
246 transition: margin-top 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); }
247 md-input-container.md-icon-float > label {
248 pointer-events: none;
249 position: absolute; }
250 md-input-container.md-icon-float > md-icon {
254 [dir=rtl] md-input-container.md-icon-float > md-icon {
256 [dir=rtl] md-input-container.md-icon-float > md-icon {
258 md-input-container.md-icon-left > label:not(.md-no-float):not(.md-container-ignore),
259 md-input-container.md-icon-left > label .md-placeholder, md-input-container.md-icon-right > label:not(.md-no-float):not(.md-container-ignore),
260 md-input-container.md-icon-right > label .md-placeholder {
261 width: calc(100% - 36px - 18px); }
262 md-input-container.md-icon-left {
265 [dir=rtl] md-input-container.md-icon-left {
267 [dir=rtl] md-input-container.md-icon-left {
268 padding-right: 36px; }
269 md-input-container.md-icon-left > label {
272 [dir=rtl] md-input-container.md-icon-left > label {
274 [dir=rtl] md-input-container.md-icon-left > label {
276 md-input-container.md-icon-right {
278 padding-right: 36px; }
279 [dir=rtl] md-input-container.md-icon-right {
280 padding-left: 36px; }
281 [dir=rtl] md-input-container.md-icon-right {
283 md-input-container.md-icon-right > md-icon:last-of-type {
287 [dir=rtl] md-input-container.md-icon-right > md-icon:last-of-type {
289 [dir=rtl] md-input-container.md-icon-right > md-icon:last-of-type {
291 md-input-container.md-icon-left.md-icon-right {
293 padding-right: 36px; }
294 md-input-container.md-icon-left.md-icon-right > label:not(.md-no-float):not(.md-container-ignore),
295 md-input-container.md-icon-left.md-icon-right > label .md-placeholder {
296 width: calc(100% - (36px * 2)); }
299 position: relative; }
300 .md-resize-wrapper:after {
310 background: transparent;
314 @media screen and (-ms-high-contrast: active) {
315 md-input-container.md-default-theme > md-icon {