MacViews: Get c/b/ui/views/tabs to build on Mac
[chromium-blink-merge.git] / ui / login / account_picker / user_pod_row.css
blobb8c764dbfb3d0474ed393a16221b9df240e2a026
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 display: none;
213 .pod[auth-type='userClick'] .password-label {
214 display: block;
215 flex: auto;
216 margin-top: 11px;
217 outline: 0;
218 overflow: hidden;
219 text-overflow: ellipsis;
220 white-space: nowrap;
223 .custom-icon {
224 -webkit-margin-end: 0;
225 -webkit-margin-start: auto;
226 background-position: center;
227 background-repeat: no-repeat;
228 flex: none;
229 height: 27px;
230 width: 27px;
233 .custom-icon.faded {
234 -webkit-transition: opacity 200ms ease-in-out,
235 visibility 200ms ease-in-out;
238 .custom-icon-hardlocked {
239 background-image: url('chrome://theme/IDR_EASY_UNLOCK_HARDLOCKED');
242 .custom-icon-hardlocked.icon-with-tooltip:hover {
243 background-image: url('chrome://theme/IDR_EASY_UNLOCK_HARDLOCKED_HOVER');
246 .custom-icon-hardlocked.interactive-custom-icon:active {
247 background-image: url('chrome://theme/IDR_EASY_UNLOCK_HARDLOCKED_PRESSED');
250 .custom-icon-locked {
251 background-image: url('chrome://theme/IDR_EASY_UNLOCK_LOCKED');
254 .custom-icon-locked.icon-with-tooltip:hover {
255 background-image: url('chrome://theme/IDR_EASY_UNLOCK_LOCKED_HOVER');
258 .custom-icon-locked.interactive-custom-icon:active {
259 background-image: url('chrome://theme/IDR_EASY_UNLOCK_LOCKED_PRESSED');
262 .custom-icon-unlocked {
263 background-image: url('chrome://theme/IDR_EASY_UNLOCK_UNLOCKED');
266 .custom-icon-unlocked.icon-with-tooltip:hover {
267 background-image: url('chrome://theme/IDR_EASY_UNLOCK_UNLOCKED_HOVER');
270 .custom-icon-unlocked.interactive-custom-icon:active {
271 background-image: url('chrome://theme/IDR_EASY_UNLOCK_UNLOCKED_PRESSED');
275 * Preloads resources for custom icon. Without this, the resources will be
276 * loaded when CSS properties using them are first applied, which has visible
277 * delay and may cause a short white flash when the icon background changes.
279 .custom-icon::after {
280 content:
281 url('chrome://theme/IDR_EASY_UNLOCK_HARDLOCKED')
282 url('chrome://theme/IDR_EASY_UNLOCK_HARDLOCKED_HOVER')
283 url('chrome://theme/IDR_EASY_UNLOCK_HARDLOCKED_PRESSED')
284 url('chrome://theme/IDR_EASY_UNLOCK_LOCKED')
285 url('chrome://theme/IDR_EASY_UNLOCK_LOCKED_HOVER')
286 url('chrome://theme/IDR_EASY_UNLOCK_LOCKED_PRESSED')
287 url('chrome://theme/IDR_EASY_UNLOCK_UNLOCKED')
288 url('chrome://theme/IDR_EASY_UNLOCK_UNLOCKED_HOVER')
289 url('chrome://theme/IDR_EASY_UNLOCK_UNLOCKED_PRESSED');
290 display: none;
293 .custom-icon-spinner {
294 -webkit-animation: easy-unlock-spinner-animation 2s steps(45) infinite;
295 background-image: url('chrome://theme/IDR_EASY_UNLOCK_SPINNER');
298 @-webkit-keyframes easy-unlock-spinner-animation {
299 from { background-position: 0 }
300 to { background-position: -1215px }
303 .interactive-custom-icon {
304 cursor: pointer;
307 .custom-icon-container {
308 display: flex;
309 flex: none;
310 flex-direction: column;
311 height: 40px;
312 justify-content: center;
313 width: 40px;
316 .pod[auth-type='onlineSignIn'] .signin-button-container,
317 .launch-app-button-container {
318 display: block;
319 flex: auto;
320 text-align: center;
323 .signin-button,
324 .launch-app-button {
325 display: inline;
326 margin-top: 6px !important;
327 max-width: 100%;
328 overflow: hidden;
329 text-overflow: ellipsis;
332 .action-box-area,
333 .user-type-icon-area {
334 background-color: white;
335 border-radius: 2px;
336 position: absolute;
337 top: 0;
340 .action-box-area {
341 opacity: 0;
342 outline: none;
343 right: 0;
344 transition: opacity 100ms;
345 z-index: 4;
348 html[dir=rtl] .action-box-area {
349 left: 0;
350 right: auto;
353 .action-box-area:focus,
354 .action-box-area.hovered,
355 .action-box-area.active {
356 opacity: 1;
359 .action-box-button {
360 background-image: url('chrome://theme/IDR_OOBE_ACTION_BOX_BUTTON_NORMAL');
361 height: 13px;
362 margin: 5px;
363 width: 13px;
366 .action-box-button:hover {
367 background-image: url('chrome://theme/IDR_OOBE_ACTION_BOX_BUTTON_HOVER');
370 .action-box-area.active .action-box-button {
371 background-image: url('chrome://theme/IDR_OOBE_ACTION_BOX_BUTTON_PRESSED');
374 .user-type-icon-area {
375 left: 0;
376 z-index: 5;
379 html[dir=rtl] .user-type-icon-area {
380 left: auto;
381 right: 0;
384 .user-type-icon-image {
385 height: 16px;
386 margin: 5px;
387 width: 16px;
390 .user-type-icon-area.supervised .user-type-icon-image {
391 background-image: url('chrome://theme/IDR_SUPERVISED_USER_ICON');
394 .user-type-icon-area.policy .user-type-icon-image {
395 background-image: url('chrome://theme/IDR_CONTROLLED_SETTING_MANDATORY');
398 .user-type-icon-area.app .user-type-icon-image {
399 background-image: url('chrome://theme/IDR_KIOSK_APP_USER_POD_ICON');
402 .action-box-menu {
403 display: none;
404 z-index: 6;
407 .action-box-area.active ~ .action-box-menu {
408 background-color: white;
409 border: 1px solid lightgray;
410 border-radius: 2px;
411 display: flex;
412 flex-direction: column;
413 font-size: 13px;
414 position: absolute;
415 right: 5px;
416 width: 220px;
419 .action-box-area.active ~ .action-box-menu.left-edge-offset {
420 left: 0 !important;
423 .action-box-area.active ~ .action-box-menu.right-edge-offset {
424 right: 0 !important;
427 .action-box-area.active ~ .action-box-menu:not(.menu-moved-up) {
428 top: 18px;
431 .action-box-area.active ~ .action-box-menu.menu-moved-up {
432 bottom: 210px;
435 .action-box-area.menu-moved-up {
436 -webkit-transform: rotate(180deg);
439 html[dir=rtl] .action-box-area.active ~ .action-box-menu {
440 left: 5px;
441 right: auto;
444 .action-box-menu-title {
445 color: #b4b4b4;
446 display: flex;
447 flex-direction: column;
448 padding: 7px 20px;
451 .action-box-menu-title-name,
452 .action-box-menu-title-email {
453 flex: none;
454 height: 23px;
455 line-height: 19px;
456 overflow: hidden;
457 text-overflow: ellipsis;
458 white-space: nowrap;
461 .action-box-menu-remove {
462 border-top: 1px solid lightgray;
463 line-height: 19px;
464 min-height: 24px;
465 outline: none;
466 padding: 12px 20px 7px;
469 .action-box-menu-remove:hover,
470 .action-box-menu-remove:focus {
471 background-color: #f3f3f3;
474 .action-box-remove-user-warning {
475 border-top: 1px solid lightgray;
476 font-size: 12px;
477 line-height: 18px;
478 padding: 20px;
481 .action-box-remove-user-warning-text,
482 .action-box-remove-supervised-user-warning-text {
483 padding-bottom: 20px;
486 .action-box-remove-user-warning .remove-warning-button {
487 width: 100%;
490 .user-type-bubble {
491 background-color: white;
492 border: 1px solid lightgray;
493 border-radius: 2px;
494 left: 5px;
495 opacity: 0;
496 padding: 17px;
497 position: absolute;
498 top: 20px;
499 transition: all 100ms;
500 visibility: hidden;
501 width: 200px;
502 z-index: 7;
505 html[dir=rtl] .user-type-bubble {
506 left: auto;
507 right: 5px;
510 .bubble-shown,
511 .user-type-icon-area.policy:hover ~ .user-type-bubble {
512 opacity: 1;
513 visibility: visible;
516 .user-type-bubble-header {
517 font-weight: bold;
518 margin-bottom: 14px;
521 /**** Public account user pod rules *******************************************/
523 .pod.public-account.expanded {
524 width: 500px;
527 .pod.public-account.expanded.advanced {
528 width: 610px;
531 .pod.public-account.focused .name-container {
532 display: flex;
535 .pod.public-account.expanded .name-container {
536 transform: translateY(-34px);
539 .pod.public-account .learn-more-container {
540 display: block;
541 flex: none;
544 .pod.public-account .learn-more {
545 background-image: url('chrome://theme/IDR_CONTROLLED_SETTING_MANDATORY');
546 height: 16px;
547 position: relative;
548 top: 16px;
549 width: 16px;
552 .expanded-pane {
553 display: none;
556 .pod.public-account.animating .expanded-pane,
557 .pod.public-account.expanded .expanded-pane {
558 display: block;
559 font-size: 12px;
560 margin: 10px;
561 overflow: hidden;
562 z-index: 1;
565 .expanded-pane-contents {
566 display: flex;
567 flex-direction: column;
568 float: right;
569 height: 193px;
570 width: 490px;
573 .pod.public-account.transitioning-to-advanced .expanded-pane-contents {
574 transition: width 180ms;
577 .pod.public-account.expanded.advanced .expanded-pane-contents {
578 width: 600px;
581 html[dir=rtl] .expanded-pane-contents {
582 float: left;
585 .side-container {
586 -webkit-margin-start: 200px;
587 flex: auto;
590 .expanded-pane-name {
591 font-size: 19px;
592 margin-bottom: 11px;
593 margin-top: -2px;
594 overflow: hidden;
595 text-overflow: ellipsis;
596 white-space: nowrap;
599 .reminder {
600 font-weight: bold;
603 .language-and-input-section {
604 display: none;
607 .pod.public-account.transitioning-to-advanced .language-and-input-section {
608 display: block;
609 opacity: 0;
610 transition: opacity 180ms ease 180ms;
613 .pod.public-account.expanded.advanced .language-and-input-section {
614 display: block;
615 opacity: 1;
618 .select-with-label {
619 display: flex;
620 margin-top: 20px;
623 .language-select-label,
624 .keyboard-select-label {
625 flex: none;
626 margin-top: 3px;
627 overflow: hidden;
628 text-overflow: ellipsis;
629 white-space: nowrap;
630 width: 170px;
633 .select-container {
634 flex: auto;
637 .language-select,
638 .keyboard-select {
639 width: 100%;
642 .bottom-container {
643 -webkit-margin-start: 10px;
644 display: flex;
645 flex: none;
646 font-size: 13px;
649 .expanded-pane-learn-more-container,
650 .enter-button {
651 flex: none;
654 .expanded-pane-learn-more {
655 background-image: url('chrome://theme/IDR_CONTROLLED_SETTING_MANDATORY');
656 height: 16px;
657 position: relative;
658 top: 6px;
659 width: 16px;
662 .info {
663 flex: auto;
664 margin: 5px 10px;
665 overflow: hidden;
666 text-overflow: ellipsis;
667 white-space: nowrap;
670 .language-and-input-container {
671 -webkit-margin-end: 25px;
672 flex: none;
675 .language-and-input {
676 color: rgb(49, 106, 197);
677 position: relative;
678 text-decoration: none;
679 top: 4px;
682 .pod.public-account.expanded.advanced .language-and-input-container {
683 display: none;
686 .enter-button {
687 font-size: 14px;