Roll src/third_party/WebKit 7f556d1:d75145d (svn 195932:195940)
[chromium-blink-merge.git] / ui / login / account_picker / user_pod_row.css
blob1685f13e55d76a406044d2d7dff1a45d7781d239
1 /* Copyright 2014 The Chromium Authors. All rights reserved.
2 * Use of this source code is governed by a BSD-style license that can be
3 * found in the LICENSE file.
5 * This is the stylesheet used by user pods row of account picker UI.
6 */
8 podrow {
9 /* Temporarily disabled because animation interferes with updating screen's
10 size. */
11 height: 100%;
12 overflow: visible;
13 position: absolute;
14 width: 100%;
17 /* Hide the pod row while images are loading. */
18 podrow.images-loading {
19 visibility: hidden;
22 .pod {
23 -webkit-tap-highlight-color: transparent;
24 background-color: white;
25 border-radius: 2px;
26 box-shadow: 0 4px 23px 5px rgba(0, 0, 0, 0.2),
27 0 2px 6px rgba(0, 0, 0, 0.15),
28 0 3px 0 rgba(0, 0, 0, 0.08);
29 cursor: pointer;
30 height: 213px;
31 outline: none;
32 position: absolute;
33 transform: scale3d(0.9, 0.9, 0.9);
34 width: 180px;
35 z-index: 0;
38 .account-picker.flying-pods .pod {
39 transition: all 180ms;
42 .pod.faded {
43 opacity: .75;
46 podrow[ncolumns='6'] .pod {
47 transform: scale3d(0.8, 0.8, 0.8);
50 .pod.focused {
51 /* Focused pod has the same size no matter how many pods. */
52 cursor: default;
53 transform: scale3d(1, 1, 1) !important;
54 z-index: 1;
57 .pod.focused[auth-type='userClick'] {
58 cursor: pointer;
61 .user-image-pane {
62 background-color: white;
63 height: 160px;
64 left: 10px;
65 position: absolute;
66 top: 10px;
67 width: 160px;
68 z-index: 3;
71 html[dir=rtl] .user-image-pane {
72 left: auto;
73 right: 10px;
76 .user-image-container {
77 align-items: center;
78 display: flex;
79 height: 100%;
80 justify-content: center;
81 width: 100%;
84 .pod .user-image {
85 flex: none;
88 /* TODO(noms): Refactor this out into a CrOS-specific file and simplify the
89 style rule once it is included on CrOS only. crbug.com/397638 */
90 html:not([screen=login-add-user]) .pod .user-image {
91 max-height: 160px;
92 max-width: 160px;
93 opacity: 0.7;
96 html:not([screen=login-add-user]) .pod.focused .user-image {
97 opacity: 1;
100 .pod.multiprofiles-policy-applied .user-image {
101 -webkit-filter: grayscale(100%);
104 .signed-in-indicator {
105 display: none;
108 .pod.signed-in .signed-in-indicator {
109 background-color: rgba(0, 0, 0, 0.5);
110 color: white;
111 display: block;
112 font-size: small;
113 padding: 3px 0;
114 position: absolute;
115 text-align: center;
116 top: 0;
117 width: 100%;
120 .main-pane {
121 left: 10px;
122 position: absolute;
123 top: 10px;
124 z-index: 2;
127 html[dir=rtl] .main-pane {
128 left: auto;
129 right: 10px;
132 .name-container,
133 .pod.focused:not(.multiprofiles-policy-applied) .auth-container {
134 background-color: white;
135 display: flex;
136 position: absolute;
137 top: 160px;
138 width: 160px;
141 .name-container {
142 transition: transform 180ms;
145 .pod.focused .name-container {
146 display: none;
149 .pod.focused.multiprofiles-policy-applied .name-container {
150 display: flex;
153 .name {
154 color: #565656;
155 /* This should be 15.6px - the equivalent of 14px at 90% scale. */
156 flex: auto;
157 font-size: 16px;
158 margin-top: 12px;
159 outline: none;
160 overflow: hidden;
161 padding: 0 6px;
162 text-align: center;
163 text-overflow: ellipsis;
164 white-space: nowrap;
167 .learn-more-container,
168 .auth-container,
169 .password-entry-container,
170 .signin-button-container {
171 display: none;
174 .pod[auth-type='offlinePassword'].focused .password-entry-container,
175 .pod[auth-type='forceOfflinePassword'].focused .password-entry-container {
176 display: flex;
177 flex: auto;
180 .password-container {
181 flex: auto;
184 .pod input[type='password'] {
185 background-color: white;
186 border: none;
187 padding: 4px 6px;
188 position: relative;
189 top: 6px;
190 width: 100%;
193 .capslock-hint-container {
194 display: none;
197 .capslock-on .capslock-hint-container {
198 display: block;
199 flex: none;
202 .capslock-hint {
203 -webkit-margin-end: 6px;
204 -webkit-margin-start: -2px;
205 position: relative;
206 top: 11px;
209 .password-label,
210 .signin-transition-container {
211 display: none;
214 .pod[auth-type='userClick']:not(.signing-in) .password-label,
215 .pod[auth-type='userClick'].signing-in .signin-transition-container {
216 color: grey;
217 display: block;
218 flex: auto;
219 margin-top: 11px;
220 outline: 0;
221 overflow: hidden;
222 text-overflow: ellipsis;
223 white-space: nowrap;
226 .custom-icon {
227 -webkit-margin-end: 0;
228 -webkit-margin-start: auto;
229 background-position: center;
230 background-repeat: no-repeat;
231 flex: none;
232 height: 27px;
233 width: 27px;
236 .custom-icon.faded {
237 -webkit-transition: opacity 200ms ease-in-out,
238 visibility 200ms ease-in-out;
241 .custom-icon-hardlocked {
242 background-image: url(chrome://theme/IDR_EASY_UNLOCK_HARDLOCKED);
245 .custom-icon-hardlocked.icon-with-tooltip:hover {
246 background-image: url(chrome://theme/IDR_EASY_UNLOCK_HARDLOCKED_HOVER);
249 .custom-icon-hardlocked.interactive-custom-icon:active {
250 background-image: url(chrome://theme/IDR_EASY_UNLOCK_HARDLOCKED_PRESSED);
253 .custom-icon-locked {
254 background-image: url(chrome://theme/IDR_EASY_UNLOCK_LOCKED);
257 .custom-icon-locked.icon-with-tooltip:hover {
258 background-image: url(chrome://theme/IDR_EASY_UNLOCK_LOCKED_HOVER);
261 .custom-icon-locked.interactive-custom-icon:active {
262 background-image: url(chrome://theme/IDR_EASY_UNLOCK_LOCKED_PRESSED);
265 .custom-icon-locked-to-be-activated {
266 background-image:
267 url(chrome://theme/IDR_EASY_UNLOCK_LOCKED_TO_BE_ACTIVATED);
270 .custom-icon-locked-to-be-activated.icon-with-tooltip:hover {
271 background-image:
272 url(chrome://theme/IDR_EASY_UNLOCK_LOCKED_TO_BE_ACTIVATED_HOVER);
275 .custom-icon-locked-to-be-activated.interactive-custom-icon:active {
276 background-image:
277 url(chrome://theme/IDR_EASY_UNLOCK_LOCKED_TO_BE_ACTIVATED_PRESSED);
280 .custom-icon-locked-with-proximity-hint {
281 background-image:
282 url(chrome://theme/IDR_EASY_UNLOCK_LOCKED_WITH_PROXIMITY_HINT);
285 .custom-icon-locked-with-proximity-hint.icon-with-tooltip:hover {
286 background-image:
287 url(chrome://theme/IDR_EASY_UNLOCK_LOCKED_WITH_PROXIMITY_HINT_HOVER);
290 .custom-icon-locked-with-proximity-hint.interactive-custom-icon:active {
291 background-image:
292 url(chrome://theme/IDR_EASY_UNLOCK_LOCKED_WITH_PROXIMITY_HINT_PRESSED);
295 .custom-icon-unlocked {
296 background-image: url(chrome://theme/IDR_EASY_UNLOCK_UNLOCKED);
299 .custom-icon-unlocked.icon-with-tooltip:hover {
300 background-image: url(chrome://theme/IDR_EASY_UNLOCK_UNLOCKED_HOVER);
303 .custom-icon-unlocked.interactive-custom-icon:active {
304 background-image: url(chrome://theme/IDR_EASY_UNLOCK_UNLOCKED_PRESSED);
308 * Preloads resources for custom icon. Without this, the resources will be
309 * loaded when CSS properties using them are first applied, which has visible
310 * delay and may cause a short white flash when the icon background changes.
312 .custom-icon::after {
313 content:
314 url(chrome://theme/IDR_EASY_UNLOCK_HARDLOCKED)
315 url(chrome://theme/IDR_EASY_UNLOCK_HARDLOCKED_HOVER)
316 url(chrome://theme/IDR_EASY_UNLOCK_HARDLOCKED_PRESSED)
317 url(chrome://theme/IDR_EASY_UNLOCK_LOCKED)
318 url(chrome://theme/IDR_EASY_UNLOCK_LOCKED_HOVER)
319 url(chrome://theme/IDR_EASY_UNLOCK_LOCKED_PRESSED)
320 url(chrome://theme/IDR_EASY_UNLOCK_LOCKED_TO_BE_ACTIVATED)
321 url(chrome://theme/IDR_EASY_UNLOCK_LOCKED_TO_BE_ACTIVATED_HOVER)
322 url(chrome://theme/IDR_EASY_UNLOCK_LOCKED_TO_BE_ACTIVATED_PRESSED)
323 url(chrome://theme/IDR_EASY_UNLOCK_LOCKED_WITH_PROXIMITY_HINT)
324 url(chrome://theme/IDR_EASY_UNLOCK_LOCKED_WITH_PROXIMITY_HINT_HOVER)
325 url(chrome://theme/IDR_EASY_UNLOCK_LOCKED_WITH_PROXIMITY_HINT_PRESSED)
326 url(chrome://theme/IDR_EASY_UNLOCK_UNLOCKED)
327 url(chrome://theme/IDR_EASY_UNLOCK_UNLOCKED_HOVER)
328 url(chrome://theme/IDR_EASY_UNLOCK_UNLOCKED_PRESSED);
329 display: none;
332 .custom-icon-spinner {
333 -webkit-animation: easy-unlock-spinner-animation 2s steps(45) infinite;
334 background-image: url(chrome://theme/IDR_EASY_UNLOCK_SPINNER);
337 @-webkit-keyframes easy-unlock-spinner-animation {
338 from { background-position: 0 }
339 to { background-position: -1215px }
342 .interactive-custom-icon {
343 cursor: pointer;
346 .custom-icon-container {
347 display: flex;
348 flex: none;
349 flex-direction: column;
350 height: 40px;
351 justify-content: center;
352 width: 40px;
355 .pod[auth-type='onlineSignIn'] .signin-button-container,
356 .launch-app-button-container {
357 display: block;
358 flex: auto;
359 text-align: center;
362 .signin-button,
363 .launch-app-button {
364 display: inline;
365 margin-top: 6px !important;
366 max-width: 100%;
367 overflow: hidden;
368 text-overflow: ellipsis;
371 .action-box-area,
372 .user-type-icon-area {
373 background-color: white;
374 border-radius: 2px;
375 position: absolute;
376 top: 0;
379 .action-box-area {
380 opacity: 0;
381 outline: none;
382 right: 0;
383 transition: opacity 100ms;
384 z-index: 4;
387 html[dir=rtl] .action-box-area {
388 left: 0;
389 right: auto;
392 .action-box-area:focus,
393 .action-box-area.hovered,
394 .action-box-area.active,
395 .action-box-area.forced {
396 opacity: 1;
399 .action-box-button {
400 background-image: url(chrome://theme/IDR_OOBE_ACTION_BOX_BUTTON_NORMAL);
401 height: 13px;
402 margin: 5px;
403 width: 13px;
406 .action-box-button:hover {
407 background-image: url(chrome://theme/IDR_OOBE_ACTION_BOX_BUTTON_HOVER);
410 .action-box-area.active .action-box-button {
411 background-image: url(chrome://theme/IDR_OOBE_ACTION_BOX_BUTTON_PRESSED);
414 .user-type-icon-area {
415 left: 0;
416 z-index: 5;
419 html[dir=rtl] .user-type-icon-area {
420 left: auto;
421 right: 0;
424 .user-type-icon-image {
425 height: 16px;
426 margin: 5px;
427 width: 16px;
430 .user-type-icon-area.legacySupervised .user-type-icon-image {
431 background-image: url(chrome://theme/IDR_LEGACY_SUPERVISED_USER_ICON);
434 .user-type-icon-area.child .user-type-icon-image {
435 background-image: url(chrome://theme/IDR_CHILD_USER_ICON);
438 .user-type-icon-area.policy .user-type-icon-image {
439 background-image: url(chrome://theme/IDR_CONTROLLED_SETTING_MANDATORY);
442 .user-type-icon-area.app .user-type-icon-image {
443 background-image: url(chrome://theme/IDR_KIOSK_APP_USER_POD_ICON);
446 .action-box-menu {
447 display: none;
448 z-index: 6;
451 .action-box-area.active ~ .action-box-menu {
452 background-color: white;
453 border: 1px solid lightgray;
454 border-radius: 2px;
455 display: flex;
456 flex-direction: column;
457 font-size: 13px;
458 position: absolute;
459 right: 5px;
460 width: 220px;
463 .action-box-area.active ~ .action-box-menu.left-edge-offset {
464 left: 0 !important;
467 .action-box-area.active ~ .action-box-menu.right-edge-offset {
468 right: 0 !important;
471 .action-box-area.active ~ .action-box-menu:not(.menu-moved-up) {
472 top: 18px;
475 .action-box-area.active ~ .action-box-menu.menu-moved-up {
476 bottom: 210px;
479 .action-box-area.menu-moved-up {
480 -webkit-transform: rotate(180deg);
483 html[dir=rtl] .action-box-area.active ~ .action-box-menu {
484 left: 5px;
485 right: auto;
488 .action-box-menu-title {
489 color: #b4b4b4;
490 display: flex;
491 flex-direction: column;
492 padding: 7px 20px;
495 .action-box-menu-title-name,
496 .action-box-menu-title-email {
497 flex: none;
498 height: 23px;
499 line-height: 19px;
500 overflow: hidden;
501 text-overflow: ellipsis;
502 white-space: nowrap;
505 .action-box-menu-remove {
506 border-top: 1px solid lightgray;
507 line-height: 19px;
508 min-height: 24px;
509 outline: none;
510 padding: 12px 20px 7px;
513 .action-box-menu-remove:hover,
514 .action-box-menu-remove:focus {
515 background-color: #f3f3f3;
518 .action-box-remove-user-warning {
519 border-top: 1px solid lightgray;
520 font-size: 12px;
521 line-height: 18px;
522 padding: 20px;
525 .action-box-remove-user-warning-text,
526 .action-box-remove-legacy-supervised-user-warning-text {
527 padding-bottom: 20px;
530 .action-box-remove-user-warning .remove-warning-button {
531 width: 100%;
534 .user-type-bubble {
535 background-color: white;
536 border: 1px solid lightgray;
537 border-radius: 2px;
538 left: 5px;
539 opacity: 0;
540 padding: 17px;
541 position: absolute;
542 top: 20px;
543 transition: all 100ms;
544 visibility: hidden;
545 width: 200px;
546 z-index: 7;
549 html[dir=rtl] .user-type-bubble {
550 left: auto;
551 right: 5px;
554 .bubble-shown,
555 .user-type-icon-area.policy:hover ~ .user-type-bubble {
556 opacity: 1;
557 visibility: visible;
560 .user-type-bubble-header {
561 font-weight: bold;
562 margin-bottom: 14px;
565 /**** Public account user pod rules *******************************************/
567 .pod.public-account.expanded {
568 width: 500px;
571 .pod.public-account.expanded.advanced {
572 width: 610px;
575 .pod.public-account.focused .name-container {
576 display: flex;
579 .pod.public-account.expanded .name-container {
580 transform: translateY(-34px);
583 .pod.public-account .learn-more-container {
584 display: block;
585 flex: none;
588 .pod.public-account .learn-more {
589 background-image: url(chrome://theme/IDR_CONTROLLED_SETTING_MANDATORY);
590 height: 16px;
591 position: relative;
592 top: 16px;
593 width: 16px;
596 .expanded-pane {
597 display: none;
600 .pod.public-account.animating .expanded-pane,
601 .pod.public-account.expanded .expanded-pane {
602 display: block;
603 font-size: 12px;
604 margin: 10px;
605 overflow: hidden;
606 z-index: 1;
609 .expanded-pane-contents {
610 display: flex;
611 flex-direction: column;
612 float: right;
613 height: 193px;
614 width: 490px;
617 .pod.public-account.transitioning-to-advanced .expanded-pane-contents {
618 transition: width 180ms;
621 .pod.public-account.expanded.advanced .expanded-pane-contents {
622 width: 600px;
625 html[dir=rtl] .expanded-pane-contents {
626 float: left;
629 .side-container {
630 -webkit-margin-start: 200px;
631 flex: auto;
634 .expanded-pane-name {
635 font-size: 19px;
636 margin-bottom: 11px;
637 margin-top: -2px;
638 overflow: hidden;
639 text-overflow: ellipsis;
640 white-space: nowrap;
643 .reminder {
644 font-weight: bold;
647 .language-and-input-section {
648 display: none;
651 .pod.public-account.transitioning-to-advanced .language-and-input-section {
652 display: block;
653 opacity: 0;
654 transition: opacity 180ms ease 180ms;
657 .pod.public-account.expanded.advanced .language-and-input-section {
658 display: block;
659 opacity: 1;
662 .select-with-label {
663 display: flex;
664 margin-top: 20px;
667 .language-select-label,
668 .keyboard-select-label {
669 flex: none;
670 margin-top: 3px;
671 overflow: hidden;
672 text-overflow: ellipsis;
673 white-space: nowrap;
674 width: 170px;
677 .select-container {
678 flex: auto;
681 .language-select,
682 .keyboard-select {
683 width: 100%;
686 .bottom-container {
687 -webkit-margin-start: 10px;
688 display: flex;
689 flex: none;
690 font-size: 13px;
693 .expanded-pane-learn-more-container,
694 .enter-button {
695 flex: none;
698 .expanded-pane-learn-more {
699 background-image: url(chrome://theme/IDR_CONTROLLED_SETTING_MANDATORY);
700 height: 16px;
701 position: relative;
702 top: 6px;
703 width: 16px;
706 .info {
707 flex: auto;
708 margin: 5px 10px;
709 overflow: hidden;
710 text-overflow: ellipsis;
711 white-space: nowrap;
714 .language-and-input-container {
715 -webkit-margin-end: 25px;
716 flex: none;
719 .language-and-input {
720 color: rgb(49, 106, 197);
721 position: relative;
722 text-decoration: none;
723 top: 4px;
726 .pod.public-account.expanded.advanced .language-and-input-container {
727 display: none;
730 .enter-button {
731 font-size: 14px;
734 /* Animations for the animated ellipsis: */
735 .animated-ellipsis-component0 {
736 -webkit-animation: ellipsis-component0 1.5s infinite;
739 @-webkit-keyframes ellipsis-component0 {
740 0% { opacity: 0; }
741 25% { opacity: 1; }
742 50% { opacity: 1; }
743 75% { opacity: 1; }
744 100% { opacity: 0; }
747 .animated-ellipsis-component1 {
748 -webkit-animation: ellipsis-component1 1.5s infinite;
751 @-webkit-keyframes ellipsis-component1 {
752 0% { opacity: 0; }
753 25% { opacity: 0; }
754 50% { opacity: 1; }
755 75% { opacity: 1; }
756 100% { opacity: 0; }
759 .animated-ellipsis-component2 {
760 -webkit-animation: ellipsis-component2 1.5s infinite;
763 @-webkit-keyframes ellipsis-component2 {
764 0% { opacity: 0; }
765 25% { opacity: 0; }
766 50% { opacity: 0; }
767 75% { opacity: 1; }
768 100% { opacity: 0; }