michael@0: /* vim:set ts=2 sw=2 sts=2 et: */ michael@0: /* This Source Code Form is subject to the terms of the Mozilla Public michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ michael@0: michael@0: /* Generic pane helpers */ michael@0: michael@0: .generic-toggled-side-pane { michael@0: -moz-margin-start: 0 !important; michael@0: /* Unfortunately, transitions don't work properly with locale-aware properties, michael@0: so both the left and right margins are set via js, while the start margin michael@0: is always overridden here. */ michael@0: } michael@0: michael@0: .generic-toggled-side-pane[animated] { michael@0: transition: margin 0.25s ease-in-out; michael@0: } michael@0: michael@0: /* Responsive container */ michael@0: michael@0: .devtools-responsive-container { michael@0: -moz-box-orient: horizontal; michael@0: } michael@0: michael@0: @media (max-width: 700px) { michael@0: .devtools-responsive-container { michael@0: -moz-box-orient: vertical; michael@0: } michael@0: michael@0: .devtools-responsive-container > .devtools-side-splitter { michael@0: border-width: 0; michael@0: border-top-width: 1px; michael@0: border-top-style: solid; michael@0: margin: 0; michael@0: min-height: 3px; michael@0: height: 3px; michael@0: margin-bottom: -3px; michael@0: /* In some edge case the cursor is not changed to n-resize */ michael@0: cursor: n-resize; michael@0: } michael@0: michael@0: .devtools-responsive-container > .devtools-sidebar-tabs { michael@0: min-height: 35vh; michael@0: max-height: 75vh; michael@0: } michael@0: } michael@0: michael@0: /* BreacrumbsWidget */ michael@0: michael@0: .breadcrumbs-widget-container { michael@0: -moz-margin-end: 3px; michael@0: max-height: 25px; /* Set max-height for proper sizing on linux */ michael@0: height: 25px; /* Set height to prevent starting small waiting for content */ michael@0: /* A fake 1px-shadow is included in the border-images of the michael@0: breadcrumbs-widget-items, to match toolbar-buttons style. michael@0: This negative margin compensates the extra row of pixels created michael@0: by the shadow.*/ michael@0: margin-bottom: -1px; michael@0: } michael@0: michael@0: .scrollbutton-up, michael@0: .scrollbutton-down { michael@0: -moz-appearance: none; michael@0: background: transparent; michael@0: box-shadow: none; michael@0: border: none; michael@0: list-style-image: none; michael@0: margin: 0; michael@0: padding: 0; michael@0: } michael@0: michael@0: .scrollbutton-up > .toolbarbutton-icon, michael@0: .scrollbutton-down > .toolbarbutton-icon { michael@0: -moz-appearance: none; michael@0: width: 7px; michael@0: height: 16px; michael@0: background-size: 14px 16px; michael@0: background-position: 0 center; michael@0: background-repeat: no-repeat; michael@0: background-image: url("breadcrumbs-scrollbutton.png"); michael@0: list-style-image: none; michael@0: margin: 0 8px; michael@0: padding: 0; michael@0: } michael@0: michael@0: @media (min-resolution: 2dppx) { michael@0: .scrollbutton-up > .toolbarbutton-icon, michael@0: .scrollbutton-down > .toolbarbutton-icon { michael@0: background-image: url("breadcrumbs-scrollbutton@2x.png"); michael@0: } michael@0: } michael@0: michael@0: .scrollbutton-up:not([disabled]):active:hover > .toolbarbutton-icon, michael@0: .scrollbutton-down:not([disabled]):active:hover > .toolbarbutton-icon { michael@0: background-position: -7px center; michael@0: } michael@0: michael@0: .scrollbutton-up[disabled] > .toolbarbutton-icon, michael@0: .scrollbutton-down[disabled] > .toolbarbutton-icon { michael@0: opacity: 0.5; michael@0: } michael@0: michael@0: /* Draw shadows to indicate there is more content 'behind' scrollbuttons. */ michael@0: .scrollbutton-up:-moz-locale-dir(ltr), michael@0: .scrollbutton-down:-moz-locale-dir(rtl) { michael@0: border-right: solid 1px rgba(255, 255, 255, .1); michael@0: border-left: solid 1px transparent; michael@0: box-shadow: 3px 0px 3px -3px #181d20; michael@0: } michael@0: michael@0: .scrollbutton-down:-moz-locale-dir(ltr), michael@0: .scrollbutton-up:-moz-locale-dir(rtl) { michael@0: border-right: solid 1px transparent; michael@0: border-left: solid 1px rgba(255, 255, 255, .1); michael@0: box-shadow: -3px 0px 3px -3px #181d20; michael@0: } michael@0: michael@0: .scrollbutton-up[disabled], michael@0: .scrollbutton-down[disabled] { michael@0: box-shadow: none; michael@0: border-color: transparent; michael@0: } michael@0: michael@0: .scrollbutton-up > .toolbarbutton-icon:-moz-locale-dir(rtl), michael@0: .scrollbutton-down > .toolbarbutton-icon:-moz-locale-dir(ltr) { michael@0: transform: scaleX(-1); michael@0: } michael@0: michael@0: /* The breadcrumb separator elements are used as background images with michael@0: * -moz-element, so we position them offscreen since we don't care about michael@0: * seeing the original elements. michael@0: */ michael@0: .breadcrumb-separator-container { michael@0: position: fixed; michael@0: top: -1000px; michael@0: left: -1000px; michael@0: } michael@0: michael@0: #breadcrumb-separator-before, michael@0: #breadcrumb-separator-after, michael@0: #breadcrumb-separator-normal { michael@0: width: 12px; michael@0: height: 25px; michael@0: overflow: hidden; michael@0: } michael@0: michael@0: .theme-dark #breadcrumb-separator-before, michael@0: .theme-dark #breadcrumb-separator-after:after { michael@0: background: #1d4f73; /* Select Highlight Blue */ michael@0: } michael@0: michael@0: .theme-dark #breadcrumb-separator-after, michael@0: .theme-dark #breadcrumb-separator-before:after { michael@0: background: #343c45; /* Toolbars */ michael@0: } michael@0: michael@0: .theme-light #breadcrumb-separator-before, michael@0: .theme-light #breadcrumb-separator-after:after { michael@0: background: #4c9ed9; /* Select Highlight Blue */ michael@0: } michael@0: michael@0: .theme-light #breadcrumb-separator-after, michael@0: .theme-light #breadcrumb-separator-before:after { michael@0: background: #f0f1f2; /* Toolbars */ michael@0: } michael@0: michael@0: /* This chevron arrow cannot be replicated easily in CSS, so we are using michael@0: * a background image for it (still keeping it in a separate element so michael@0: * we can handle RTL support with a CSS transform). michael@0: */ michael@0: #breadcrumb-separator-normal { michael@0: background: url(breadcrumbs-divider@2x.png) no-repeat center right; michael@0: background-size: 12px 24px; michael@0: } michael@0: michael@0: /* Fake a triangle by rotating a rectangle inside the elements */ michael@0: #breadcrumb-separator-before:after, michael@0: #breadcrumb-separator-after:after { michael@0: content: ""; michael@0: display: block; michael@0: width: 25px; michael@0: height: 25px; michael@0: transform: translateX(-18px) rotate(45deg); michael@0: -moz-box-sizing: border-box; michael@0: } michael@0: michael@0: .breadcrumbs-widget-item { michael@0: background-color: transparent; michael@0: -moz-appearance: none; michael@0: min-height: 25px; michael@0: min-width: 65px; michael@0: margin: 0; michael@0: padding: 0 8px 0 20px; michael@0: border: none; michael@0: outline: none; michael@0: color: hsl(210,30%,85%); michael@0: } michael@0: michael@0: .breadcrumbs-widget-item:not([checked]) { michael@0: background: -moz-element(#breadcrumb-separator-normal) no-repeat center left; michael@0: } michael@0: michael@0: .breadcrumbs-widget-item[checked] + .breadcrumbs-widget-item { michael@0: background: -moz-element(#breadcrumb-separator-after) no-repeat 0 0; michael@0: } michael@0: michael@0: .breadcrumbs-widget-item[checked] { michael@0: background: -moz-element(#breadcrumb-separator-before) no-repeat 0 0; michael@0: } michael@0: michael@0: .theme-dark .breadcrumbs-widget-item[checked] { michael@0: background-color: #1d4f73; /* Select Highlight Blue */ michael@0: } michael@0: michael@0: .theme-light .breadcrumbs-widget-item[checked] { michael@0: background-color: #4c9ed9; /* Select Highlight Blue */ michael@0: } michael@0: michael@0: .breadcrumbs-widget-item:first-child { michael@0: background-image: none; michael@0: } michael@0: michael@0: /* RTL support: move the images that were on the left to the right, michael@0: * and move images that were on the right to the left. michael@0: */ michael@0: .breadcrumbs-widget-item:-moz-locale-dir(rtl) { michael@0: padding: 0 20px 0 8px; michael@0: } michael@0: michael@0: .breadcrumbs-widget-item:-moz-locale-dir(rtl), michael@0: .breadcrumbs-widget-item[checked] + .breadcrumbs-widget-item:-moz-locale-dir(rtl) { michael@0: background-position: center right; michael@0: } michael@0: michael@0: #breadcrumb-separator-before:-moz-locale-dir(rtl), michael@0: #breadcrumb-separator-after:-moz-locale-dir(rtl), michael@0: #breadcrumb-separator-normal:-moz-locale-dir(rtl) { michael@0: transform: scaleX(-1); michael@0: } michael@0: michael@0: #breadcrumb-separator-before:-moz-locale-dir(rtl):after, michael@0: #breadcrumb-separator-after:-moz-locale-dir(rtl):after { michael@0: transform: translateX(-5px) rotate(45deg); michael@0: } michael@0: michael@0: .breadcrumbs-widget-item[checked] .breadcrumbs-widget-item-id, michael@0: .breadcrumbs-widget-item[checked] .breadcrumbs-widget-item-tag, michael@0: .breadcrumbs-widget-item[checked] .breadcrumbs-widget-item-pseudo-classes, michael@0: .breadcrumbs-widget-item[checked] .breadcrumbs-widget-item-classes { michael@0: color: #f5f7fa; /* Foreground (Text) - Light */ michael@0: } michael@0: michael@0: .theme-dark .breadcrumbs-widget-item { michael@0: color: #f5f7fa; /* Foreground (Text) - Light */ michael@0: } michael@0: michael@0: .theme-light .breadcrumbs-widget-item { michael@0: color: #18191a; /* Foreground (Text) - Dark */ michael@0: } michael@0: michael@0: .theme-dark .breadcrumbs-widget-item-id { michael@0: color: #b6babf; /* Foreground (Text) - Grey */ michael@0: } michael@0: michael@0: .theme-light .breadcrumbs-widget-item-id { michael@0: color: #585959; /* Foreground (Text) - Grey */ michael@0: } michael@0: michael@0: .theme-dark .breadcrumbs-widget-item-classes { michael@0: color: #a9bacb; /* Content (Text) - Light */ michael@0: } michael@0: michael@0: .theme-light .breadcrumbs-widget-item-classes { michael@0: color: #667380; /* Content (Text) - Dark Grey */ michael@0: } michael@0: michael@0: .theme-dark .breadcrumbs-widget-item-pseudo-classes { michael@0: color: #d99b28; /* Light Orange */ michael@0: } michael@0: michael@0: .theme-light .breadcrumbs-widget-item-pseudo-classes { michael@0: color: #d97e00; /* Light Orange */ michael@0: } michael@0: michael@0: .theme-dark .breadcrumbs-widget-item:not([checked]):hover label { michael@0: color: white; michael@0: } michael@0: michael@0: .theme-light .breadcrumbs-widget-item:not([checked]):hover label { michael@0: color: black; michael@0: } michael@0: michael@0: /* SimpleListWidget */ michael@0: michael@0: .simple-list-widget-container { michael@0: /* Hack: force hardware acceleration */ michael@0: transform: translateZ(1px); michael@0: } michael@0: michael@0: .theme-dark .simple-list-widget-item.selected { michael@0: background-color: #1d4f73; /* Select Highlight Blue */ michael@0: color: #f5f7fa; /* Light foreground text */ michael@0: } michael@0: michael@0: .theme-light .simple-list-widget-item.selected { michael@0: background-color: #4c9ed9; /* Select Highlight Blue */ michael@0: color: #f5f7fa; /* Light foreground text */ michael@0: } michael@0: michael@0: .theme-dark .simple-list-widget-item:not(.selected):hover { michael@0: background-color: rgba(255,255,255,.05); michael@0: } michael@0: michael@0: .theme-light .simple-list-widget-item:not(.selected):hover { michael@0: background-color: rgba(0,0,0,.05); michael@0: } michael@0: michael@0: .simple-list-widget-empty-text, michael@0: .simple-list-widget-perma-text { michael@0: padding: 4px 8px; michael@0: } michael@0: michael@0: .theme-dark .simple-list-widget-empty-text, michael@0: .theme-dark .simple-list-widget-perma-text { michael@0: color: #b6babf; /* Light foreground text */ michael@0: } michael@0: michael@0: .theme-light .simple-list-widget-empty-text, michael@0: .theme-light .simple-list-widget-perma-text { michael@0: color: #585959; /* Grey foreground text */ michael@0: } michael@0: michael@0: /* FastListWidget */ michael@0: michael@0: .fast-list-widget-container { michael@0: /* Hack: force hardware acceleration */ michael@0: transform: translateZ(1px); michael@0: } michael@0: michael@0: .fast-list-widget-empty-text { michael@0: padding: 4px 8px; michael@0: } michael@0: michael@0: .theme-dark .fast-list-widget-empty-text { michael@0: color: #b6babf; /* Light foreground text */ michael@0: } michael@0: michael@0: .theme-light .fast-list-widget-empty-text { michael@0: color: #585959; /* Grey foreground text */ michael@0: } michael@0: michael@0: /* SideMenuWidget */ michael@0: michael@0: %filter substitution michael@0: %define smw_marginDark #000 michael@0: %define smw_marginLight #aaa michael@0: %define smw_itemDarkTopBorder rgba(0,0,0,0.2) michael@0: %define smw_itemDarkBottomBorder rgba(128,128,128,0.15) michael@0: %define smw_itemLightTopBorder rgba(128,128,128,0.15) michael@0: %define smw_itemLightBottomBorder transparent michael@0: michael@0: .side-menu-widget-container { michael@0: /* Hack: force hardware acceleration */ michael@0: transform: translateZ(1px); michael@0: } michael@0: michael@0: /* SideMenuWidget container */ michael@0: michael@0: .theme-dark .side-menu-widget-container, michael@0: .theme-dark .side-menu-widget-empty-text { michael@0: background: url(background-noise-toolbar.png), #343c45; /* Toolbars */ michael@0: } michael@0: michael@0: .theme-dark .side-menu-widget-container:-moz-locale-dir(ltr), michael@0: .theme-dark .side-menu-widget-empty-text:-moz-locale-dir(ltr) { michael@0: box-shadow: inset -1px 0 0 @smw_marginDark@; michael@0: } michael@0: michael@0: .theme-dark .side-menu-widget-container:-moz-locale-dir(rtl), michael@0: .theme-dark .side-menu-widget-empty-text:-moz-locale-dir(rtl) { michael@0: box-shadow: inset 1px 0 0 @smw_marginDark@; michael@0: } michael@0: michael@0: .side-menu-widget-container:-moz-locale-dir(ltr), michael@0: .side-menu-widget-empty-text:-moz-locale-dir(ltr) { michael@0: box-shadow: inset -1px 0 0 @smw_marginLight@; michael@0: } michael@0: michael@0: .side-menu-widget-container:-moz-locale-dir(rtl), michael@0: .side-menu-widget-empty-text:-moz-locale-dir(rtl) { michael@0: box-shadow: inset 1px 0 0 @smw_marginLight@; michael@0: } michael@0: michael@0: .side-menu-widget-group { michael@0: /* To allow visibility of the dark margin shadow. */ michael@0: -moz-margin-end: 1px; michael@0: } michael@0: michael@0: .side-menu-widget-container[with-arrows=true] .side-menu-widget-item { michael@0: /* To compensate for the arrow image's dark margin. */ michael@0: -moz-margin-end: -1px; michael@0: } michael@0: michael@0: /* SideMenuWidget groups */ michael@0: michael@0: .side-menu-widget-group-title { michael@0: padding: 4px; michael@0: } michael@0: michael@0: .theme-dark .side-menu-widget-group-title { michael@0: background-color: #252c33; /* Tab toolbar */ michael@0: color: #a9bacb; /* Light content text */ michael@0: } michael@0: michael@0: .theme-light .side-menu-widget-group-title { michael@0: background-color: #ebeced; /* Tab toolbar */ michael@0: color: #667380; /* Dark grey content text */ michael@0: } michael@0: michael@0: /* SideMenuWidget items */ michael@0: michael@0: .side-menu-widget-item { michael@0: /* To compensate for the top and bottom borders */ michael@0: margin-top: -1px; michael@0: margin-bottom: -1px; michael@0: background-clip: padding-box; michael@0: } michael@0: michael@0: .theme-dark .side-menu-widget-item { michael@0: border-top: 1px solid @smw_itemDarkTopBorder@; michael@0: border-bottom: 1px solid @smw_itemDarkBottomBorder@; michael@0: color: #f5f7fa; /* Light foreground text */ michael@0: } michael@0: michael@0: .theme-dark .side-menu-widget-item:last-of-type { michael@0: box-shadow: inset 0 -1px 0 @smw_itemDarkTopBorder@; michael@0: } michael@0: michael@0: .theme-light .side-menu-widget-item { michael@0: border-top: 1px solid @smw_itemLightTopBorder@; michael@0: border-bottom: 1px solid @smw_itemLightBottomBorder@; michael@0: color: #18191a; /* Dark foreground text */ michael@0: } michael@0: michael@0: .theme-light .side-menu-widget-item:last-of-type { michael@0: box-shadow: inset 0 -1px 0 @smw_itemLightTopBorder@; michael@0: } michael@0: michael@0: .theme-dark .side-menu-widget-item.selected { michael@0: background-color: #1d4f73; /* Select Highlight Blue */ michael@0: color: #f5f7fa; /* Light foreground text */ michael@0: } michael@0: michael@0: .theme-light .side-menu-widget-item.selected { michael@0: background-color: #4c9ed9; /* Select Highlight Blue */ michael@0: color: #f5f7fa; /* Light foreground text */ michael@0: } michael@0: michael@0: .side-menu-widget-item-arrow { michael@0: -moz-margin-start: -7px; michael@0: width: 7px; /* The image's width is 7 pixels */ michael@0: /* Cover the border of the side-menu-widget-item */ michael@0: margin-top: -1px; michael@0: margin-bottom: -1px; michael@0: } michael@0: michael@0: .side-menu-widget-item.selected > .side-menu-widget-item-arrow { michael@0: background-size: auto, 1px 100%; michael@0: background-repeat: no-repeat; michael@0: } michael@0: michael@0: .side-menu-widget-item.selected > .side-menu-widget-item-arrow:-moz-locale-dir(ltr) { michael@0: background-position: center right, top right; michael@0: } michael@0: michael@0: .side-menu-widget-item.selected > .side-menu-widget-item-arrow:-moz-locale-dir(rtl) { michael@0: background-position: center left, top left; michael@0: } michael@0: michael@0: .theme-dark .side-menu-widget-item.selected > .side-menu-widget-item-arrow:-moz-locale-dir(ltr) { michael@0: background-image: url(itemArrow-dark-ltr.png), linear-gradient(to right, @smw_marginDark@, @smw_marginDark@); michael@0: } michael@0: michael@0: .theme-dark .side-menu-widget-item.selected > .side-menu-widget-item-arrow:-moz-locale-dir(rtl) { michael@0: background-image: url(itemArrow-dark-rtl.png), linear-gradient(to right, @smw_marginDark@, @smw_marginDark@); michael@0: } michael@0: michael@0: .theme-light .side-menu-widget-item.selected > .side-menu-widget-item-arrow:-moz-locale-dir(ltr) { michael@0: background-image: url(itemArrow-ltr.svg), linear-gradient(to right, @smw_marginLight@, @smw_marginLight@); michael@0: } michael@0: michael@0: .theme-light .side-menu-widget-item.selected > .side-menu-widget-item-arrow:-moz-locale-dir(rtl) { michael@0: background-image: url(itemArrow-rtl.svg), linear-gradient(to right, @smw_marginLight@, @smw_marginLight@); michael@0: } michael@0: michael@0: /* SideMenuWidget items contents */ michael@0: michael@0: .side-menu-widget-item-contents { michael@0: padding: 4px; michael@0: /* To avoid having content overlapping the arrow image. */ michael@0: -moz-padding-end: 8px; michael@0: } michael@0: michael@0: .side-menu-widget-item-other { michael@0: /* To avoid having content overlapping the arrow image. */ michael@0: -moz-padding-end: 8px; michael@0: /* To compensate for the .side-menu-widget-item-contents padding. */ michael@0: -moz-margin-start: -4px; michael@0: -moz-margin-end: -8px; michael@0: } michael@0: michael@0: .side-menu-widget-item-other:first-of-type { michael@0: margin-top: 4px; michael@0: } michael@0: michael@0: .side-menu-widget-item-other:last-of-type { michael@0: margin-bottom: -4px; michael@0: } michael@0: michael@0: .theme-dark .side-menu-widget-item-other { michael@0: background: url(background-noise-toolbar.png), rgba(0,0,0,.1); michael@0: } michael@0: michael@0: .theme-light .side-menu-widget-item-other { michael@0: background: url(background-noise-toolbar.png), rgba(128,128,128,.1); michael@0: } michael@0: michael@0: .theme-dark .side-menu-widget-item.selected .side-menu-widget-item-other { michael@0: background-color: rgba(0,0,0,.2); /* Darken the selection by 20% */ michael@0: color: #f5f7fa; /* Light foreground text */ michael@0: } michael@0: michael@0: .theme-light .side-menu-widget-item.selected .side-menu-widget-item-other { michael@0: background-color: rgba(255,255,255,.8); /* Lighten the selection by 20% */ michael@0: color: #18191a; /* Dark foreground text */ michael@0: } michael@0: michael@0: .theme-dark .side-menu-widget-item.selected .side-menu-widget-item-other.selected { michael@0: background-color: transparent; michael@0: color: #f5f7fa; /* Light foreground text */ michael@0: } michael@0: michael@0: .theme-light .side-menu-widget-item.selected .side-menu-widget-item-other.selected { michael@0: background-color: transparent; michael@0: color: #f5f7fa; /* Light foreground text */ michael@0: } michael@0: michael@0: /* SideMenuWidget checkboxes */ michael@0: michael@0: .side-menu-widget-group-checkbox { michael@0: margin: 0; michael@0: -moz-margin-end: 4px; michael@0: } michael@0: michael@0: .side-menu-widget-item-checkbox { michael@0: margin: 0; michael@0: -moz-margin-start: 4px; michael@0: } michael@0: michael@0: /* SideMenuWidget misc */ michael@0: michael@0: .side-menu-widget-empty-text { michael@0: padding: 4px 8px; michael@0: } michael@0: michael@0: .theme-dark .side-menu-widget-empty-text { michael@0: background: url(background-noise-toolbar.png), #343c45; /* Toolbars */ michael@0: color: #b6babf; /* Foreground (Text) - Grey */ michael@0: } michael@0: michael@0: .theme-light .side-menu-widget-empty-text { michael@0: background: #f7f7f7; /* Toolbars */ michael@0: color: #585959; /* Grey foreground text */ michael@0: } michael@0: michael@0: /* VariablesView */ michael@0: michael@0: .variables-view-container { michael@0: /* Hack: force hardware acceleration */ michael@0: transform: translateZ(1px); michael@0: } michael@0: michael@0: .variables-view-empty-notice { michael@0: padding: 2px; michael@0: } michael@0: michael@0: .theme-dark .variables-view-empty-notice { michael@0: color: #b6babf; /* Foreground (Text) - Grey */ michael@0: } michael@0: michael@0: .theme-light .variables-view-empty-notice { michael@0: color: #585959; /* Grey foreground text */ michael@0: } michael@0: michael@0: .theme-dark .variables-view-scope:focus > .title, michael@0: .theme-dark .variable-or-property:focus > .title { michael@0: background-color: #1d4f73; /* Selection colors */ michael@0: color: #f5f7fa; michael@0: } michael@0: michael@0: .theme-light .variables-view-scope:focus > .title, michael@0: .theme-light .variable-or-property:focus > .title { michael@0: background-color: #4c9ed9; /* Selection colors */ michael@0: color: #f5f7fa; michael@0: } michael@0: michael@0: .variables-view-scope > .title { michael@0: border-top-width: 1px; michael@0: border-top-style: solid; michael@0: margin-top: -1px; michael@0: } michael@0: michael@0: /* Generic variables traits */ michael@0: michael@0: .variables-view-variable:not(:last-child) { michael@0: border-bottom: 1px solid rgba(128, 128, 128, .15); michael@0: } michael@0: michael@0: .variables-view-variable > .title > .name { michael@0: font-weight: 600; michael@0: } michael@0: michael@0: /* Generic variables *and* properties traits */ michael@0: michael@0: .variable-or-property:focus > .title > label { michael@0: color: inherit !important; michael@0: } michael@0: michael@0: .variable-or-property > .title > .arrow { michael@0: -moz-margin-start: 3px; michael@0: } michael@0: michael@0: .variable-or-property:not([untitled]) > .variables-view-element-details { michael@0: -moz-margin-start: 7px; michael@0: } michael@0: michael@0: /* Traits applied when variables or properties are changed or overridden */ michael@0: michael@0: .variable-or-property:not([overridden]) { michael@0: transition: background 1s ease-in-out; michael@0: } michael@0: michael@0: .variable-or-property:not([overridden])[changed] { michael@0: transition-duration: .4s; michael@0: } michael@0: michael@0: .variable-or-property[overridden] { michael@0: background: rgba(128,128,128,0.05); michael@0: } michael@0: michael@0: .variable-or-property[overridden] .title > label { michael@0: /* Cross out the title for this variable and all child properties. */ michael@0: font-style: italic; michael@0: text-decoration: line-through; michael@0: border-bottom: none !important; michael@0: color: rgba(128,128,128,0.9); michael@0: opacity: 0.7; michael@0: } michael@0: michael@0: /* Traits applied when variables or properties are editable */ michael@0: michael@0: .variable-or-property[editable] > .title > .value { michael@0: cursor: text; michael@0: } michael@0: michael@0: .variable-or-property[overridden] .title > .value { michael@0: /* Disallow editing this variable and all child properties. */ michael@0: pointer-events: none; michael@0: } michael@0: michael@0: /* Custom configurable/enumerable/writable or frozen/sealed/extensible michael@0: * variables and properties */ michael@0: michael@0: .variable-or-property[non-enumerable]:not([self]):not([pseudo-item]) > .title > .name { michael@0: opacity: 0.6; michael@0: } michael@0: michael@0: .variable-or-property[non-configurable]:not([pseudo-item]) > .title > .name { michael@0: border-bottom: 1px dashed #99f; michael@0: } michael@0: michael@0: .variable-or-property[non-writable]:not([pseudo-item]) > .title > .name { michael@0: border-bottom: 1px dashed #f99; michael@0: } michael@0: michael@0: .variable-or-property[safe-getter]:not([pseudo-item]) > .title > .name { michael@0: border-bottom: 1px dashed #8b0; michael@0: } michael@0: michael@0: .variable-or-property-non-writable-icon { michael@0: background: url("chrome://browser/skin/devtools/vview-lock.png") no-repeat; michael@0: width: 16px; michael@0: height: 16px; michael@0: } michael@0: michael@0: /*@media (min-resolution: 2dppx) { michael@0: .variable-or-property-non-writable-icon { michael@0: background-image: url("chrome://browser/skin/identity-icons-https@2x.png"); michael@0: background-size: 32px; michael@0: } michael@0: } michael@0: */ michael@0: .variable-or-property-frozen-label, michael@0: .variable-or-property-sealed-label, michael@0: .variable-or-property-non-extensible-label { michael@0: -moz-padding-end: 4px; michael@0: } michael@0: michael@0: .variable-or-property:not(:focus) > .title > .variable-or-property-frozen-label, michael@0: .variable-or-property:not(:focus) > .title > .variable-or-property-sealed-label, michael@0: .variable-or-property:not(:focus) > .title > .variable-or-property-non-extensible-label { michael@0: color: #666; michael@0: } michael@0: michael@0: /* Aligned values */ michael@0: michael@0: .variables-view-container[aligned-values] .title > .separator { michael@0: -moz-box-flex: 1; michael@0: } michael@0: michael@0: .variables-view-container[aligned-values] .title > .value { michael@0: -moz-box-flex: 0; michael@0: width: 70vw; michael@0: } michael@0: michael@0: .variables-view-container[aligned-values] .title > .element-value-input { michael@0: width: calc(70vw - 10px); michael@0: } michael@0: michael@0: /* Actions first */ michael@0: michael@0: .variables-view-container[actions-first] .variables-view-delete, michael@0: .variables-view-container[actions-first] .variables-view-open-inspector, michael@0: .variables-view-container[actions-first] .variables-view-add-property { michael@0: -moz-box-ordinal-group: 0; michael@0: } michael@0: michael@0: .variables-view-container[actions-first] [invisible] { michael@0: visibility: hidden; michael@0: } michael@0: michael@0: /* Variables and properties tooltips */ michael@0: michael@0: .variable-or-property > tooltip > label { michael@0: margin: 0 2px 0 2px; michael@0: } michael@0: michael@0: .variable-or-property[non-enumerable] > tooltip > label.enumerable, michael@0: .variable-or-property[non-configurable] > tooltip > label.configurable, michael@0: .variable-or-property[non-writable] > tooltip > label.writable, michael@0: .variable-or-property[non-extensible] > tooltip > label.extensible { michael@0: color: #800; michael@0: text-decoration: line-through; michael@0: } michael@0: michael@0: .variable-or-property[overridden] > tooltip > label.overridden { michael@0: -moz-padding-start: 4px; michael@0: -moz-border-start: 1px dotted #000; michael@0: } michael@0: michael@0: .variable-or-property[safe-getter] > tooltip > label.WebIDL { michael@0: -moz-padding-start: 4px; michael@0: -moz-border-start: 1px dotted #000; michael@0: color: #080; michael@0: } michael@0: michael@0: /* Variables and properties editing */ michael@0: michael@0: .variables-view-delete { michael@0: list-style-image: url("chrome://browser/skin/devtools/vview-delete.png"); michael@0: -moz-image-region: rect(0,16px,16px,0); michael@0: } michael@0: michael@0: .variables-view-delete:hover { michael@0: -moz-image-region: rect(0,48px,16px,32px); michael@0: } michael@0: michael@0: .variables-view-delete:active { michael@0: -moz-image-region: rect(0,32px,16px,16px); michael@0: } michael@0: michael@0: .variable-or-property:focus .variables-view-delete { michael@0: -moz-image-region: rect(0,16px,16px,0); michael@0: } michael@0: michael@0: .variables-view-edit { michael@0: list-style-image: url("chrome://browser/skin/devtools/vview-edit.png"); michael@0: -moz-image-region: rect(0,16px,16px,0); michael@0: cursor: pointer; michael@0: padding-left: 2px; michael@0: } michael@0: michael@0: .variables-view-edit:hover { michael@0: -moz-image-region: rect(0,48px,16px,32px); michael@0: } michael@0: michael@0: .variables-view-edit:active { michael@0: -moz-image-region: rect(0,32px,16px,16px); michael@0: } michael@0: michael@0: .variable-or-property:focus .variables-view-edit { michael@0: -moz-image-region: rect(0,16px,16px,0); michael@0: } michael@0: michael@0: .variables-view-open-inspector { michael@0: list-style-image: url("chrome://browser/skin/devtools/vview-open-inspector.png"); michael@0: -moz-image-region: rect(0,16px,16px,0); michael@0: cursor: pointer; michael@0: } michael@0: michael@0: .variables-view-open-inspector:hover { michael@0: -moz-image-region: rect(0,48px,16px,32px); michael@0: } michael@0: michael@0: .variables-view-open-inspector:active { michael@0: -moz-image-region: rect(0,32px,16px,16px); michael@0: } michael@0: michael@0: .variable-or-property:focus .variables-view-open-inspector { michael@0: -moz-image-region: rect(0,16px,16px,0); michael@0: } michael@0: michael@0: .variables-view-throbber { michael@0: background: url("chrome://global/skin/icons/loading_16.png") center no-repeat; michael@0: width: 16px; michael@0: height: 16px; michael@0: } michael@0: michael@0: .element-value-input { michael@0: -moz-margin-start: -2px !important; michael@0: -moz-margin-end: 2px !important; michael@0: } michael@0: michael@0: .element-name-input { michael@0: -moz-margin-start: -2px !important; michael@0: -moz-margin-end: 2px !important; michael@0: font-weight: 600; michael@0: } michael@0: michael@0: .element-value-input, michael@0: .element-name-input { michael@0: border: 1px solid rgba(128, 128, 128, .5) !important; michael@0: border-radius: 0; michael@0: color: inherit; michael@0: } michael@0: michael@0: /* Variables and properties searching */ michael@0: michael@0: .variables-view-searchinput { michael@0: min-height: 24px; michael@0: } michael@0: michael@0: .variable-or-property[unmatched] { michael@0: border: none; michael@0: margin: 0; michael@0: } michael@0: michael@0: /* Expand/collapse arrow */ michael@0: michael@0: .arrow { michael@0: -moz-appearance: treetwisty; michael@0: width: 20px; michael@0: height: 20px; michael@0: } michael@0: michael@0: .arrow[open] { michael@0: -moz-appearance: treetwistyopen; michael@0: } michael@0: michael@0: .arrow[invisible] { michael@0: visibility: hidden; michael@0: } michael@0: michael@0: /* Charts */ michael@0: michael@0: .generic-chart-container { michael@0: /* Hack: force hardware acceleration */ michael@0: transform: translateZ(1px); michael@0: } michael@0: michael@0: .theme-dark .generic-chart-container { michael@0: color: #f5f7fa; /* Light foreground text */ michael@0: } michael@0: michael@0: .theme-light .generic-chart-container { michael@0: color: #585959; /* Grey foreground text */ michael@0: } michael@0: michael@0: .theme-dark .chart-colored-blob { michael@0: fill: #a9bacb; /* Light content text */ michael@0: background: #a9bacb; michael@0: } michael@0: michael@0: .theme-light .chart-colored-blob { michael@0: fill: #8fa1b2; /* Grey content text */ michael@0: background: #8fa1b2; michael@0: } michael@0: michael@0: /* Charts: Pie */ michael@0: michael@0: .pie-chart-slice { michael@0: stroke-width: 1px; michael@0: cursor: pointer; michael@0: } michael@0: michael@0: .theme-dark .pie-chart-slice { michael@0: stroke: rgba(0,0,0,0.2); michael@0: } michael@0: michael@0: .theme-light .pie-chart-slice { michael@0: stroke: rgba(255,255,255,0.8); michael@0: } michael@0: michael@0: .theme-dark .pie-chart-slice[largest] { michael@0: stroke-width: 2px; michael@0: stroke: #fff; michael@0: } michael@0: michael@0: .theme-light .pie-chart-slice[largest] { michael@0: stroke: #000; michael@0: } michael@0: michael@0: .pie-chart-label { michael@0: text-anchor: middle; michael@0: dominant-baseline: middle; michael@0: pointer-events: none; michael@0: } michael@0: michael@0: .theme-dark .pie-chart-label { michael@0: fill: #000; michael@0: } michael@0: michael@0: .theme-light .pie-chart-label { michael@0: fill: #fff; michael@0: } michael@0: michael@0: .pie-chart-container[slices="1"] > .pie-chart-slice { michael@0: stroke-width: 0px; michael@0: } michael@0: michael@0: .pie-chart-slice, michael@0: .pie-chart-label { michael@0: transition: all 0.1s ease-out; michael@0: } michael@0: michael@0: .pie-chart-slice:not(:hover):not([focused]), michael@0: .pie-chart-slice:not(:hover):not([focused]) + .pie-chart-label { michael@0: transform: none !important; michael@0: } michael@0: michael@0: /* Charts: Table */ michael@0: michael@0: .table-chart-title { michael@0: padding-bottom: 10px; michael@0: font-size: 120%; michael@0: font-weight: 600; michael@0: } michael@0: michael@0: .table-chart-row { michael@0: margin-top: 1px; michael@0: cursor: pointer; michael@0: } michael@0: michael@0: .table-chart-grid:hover > .table-chart-row { michael@0: transition: opacity 0.1s ease-in-out; michael@0: } michael@0: michael@0: .table-chart-grid:not(:hover) > .table-chart-row { michael@0: transition: opacity 0.2s ease-in-out; michael@0: } michael@0: michael@0: .generic-chart-container:hover > .table-chart-grid:hover > .table-chart-row:not(:hover), michael@0: .generic-chart-container:hover ~ .table-chart-container > .table-chart-grid > .table-chart-row:not([focused]) { michael@0: opacity: 0.4; michael@0: } michael@0: michael@0: .table-chart-row-box { michael@0: width: 8px; michael@0: height: 1.5em; michael@0: -moz-margin-end: 10px; michael@0: } michael@0: michael@0: .table-chart-row-label { michael@0: width: 8em; michael@0: -moz-padding-end: 6px; michael@0: cursor: inherit; michael@0: } michael@0: michael@0: .table-chart-totals { michael@0: margin-top: 8px; michael@0: padding-top: 6px; michael@0: } michael@0: michael@0: .theme-dark .table-chart-totals { michael@0: border-top: 1px solid #b6babf; /* Grey foreground text */ michael@0: } michael@0: michael@0: .theme-light .table-chart-totals { michael@0: border-top: 1px solid #585959; /* Grey foreground text */ michael@0: } michael@0: michael@0: .table-chart-summary-label { michael@0: font-weight: 600; michael@0: padding: 1px 0px; michael@0: } michael@0: michael@0: .theme-dark .table-chart-summary-label { michael@0: color: #f5f7fa; /* Light foreground text */ michael@0: } michael@0: michael@0: .theme-light .table-chart-summary-label { michael@0: color: #18191a; /* Dark foreground text */ michael@0: } michael@0: michael@0: %include ../../shared/devtools/app-manager/manifest-editor.inc.css