html { font-size: 10px; font-weight: 500; width: 100%; height: 100%; background-color: black; overflow: hidden; padding: 0; } body { width: 100%; height: 100%; margin: 0; overflow: hidden; color: #fff; } #screen { position: absolute; overflow: hidden; width: 100%; height: 100%; background-color: #000; background-size: cover; /* Possible memory over-consumption with huge images, it should be removed for improving stability*/ background-repeat: no-repeat; background-position: 50% 50%; } #screen.screenoff { background: #000 !important; } #screen.screenoff * { visibility: hidden !important; } /* * Poweroff animation */ #screen > div#poweroff-splash { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #000; } #screen > div#poweroff-splash.step1 { animation: poweroff-splash-fade-in 0.5s; } @keyframes poweroff-splash-fade-in { 0% { opacity: 0; } 100% { opacity: 1; } } #bottom-panel { position: absolute; display: none; bottom: 0; width: 100%; height: 1rem; } #bottom-panel.visible{ display: block; } .poweroff-ring { display: block; position: absolute; border-radius: 50%; width: 19vw; height: 19vw; margin-left: -9.5vw; margin-top: -9.5vw; left: 50%; opacity: 0; } #poweroff-ring-1 { top: 25%; background-color: #e66600; } #poweroff-ring-2 { top: 50%; background-color: #dc4e00; } #poweroff-ring-3 { top: 75%; background-color: #d24500; } .poweroff-ring > span { display: block; position: absolute; border-radius: 50%; top: 50%; left: 50%; margin: auto; background-color: black; width: 12vw; height: 12vw; margin-top: -6vw; margin-left: -6vw; } @media all and (orientation:landscape) { .poweroff-ring { width: 19vh; height: 19vh; margin-left: -9.5vh; margin-top: -9.5vh; } .poweroff-ring > span { width: 12vh; height: 12vh; margin-top: -6vh; margin-left: -6vh; } } #poweroff-ring-2 > span { transform: scale(1.125); } #poweroff-ring-3 > span { transform: scale(1.25); } /* Ring 1 : inner diameter scales from 40 pixel to 58 pixel */ @keyframes ring1-scale { 0% { transform: scale(1); } 100% { transform: scale(1.45); } } /* Ring 2 : inner diameter scales from 45 pixel to 59.5 pixel */ @keyframes ring2-scale { 0% { transform: scale(1.125); } 100% { transform: scale(1.4875); } } /* Ring 3 : inner diameter scales from 50 pixel to 59 pixel */ @keyframes ring3-scale { 0% { transform: scale(1.25); } 100% { transform: scale(1.475); } } @keyframes ring-fade-in { 0% { opacity: 0; } 100% { opacity: 1; } } @keyframes ring-fade-out { 0% { opacity: 1; } 100% { opacity: 0; } } #screen > div#poweroff-splash.step2 > #poweroff-ring-1 { animation: ring-fade-in .4s ease-out 0s, ring-fade-out .5s linear .4s; } #screen > div#poweroff-splash.step2 > #poweroff-ring-2 { animation: ring-fade-in .4s ease-out .25s, ring-fade-out .5s linear .65s; } #screen > div#poweroff-splash.step2 > #poweroff-ring-3 { animation: ring-fade-in .4s ease-out .5s, ring-fade-out .5s linear .9s; } #screen > div#poweroff-splash.step2 > #poweroff-ring-1 > span { animation: ring1-scale .5s linear .4s; } #screen > div#poweroff-splash.step2 > #poweroff-ring-2 > span { animation: ring2-scale .5s linear .65s; } #screen > div#poweroff-splash.step2 > #poweroff-ring-3 > span { animation: ring3-scale .5s linear .9s; } #system-overlay { width: 100%; height: 100%; position: absolute; top: 0; left: 0; visibility: hidden; pointer-events: none; } #system-overlay.volume { visibility: visible; } #windows { position: absolute; left: 0; width: 100%; top: 0; height: 100%; max-height: 100%; border: 0; overflow: hidden; } #windows::before { position: absolute; top: 0; width: 100%; height: 0; background: rgba(0, 0, 0, .15); content: ''; } #screen.fullscreen-app #windows::before { background: black; } #secure-windows { position: absolute; left: 0; width: 100%; top: 0; height: 100%; max-height: 100%; border: 0; overflow: hidden; } #dialog-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; visibility: hidden; pointer-events: none; } #screen.software-button-enabled #windows + #dialog-overlay { bottom: 0; height: 100%; } #screen.active-statusbar #dialog-overlay, #screen.active-statusbar.fullscreen-app #dialog-overlay { top: 4rem; height: calc(100% - 4rem); } #screen:-moz-full-screen-ancestor #dialog-overlay, #screen.fullscreen-app #dialog-overlay { top: 0; height: 100%; } #screen:not(.crash-dialog) #crash-dialog { visibility: hidden; } /* `.dialog` is set by system_dialog.js when a dialog is shown */ #screen.dialog #dialog-overlay { visibility: visible; pointer-events: auto; } #screen.crash-dialog #dialog-overlay, #screen.crash-dialog #crash-dialog, #screen.modal-dialog #dialog-overlay, #screen.modal-dialog #modal-dialog, #screen.popup #popup-container, #screen.fxa-dialog #fxa-dialog, #screen.trustedui #trustedui-container, #screen.trustedui #dialog-overlay { visibility: visible; pointer-events: auto; } #screen.locked #dialog-overlay { visibility: hidden; } @keyframes banner-bounce { from, to { transform: translateY(100%); opacity: 0; } 12.5%, 87.5% { transform: translateY(0); opacity: 1; } } .generic-dialog.banner { z-index: 0; visibility: hidden; opacity: 0; transform: translateY(100%); } /* Banner should be offset when software home button is enabled */ #screen.software-button-enabled .generic-dialog.banner { bottom: 0; } .generic-dialog.banner.visible { animation: banner-bounce 4s; visibility: visible; } .generic-dialog.banner button { width: auto; } .generic-dialog.banner[data-button="false"] button { display: none; } #screen iframe.communication-frame { visibility: hidden; }