| /* |
| * Copyright (c) 2012 The Chromium OS Authors. All rights reserved. |
| * Use of this source code is governed by a BSD-style license that can be |
| * found in the LICENSE file. |
| */ |
| |
| /* CSS reset. */ |
| |
| html, body, div, span, object, iframe, |
| h1, h2, h3, h4, h5, h6, p, blockquote, pre, |
| abbr, address, cite, code, |
| del, dfn, em, img, ins, kbd, q, samp, |
| small, strong, sub, sup, var, |
| b, i, |
| dl, dt, dd, ol, ul, li, |
| fieldset, form, label, legend, |
| table, caption, tbody, tfoot, thead, tr, th, td, |
| article, aside, canvas, details, figcaption, figure, |
| footer, header, hgroup, menu, nav, section, summary, |
| time, mark, audio, video { |
| margin: 0; |
| padding: 0; |
| border: 0; |
| outline: 0; |
| font-size: 100%; |
| font-family: 'Open Sans', sans-serif; |
| vertical-align: baseline; |
| background: transparent; |
| } |
| |
| /* Language-specific labels. Default to display: none, but set display: inline |
| when the respective language class is present. */ |
| .goofy-label-en, .goofy-label-zh { |
| display: none; |
| } |
| .goofy-lang-en .goofy-label-en, .goofy-lang-zh .goofy-label-zh { |
| display: inline; |
| } |
| |
| /* Top-level UI elements. */ |
| body { |
| overflow: hidden; |
| } |
| .goofy-horizontal-border { |
| position: relative; |
| overflow: hidden; |
| top: 0; right: 0; height: 4px; width: 100%; |
| } |
| .goofy-horizontal-border-1 { |
| position: absolute; |
| left: 0; width: 100%; height: 100%; |
| background-color: #4172a0; |
| } |
| .goofy-horizontal-border-2 { |
| position: absolute; |
| left: 25%; width: 100%; height: 100%; |
| background-color: #779fd3; |
| } |
| .goofy-horizontal-border-3 { |
| position: absolute; |
| left: 50%; width: 100%; height: 100%; |
| background-color: #85b4df; |
| } |
| .goofy-horizontal-border-4 { |
| position: absolute; |
| left: 75%; width: 100%; height: 100%; |
| background-color: #cddff0; |
| } |
| #goofy-control { |
| position: absolute; |
| top: 45px; left: 0; right: 0; bottom: 20px; |
| padding: 5px 0; |
| } |
| #goofy-control, #goofy-status-bar { |
| cursor: default; |
| -webkit-user-select: none; |
| user-select: none; |
| } |
| #goofy-control, #goofy-main-and-console .goog-splitpane-second-container { |
| overflow: auto; |
| } |
| |
| /* Overrides for status bar. */ |
| #goofy-status-bar { |
| border-top: 1px solid lightgray; |
| font-size: 75%; |
| height: 20px; left: 0; right: 0; bottom: 0; |
| position: absolute; |
| } |
| #goofy-status-bar-main { |
| padding-top: 1px; |
| width: 100%; |
| } |
| #goofy-status-bar-main img { |
| padding-left: .25em; |
| padding-right: .2em; |
| } |
| #goofy-status-bar-main img { |
| vertical-align: -4px; |
| } |
| .goofy-status-bar-section { |
| display: inline-block; |
| } |
| .goofy-status-bar-item:not(.goofy-value-known) .goofy-value { |
| display: none; |
| } |
| .goofy-status-bar-item.goofy-value-known .goofy-unknown { |
| display: none; |
| } |
| .goofy-battery-charging:before { |
| content: '↑'; |
| } |
| .goofy-battery-discharging:before { |
| content: '↓'; |
| } |
| .goofy-battery-idle:before { |
| content: '='; |
| } |
| .goofy-battery-full:before { |
| content: 'F'; |
| } |
| .goofy-engineering-mode #goofy-status-bar, |
| .goofy-update-available #goofy-status-bar { |
| /* Status bar contains one indicator. */ |
| height: 44px; |
| /* No border necessary. */ |
| border-top: 0px; |
| } |
| .goofy-engineering-mode.goofy-update-available #goofy-status-bar { |
| /* Status bar contains both indicators. */ |
| height: 68px; |
| } |
| .goofy-indicator { |
| color: white; |
| display: none; |
| height: 24px; |
| line-height: 24px; |
| text-align: center; |
| left: 0; right: 0; |
| } |
| .goofy-indicator a { |
| color: white; |
| } |
| #goofy-engineering-mode-indicator { |
| background-color: red; |
| font-weight: bold; |
| font-size: 150%; |
| } |
| #goofy-update-available-indicator { |
| background-color: green; |
| } |
| .goofy-engineering-mode #goofy-engineering-mode-indicator { |
| display: block; |
| } |
| .goofy-update-available #goofy-update-available-indicator { |
| display: block; |
| } |
| .goofy-engineering-mode #goofy-control, |
| .goofy-update-available #goofy-control { |
| bottom: 44px; |
| } |
| .goofy-engineering-mode.goofy-update-available #goofy-control { |
| bottom: 68px; |
| } |
| #goofy-disable-engineering-mode { |
| border: none; |
| cursor: pointer; |
| margin-left: 1em; |
| vertical-align: -5px; |
| width: 21; height: 21; |
| } |
| |
| #goofy-eth-indicator { |
| background-image: url('images/eth_off.png'); |
| background-repeat: no-repeat; |
| background-position: center; |
| vertical-align: -4px; |
| width: 18px; height: 18px; |
| padding-left: 0.5em; |
| } |
| .goofy-eth-enabled#goofy-eth-indicator { |
| background-image: url('images/eth_on.png'); |
| } |
| #goofy-wlan-indicator { |
| background-image: url('images/wlan_off.png'); |
| background-repeat: no-repeat; |
| background-position: center; |
| vertical-align: -4px; |
| width: 18px; height: 18px; |
| padding-left: 0.5em; |
| } |
| .goofy-wlan-enabled#goofy-wlan-indicator { |
| background-image: url('images/wlan_on.png'); |
| } |
| /* Elements in the control pane. */ |
| h1 { |
| font-size: 20px; |
| font-weight: normal; |
| border-bottom: 1px solid #cddff0; |
| height: 34px; |
| padding-top: 7px; |
| } |
| #goofy-logo { |
| height: 18px; |
| vertical-align: -3px; |
| padding: 0 3px 0 7px; |
| } |
| #goofy-logo-text { |
| vertical-align: middle; |
| cursor: pointer; |
| } |
| #goofy-logo-down-arrow { |
| font-size: 60%; |
| vertical-align: 3px; |
| } |
| #goofy-upper-right { |
| float: right; |
| padding: 4px 5px; |
| } |
| #goofy-language-selector { |
| display: inline-table; |
| text-align: center; |
| vertical-align: 10px; |
| padding-right: 4px; |
| margin-top: -8px; |
| } |
| #goofy-language-selector td { |
| font-size: 55%; |
| } |
| #goofy-go, #goofy-language-selector { |
| cursor: pointer; |
| } |
| #goofy-go:hover, #goofy-language-selector:hover { |
| text-decoration: underline; |
| } |
| #goofy-loading { |
| font-style: italic; |
| font-size: 75%; |
| } |
| #goofy-loading img { |
| margin-right: 3px; |
| vertical-align: bottom; |
| } |
| .goofy-kbd-shortcut { |
| float: right; |
| font-size: 75%; |
| padding-right: .5em; |
| color: darkgray; |
| } |
| |
| .goofy-test-icon { |
| background-repeat: no-repeat; |
| background-position: center; |
| vertical-align: -2px; |
| width: 16px; height: 16px; |
| } |
| .goofy-test-visible .goog-tree-item-label { |
| background-color: red; |
| } |
| .goofy-status-passed > div > .goofy-test-icon { |
| background-image: url(images/passed.gif); |
| } |
| .goofy-status-active > div > .goofy-test-icon { |
| background-image: url(images/active.gif); |
| } |
| .goofy-status-failed > div > .goofy-test-icon { |
| background-image: url(images/failed.gif); |
| } |
| .goofy-status-untested > div > .goofy-test-icon { |
| background-image: url(images/untested.gif); |
| } |
| .goofy-skip .goog-tree-item-label { |
| text-decoration: line-through; |
| color: darkgray !important; |
| } |
| .goofy-test-failure-expanded .goofy-test-failure-detail-link { |
| display: none; |
| } |
| .goofy-test-failure-expanded .goofy-test-failure-detail { |
| display: block; |
| } |
| .goofy-test-failure-detail-link, .goofy-test-failure-view-log-link { |
| text-decoration: underline; |
| cursor: pointer; |
| color: blue; |
| font-style: italic; |
| font-size: 75%; |
| padding-top: 1em; |
| } |
| .goofy-test-failure-detail + .goofy-test-failure-view-log-link { |
| padding-top: 0; |
| } |
| .goofy-test-failure-detail { |
| white-space: pre; |
| display: none; |
| font-size: 75%; |
| padding-top: 1em; |
| } |
| .goofy-history-header { |
| font-weight: bold; |
| font-size: 125%: |
| } |
| .goofy-history, .goofy-log-data { |
| overflow: auto; |
| } |
| .goofy-history table { |
| border-spacing: 0; |
| } |
| table + .goofy-history-header { |
| padding-top: 1em; |
| } |
| .goofy-history th, .goofy-history td { |
| font-size: 75%; |
| text-align: left; |
| } |
| .goofy-history th { |
| padding-right: 1em; |
| } |
| .goofy-history-metadata, .goofy-history-log, .goofy-log-data { |
| white-space: pre; |
| font-size: 75%; |
| } |
| .goofy-log-time { |
| font-size: 75%; |
| padding-top: 0.5em; |
| } |
| #goofy-system-info th, #goofy-system-info td { |
| font-size: 75%; |
| text-align: left; |
| padding: 0 .1em 0 .1em; |
| white-space: nowrap; |
| } |
| #goofy-system-info th { |
| padding-right: 1em; |
| } |
| #goofy-system-info-hover { |
| float: right; |
| margin-top: -1px; |
| } |
| .goofy-unknown { |
| color: darkgray; |
| font-style: italic; |
| } |
| .goofy-view-logs-status-passed { |
| color: #0A0; |
| } |
| .goofy-view-logs-status-failed { |
| color: #D00; |
| } |
| |
| /* Elements in the main pane. */ |
| #goofy-main { |
| left: 0; top: 0; |
| width: 100%; height: 100%; |
| background: -webkit-linear-gradient(210deg, #cddff0, #85b4df); |
| } |
| #goofy-main-logo { |
| opacity: 0.1; |
| position: absolute; |
| left: 50%; top: 50%; |
| margin: -128px 0 0 -128px; |
| } |
| .goofy-test-iframe { |
| position: absolute; |
| left: 0; top: 0; |
| width: 100%; height: 100%; |
| display: none; |
| } |
| .goofy-test-iframe.goofy-test-visible { |
| display: inline; |
| } |
| .goofy-test-iframe.goofy-test-fullscreen { |
| position: fixed; |
| left: 0; |
| right: 0; |
| top: 0; |
| bottom: 0; |
| z-index: 3; |
| } |
| /* Elements in the console pane. */ |
| #goofy-console { |
| padding: .5em .5em 0 .5em; |
| } |
| .goofy-internal-log { |
| font-style: italic; |
| } |
| .goofy-internal-error { |
| color: red; |
| } |
| |
| /* Dialogs. */ |
| .goofy-shutdown-dialog .modal-dialog-content { |
| font-size: 200%; |
| padding: 0.5em; |
| } |
| .goofy-shutdown-dialog .progress-bar-horizontal { |
| margin: .25em 0; |
| } |
| .goofy-shutdown-dialog p { |
| padding-bottom: 0.5em; |
| } |
| .goofy-engineering-mode-dialog .modal-dialog-userInput { |
| font-size: 200%; |
| -webkit-text-security: disc; |
| } |
| .goofy-engineering-mode-dialog br, .goofy-log-identifier-prompt br { |
| display: none; |
| } |
| .goofy-log-identifier-prompt input { |
| margin-top: 0.5em; |
| width: 100%; |
| } |
| .modal-dialog-buttons { |
| text-align: center; |
| } |
| .modal-dialog-buttons button { |
| margin: 0 .5em; |
| } |
| |
| /* Overrides for Closure components. */ |
| #goofy .goog-menu { |
| margin-left: -1em; |
| } |
| #goofy .goog-menuitem { |
| padding-left: 1em; |
| padding-right: 2em; |
| } |
| #goofy-control .goog-tree-root { |
| padding-left: .5em; |
| } |
| #goofy-control .goog-tree-children { |
| background-image: url(images/tree/I.png) !important; |
| } |
| #goofy-control .goog-tree-icon { |
| background-image: url(images/tree/tree.png); |
| } |
| #goofy-control .goog-tree-row { |
| height: 20px; |
| line-height: 20px; |
| } |
| #goofy-control .goog-tree-item-label { |
| margin-left: 2px; |
| cursor: pointer; |
| } |
| #goofy-control .goog-tree-expand-icon { |
| vertical-align: -1px; |
| } |
| /* No background for any tree items in the control pane. */ |
| #goofy-control .goog-tree-item-label { |
| background-color: transparent; |
| } |
| /* Add a background for the visible test. */ |
| #goofy-control .goofy-test-visible .goog-tree-item-label { |
| background-color: #cddff0; |
| } |
| button { |
| padding: 6px 16px; |
| } |
| .modal-dialog-bg { |
| z-index: 3; |
| } |
| .modal-dialog { |
| z-index: 4; |
| } |
| |
| /* Definitions for closure components not included in Closure. */ |
| .goog-splitpane { |
| position: absolute; |
| overflow: hidden; |
| left: 0; right: 0; top: 0; bottom: 0; |
| } |
| .goog-splitpane-handle { |
| background: #cddff0; |
| position: absolute; |
| } |
| .goog-splitpane-handle-horizontal { |
| cursor: col-resize; |
| } |
| .goog-splitpane-handle-vertical { |
| cursor: row-resize; |
| } |
| .goog-splitpane-first-container, |
| .goog-splitpane-second-container { |
| overflow: hidden; |
| position: absolute; |
| } |
| .progress-bar-vertical, |
| .progress-bar-horizontal { |
| position: relative; |
| border: 1px solid #949dad; |
| background: white; |
| overflow: hidden; |
| } |
| |
| .progress-bar-horizontal { |
| width: 100%; |
| height: 24px; |
| } |
| |
| .progress-bar-vertical { |
| width: 14px; |
| height: 200px; |
| } |
| |
| .progress-bar-thumb { |
| position: relative; |
| background: #d4e4ff; |
| overflow: hidden; |
| width: 100%; |
| height: 100%; |
| } |
| |
| /* Fonts. */ |
| @font-face { |
| font-family: 'Open Sans'; |
| font-style: normal; |
| font-weight: 400; |
| src: url('fonts/OpenSans-Latin.ttf') format('truetype'); |
| } |
| @font-face { |
| font-family: 'Open Sans'; |
| font-style: italic; |
| font-weight: 400; |
| src: url('fonts/OpenSans-Italic-Latin.ttf') format('truetype'); |
| } |
| @font-face { |
| font-family: 'Open Sans'; |
| font-style: normal; |
| font-weight: 700; |
| src: url('fonts/OpenSans-Bold-Latin.ttf') format('truetype'); |
| } |
| @font-face { |
| font-family: 'Open Sans'; |
| font-style: italic; |
| font-weight: 700; |
| src: url('fonts/OpenSans-BoldItalic-Latin.ttf') format('truetype'); |
| } |