+
+/* Profile call tree */
+
+.call-tree-cells-container {
+ /* Hack: force hardware acceleration */
+ transform: translateZ(1px);
+ overflow: auto;
+}
+
+.call-tree-cells-container[categories-hidden] .call-tree-category {
+ display: none;
+}
+
+.call-tree-header[type="duration"],
+.call-tree-cell[type="duration"],
+.call-tree-header[type="self-duration"],
+.call-tree-cell[type="self-duration"] {
+ width: 9em;
+}
+
+.call-tree-header[type="percentage"],
+.call-tree-cell[type="percentage"],
+.call-tree-header[type="self-percentage"],
+.call-tree-cell[type="self-percentage"] {
+ width: 6em;
+}
+
+.call-tree-header[type="samples"],
+.call-tree-cell[type="samples"] {
+ width: 5em;
+}
+
+.call-tree-header[type="function"],
+.call-tree-cell[type="function"] {
+ -moz-box-flex: 1;
+}
+
+.call-tree-header,
+.call-tree-cell {
+ -moz-box-align: center;
+ overflow: hidden;
+ padding: 1px 4px;
+}
+
+.call-tree-header:not(:last-child),
+.call-tree-cell:not(:last-child) {
+ -moz-border-end: 1px solid;
+}
+
+.call-tree-header,
+.call-tree-cell {
+ -moz-border-end-color: var(--theme-splitter-color);
+ color: var(--theme-body-color);
+}
+
+.call-tree-header:not(:last-child) {
+ text-align: center;
+}
+
+.call-tree-cell:not(:last-child) {
+ text-align: end;
+}
+
+.call-tree-header {
+ background-color: var(--theme-toolbar-background);
+}
+
+.call-tree-item:last-child:not(:focus) {
+ border-bottom: 1px solid var(--theme-splitter-color);
+}
+
+.call-tree-item:nth-child(2n) {
+ background-color: var(--theme-contrast-background);
+}
+
+.call-tree-item:hover {
+ background-color: var(--theme-hover-background);
+ color: var(--theme-hover-color);
+}
+
+.call-tree-item:focus {
+ background-color: var(--theme-selection-background);
+}
+
+.call-tree-item:focus label {
+ color: var(--theme-selection-color);
+}
+
+.call-tree-item:focus .call-tree-cell {
+ -moz-border-end-color: var(--theme-splitter-color);
+}
+
+.call-tree-item:not([origin="content"]) .call-tree-name,
+.call-tree-item:not([origin="content"]) .call-tree-url,
+call-tree-item:not([origin="content"]) .call-tree-line {
+ /* Style chrome and non-JS nodes differently. */
+ opacity: 0.6;
+}
+
+.call-tree-url {
+ -moz-margin-start: 4px !important;
+ cursor: pointer;
+}
+
+.call-tree-url:hover {
+ text-decoration: underline;
+}
+
+.call-tree-url {
+ color: var(--theme-text-blue);
+}
+
+.call-tree-line {
+ color: var(--theme-contrast-border);
+}
+
+.call-tree-host {
+ -moz-margin-start: 8px !important;
+ font-size: 90%;
+}
+
+.call-tree-host {
+ color: ver(--theme-body-color);
+}
+
+.call-tree-url[value=""],
+.call-tree-line[value=""],
+.call-tree-host[value=""] {
+ display: none;
+}
+
+.call-tree-zoom {
+ -moz-appearance: none;
+ background-color: transparent;
+ background-position: center;
+ background-repeat: no-repeat;
+ background-size: 11px;
+ min-width: 11px;
+ -moz-margin-start: 8px !important;
+ cursor: zoom-in;
+ opacity: 0;
+}
+
+.call-tree-zoom {
+ background-image: url(magnifying-glass.png);
+}
+
+@media (min-resolution: 1.25dppx) {
+ .call-tree-zoom {
+ background-image: url(magnifying-glass@2x.png);
+ }
+}
+
+.call-tree-item:hover .call-tree-zoom {
+ transition: opacity 0.3s ease-in;
+ opacity: 1;
+}
+
+.call-tree-item:hover .call-tree-zoom:hover {
+ opacity: 0;
+}
+
+.call-tree-category {
+ transform: scale(0.75);
+ transform-origin: center right;
+}
+
+/**
+ * JIT View
+ */
+
+#jit-optimizations-view {
+ width: 350px;
+ overflow-x: hidden;
+ overflow-y: auto;
+ min-width: 200px;
+}
+
+/* override default styles for tree widget */
+#jit-optimizations-view .tree-widget-empty-text {
+ font-size: inherit;
+ padding: 0px;
+ margin: 8px;
+}
+
+#jit-optimizations-view:not(.empty) .tree-widget-empty-text {
+ display: none;
+}
+
+#jit-optimizations-toolbar {
+ height: 18px;
+ min-height: 0px; /* override .devtools-toolbar min-height */
+}
+
+.jit-optimizations-title {
+ margin: 0px 4px;
+ font-weight: 600;
+}
+
+#jit-optimizations-raw-view {
+ font-size: 90%;
+}
+
+/* override default .tree-widget-item line-height */
+#jit-optimizations-raw-view .tree-widget-item {
+ line-height: 20px !important;
+ display: block;
+ overflow: hidden;
+}
+
+#jit-optimizations-raw-view .tree-widget-item[level="1"] {
+ font-weight: 600;
+}
+
+#jit-optimizations-view .opt-outcome::before {
+ content: "→";
+ margin: 4px 0px;
+ color: var(--theme-body-color);
+}
+#jit-optimizations-view .theme-selected .opt-outcome::before {
+ color: var(--theme-selection-color);
+}
+
+#jit-optimizations-view .tree-widget-item:not(.theme-selected) .opt-outcome[outcome=success] {
+ color: var(--theme-highlight-green);
+}
+#jit-optimizations-view .tree-widget-item:not(.theme-selected) .opt-outcome[outcome=failure] {
+ color: var(--theme-highlight-red);
+}
+#jit-optimizations-view .tree-widget-container {
+ -moz-margin-end: 0px;
+}
+#jit-optimizations-view .tree-widget-container > li,
+#jit-optimizations-view .tree-widget-children > li {
+ overflow: hidden;
+}
+
+.opt-line::before {
+ content: ":";
+ color: var(--theme-highlight-orange);
+}
+.theme-selected .opt-line::before {
+ color: var(--theme-selection-color);
+}
+.opt-line.header-line::before {
+ color: var(--theme-body-color);
+}
+#jit-optimizations-view.empty .opt-line.header-line::before {
+ display: none;
+}
+
+.opt-url {
+ -moz-margin-start: 4px !important;
+}
+.opt-url:hover {
+ text-decoration: underline;
+}
+.opt-url.debugger-link {
+ cursor: pointer;
+}
+
+#jit-optimizations-view .opt-icon::before {
+ content: "";
+ background-image: url(chrome://browser/skin/devtools/webconsole.png);
+ background-repeat: no-repeat;
+ background-size: 48px 40px;
+ margin: 5px 6px 0 0;
+ width: 8px;
+ height: 8px;
+ max-height: 8px;
+ display: inline-block;
+}
+
+#jit-optimizations-view .opt-icon[severity=warning]::before {
+ background-position: -16px -16px;
+}
+
+@media (min-resolution: 1.25dppx) {
+ #jit-optimizations-view .opt-icon::before {
+ background-image: url(chrome://browser/skin/devtools/webconsole@2x.png);
+ }
+}
+
+/**
+ * Configurable Options
+ *
+ * Elements can be tagged with a class and visibility is controlled via a preference being
+ * applied or removed.
+ */
+
+/**
+ * devtools.performance.ui.experimental
+ */
+menuitem.experimental-option::before {
+ content: "";
+ background-image: url(chrome://browser/skin/devtools/webconsole.png);
+ background-repeat: no-repeat;
+ background-size: 48px 40px;
+ margin: 2px 5px 0 0;
+ width: 8px;
+ height: 8px;
+ max-height: 8px;
+ display: inline-block;
+ background-position: -16px -16px;
+}
+@media (min-resolution: 1.25dppx) {
+ menuitem.experimental-option::before {
+ background-image: url(chrome://browser/skin/devtools/webconsole@2x.png);
+ }
+}
+#performance-options-menupopup:not(.experimental-enabled) .experimental-option,
+#performance-options-menupopup:not(.experimental-enabled) .experimental-option::before {
+ display: none;
+}