make networking pane work nicely in current nightlies (not completely sure if we...
[themes.git] / LCARStrek / devtools / netmonitor.css
index 566a723095e8b0fbf10f1487ed31d32882551043..81ff32a3163b202e1d4d540aec3b1e0d421c5a07 100644 (file)
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
+@import url("resource://devtools/client/shared/components/tree/tree-view.css");
+@import url(variables.css); /* No idea why this is needed but we get error messages without it */
+
 window {
   padding: 0;
 }
 
-/* === BEGIN netmonitor.inc.css === */
+#toolbar-labels {
+  overflow: hidden;
+  display: flex;
+  flex: auto;
+}
+
+.devtools-toolbar-container {
+  display: flex;
+  justify-content: space-between;
+}
+
+.devtools-toolbar-group {
+  display: flex;
+  flex: 0 0 auto;
+  flex-wrap: nowrap;
+  align-items: stretch;
+}
+
+/**
+ * Collapsed details pane needs to be truly hidden to prevent both accessibility
+ * tools and keyboard from accessing its contents.
+ */
+#details-pane.pane-collapsed {
+  visibility: hidden;
+}
+
+#details-pane-toggle[disabled] {
+  display: none;
+}
+
+#custom-pane {
+  overflow: auto;
+}
+
+#response-content-image-box {
+  overflow: auto;
+}
+
+#network-statistics-charts {
+  overflow: auto;
+}
+
+.cropped-textbox .textbox-input {
+  /* workaround for textbox not supporting the @crop attribute */
+  text-overflow: ellipsis;
+}
+
+/* Responsive sidebar */
+@media (max-width: 700px) {
+  #toolbar-spacer,
+  #details-pane-toggle,
+  #details-pane.pane-collapsed,
+  .requests-menu-waterfall,
+  #requests-menu-network-summary-button > .summary-info-text {
+    display: none;
+  }
+}
 
 :root.theme-dark,
 :root.theme-light {
   --table-splitter-color: #A09090;
   --table-zebra-background: rgba(255,159,0,0.1);
+
+  --timing-blocked-color: #FF0000;
+  --timing-dns-color: #E7ADE7; /* pink */
+  --timing-connect-color: #FF9F00; /* orange */
+  --timing-send-color: #FFCF00; /* light blue */
+  --timing-wait-color: #9C9CFF; /* blue grey */
+  --timing-receive-color: #A09090; /* green */
+
+  --sort-ascending-image: url(chrome://devtools/skin/images/sort-arrows.svg#ascending);
+  --sort-descending-image: url(chrome://devtools/skin/images/sort-arrows.svg#descending);
+}
+
+#network-table {
+  display: -moz-box;
+  -moz-box-orient: vertical;
+  -moz-box-flex: 1;
+  overflow: hidden;
+}
+
+.request-list-container {
+  display: -moz-box;
+  -moz-box-orient: vertical;
+  -moz-box-flex: 1;
 }
 
-#requests-menu-empty-notice {
+#requests-menu-empty-notice,
+.request-list-empty-notice {
   margin: 0;
   padding: 12px;
   font-size: 120%;
@@ -28,8 +111,20 @@ window {
 #requests-menu-perf-notice-button {
   min-width: 30px;
   min-height: 26px;
-  margin: 0;
   list-style-image: url("images/profiler-stopwatch.svg");
+  margin: 0 5px;
+  vertical-align: middle;
+}
+
+#requests-menu-perf-notice-button::before {
+  background-image: url("images/profiler-stopwatch.svg");
+}
+
+/* Make sure the icon is visible on Linux (to overwrite a rule
+  in xul.css that hides the icon if there is no label.
+  See also bug 1278050. */
+#requests-menu-perf-notice-button .button-icon {
+  display: block;
 }
 
 #requests-menu-perf-notice-button .button-text {
@@ -37,13 +132,26 @@ window {
 }
 
 #requests-menu-reload-notice-button {
+  font-size: inherit;
   min-height: 26px;
-  margin: 0;
+  padding-left: 10px;
+  padding-right: 10px;
+  margin: 0 5px;
 }
 
 /* Network requests table */
 
 #requests-menu-toolbar {
+  background: var(--theme-capped-toolbar-background);
+}
+
+#requests-menu-toolbar::before, #requests-menu-toolbar::after {
+  display: none; /* Remove caps from this toolbar (and above background rule make the background fill it completely) */
+}
+
+#requests-menu-filter-buttons {
+  display: flex;
+  flex-wrap: nowrap;
 }
 
 #requests-menu-toolbar > .toolbar-box > .toolbar-startcap,
@@ -51,18 +159,47 @@ window {
   display: none;
 }
 
+.requests-menu-contents {
+  display: -moz-box;
+  -moz-box-orient: vertical;
+  -moz-box-flex: 1;
+  overflow-x: hidden;
+  overflow-y: auto;
+
+  --timings-scale: 1;
+  --timings-rev-scale: 1;
+}
+
 .requests-menu-subitem {
-  padding: 4px;
+  display: flex;
+  flex: none;
+  box-sizing: border-box;
+  align-items: center;
+  padding: 3px;
+}
+
+.subitem-label {
+  white-space: nowrap;
+  overflow: hidden;
+  text-overflow: ellipsis;
 }
 
-.requests-menu-header:not(:last-child):-moz-locale-dir(rtl),
-.requests-menu-subitem:not(:last-child):-moz-locale-dir(rtl) {
+.requests-menu-header {
+  display: flex;
+  flex: none;
 }
 
-.requests-menu-header-button,
-#requests-menu-status-button {
+#requests-menu-status-button,
+.requests-menu-header-button {
+  display: flex;
+  align-items: center;
+  flex: auto;
+  -moz-appearance: none;
   background-color: transparent;
-  border-image: linear-gradient(transparent 15%, var(--theme-splitter-color) 15%, var(--theme-splitter-color) 85%, transparent 85%) 1 1;
+  border-image: linear-gradient(transparent 15%,
+                                var(--theme-toolbar-background) 15%,
+                                var(--theme-toolbar-background) 85%,
+                                transparent 85%) 1 1;
   border-style: solid;
   border-width: 0;
   border-inline-start-width: 1px;
@@ -70,13 +207,20 @@ window {
   min-width: 1px;
   min-height: 24px;
   margin: 0;
-  padding-bottom: 2px;
-  padding-inline-start: 13px;
   padding-top: 2px;
+  padding-bottom: 2px;
+  padding-inline-start: 16px;
+  padding-inline-end: 0;
   text-align: center;
+/*  color: inherit;*/
   font-weight: inherit !important;
 }
 
+.requests-menu-header-button::-moz-focus-inner {
+  border: 0;
+  padding: 0;
+}
+
 .requests-menu-header:first-child .requests-menu-header-button {
   border-width: 0;
 }
@@ -91,28 +235,44 @@ window {
   color: var(--theme-active-color);
 }
 
+.requests-menu-header-button > .button-text {
+  flex: auto;
+  white-space: nowrap;
+  overflow: hidden;
+  text-overflow: ellipsis;
+}
+
 .requests-menu-header-button > .button-box > .button-icon,
 #requests-menu-waterfall-image {
   display: -moz-box;
+  -moz-box-ordinal-group: 2;
+}
+.requests-menu-header-button > .button-box > .button-icon,
+#requests-menu-waterfall-image,
+.requests-menu-header-button > .button-icon {
+  flex: none;
   height: 4px;
+  margin-inline-start: 3px;
   margin-inline-end: 6px;
-  -moz-box-ordinal-group: 2;
   width: 7px;
 }
 
-.requests-menu-header-button[sorted] > .button-box > .button-icon,
-.requests-menu-header-button[sorted] #requests-menu-waterfall-image {
-  list-style-image: url('chrome://devtools/skin/images/sort-arrows.svg');
-}
-
 .requests-menu-header-button[sorted=ascending] > .button-box > .button-icon,
 .requests-menu-header-button[sorted=ascending] #requests-menu-waterfall-image {
-  -moz-image-region: rect(4px, 19px, 7px, 14px);
+  list-style-image: var(--sort-ascending-image);
+}
+
+.requests-menu-header-button[data-sorted=ascending] > .button-icon {
+  background-image: var(--sort-ascending-image);
 }
 
 .requests-menu-header-button[sorted=descending] > .button-box > .button-icon,
 .requests-menu-header-button[sorted=descending] #requests-menu-waterfall-image {
-  -moz-image-region: rect(5px, 8px, 8px, 3px);
+  list-style-image: var(--sort-descending-image);
+}
+
+.requests-menu-header-button[data-sorted=descending] > .button-icon {
+  background-image: var(--sort-descending-image);
 }
 
 .requests-menu-header-button > .button-box > .button-text,
@@ -120,13 +280,22 @@ window {
   -moz-box-flex: 1;
 }
 
-.requests-menu-header-button[sorted]:not(:hover) {
+.requests-menu-waterfall-label-wrapper {
+  display: flex;
+}
+
+.requests-menu-header-button[sorted],
+.requests-menu-header-button[sorted]:hover,
+.requests-menu-header-button[data-sorted],
+.requests-menu-header-button[data-sorted]:hover {
   background-color: var(--theme-selection-background);
   color: var(--theme-selection-color);
 }
 
 .requests-menu-header-button[sorted],
-.requests-menu-header[active] + .requests-menu-header .requests-menu-header-button {
+.requests-menu-header[active] + .requests-menu-header .requests-menu-header-button,
+.requests-menu-header-button[data-sorted],
+.requests-menu-header[data-active] + .requests-menu-header .requests-menu-header-button {
   border-image: linear-gradient(var(--theme-splitter-color), var(--theme-splitter-color)) 1 1;
 }
 
@@ -158,31 +327,25 @@ window {
 }
 
 .requests-menu-icon {
-  background: #FFCF00;
-  width: calc(1em + 4px);
-  height: calc(1em + 4px);
-  margin: -4px 0px;
-  -moz-margin-end: 4px;
+  background: transparent;
+  width: 15px;
+  height: 15px;
+  margin-inline-end: 4px;
 }
 
 .requests-menu-icon {
   outline: 1px solid var(--table-splitter-color);
 }
 
-.requests-menu-file {
-  text-align: start;
-}
-
 .requests-menu-security-and-domain {
   width: 14vw;
-  min-width: 10em;
 }
 
 .requests-security-state-icon {
+  flex: none;
   width: 16px;
   height: 16px;
-  -moz-margin-end: 4px;
-  cursor: pointer;
+  margin-inline-end: 4px;
 }
 
 .security-state-insecure {
@@ -210,52 +373,89 @@ window {
   max-width: 6em;
   text-align: center;
   width: 8vw;
+  justify-content: center;
+}
+
+.requests-menu-transferred {
+  max-width: 8em;
+  width: 8vw;
+  justify-content: center;
+}
+
+.request-list-item.selected .requests-menu-transferred.theme-comment {
+  color: var(--theme-selection-color);
+}
+
+.requests-menu-cause {
+  max-width: 8em;
+  width: 8vw;
+}
+
+.requests-menu-cause-stack {
+  background-color: var(--theme-body-color-alt);
+  color: var(--theme-body-background);
+  font-size: 8px;
+  font-weight: bold;
+  line-height: 10px;
+  border-radius: 3px;
+  padding: 0 2px;
+  margin: 0;
+  margin-inline-end: 3px;
+  -moz-user-select: none;
 }
 
 .requests-menu-transferred {
   max-width: 8em;
   text-align: center;
-  width: 4vw;
+  width: 8vw;
 }
 
 /* Network requests table: status codes */
 
 .requests-menu-status-code {
-  -moz-margin-start: 3px !important;
+  margin-inline-start: 3px !important;
   width: 3em;
-  -moz-margin-end: -3em !important;
+  margin-inline-end: -3em !important;
 }
 
 .requests-menu-status-icon {
   background-color: #A09090;
   height: 10px;
   width: 10px;
-  -moz-margin-start: 5px;
-  -moz-margin-end: 5px;
+  margin-inline-start: 5px;
+  margin-inline-end: 5px;
   border-radius: 20px;
   border: 1px solid #000000;
   transition: background-color 0.5s ease-in-out;
 }
 
-.requests-menu-status-icon:not([code]) {
+.request-list-item.selected .requests-menu-status-icon {
+}
+
+.requests-menu-status-icon:not([code]),
+.requests-menu-status-icon:not([data-code]) {
   background-color: var(--theme-content-color2);
 }
 
-.requests-menu-status-icon[code="cached"] {
+.requests-menu-status-icon[code="cached"],
+.requests-menu-status-icon[data-code="cached"] {
   border: 2px solid var(--theme-content-color2);
-  background-color: transparent;  
+  background-color: transparent;
 }
 
-.requests-menu-status-icon[code^="1"] {
+.requests-menu-status-icon[code^="1"],
+.requests-menu-status-icon[data-code^="1"] {
   background-color: var(--theme-highlight-blue);
 }
 
-.requests-menu-status-icon[code^="2"] {
+.requests-menu-status-icon[code^="2"],
+.requests-menu-status-icon[data-code^="2"] {
   background-color: var(--theme-highlight-green);
 }
 
 /* 3xx are triangles */
-.requests-menu-status-icon[code^="3"] {
+.requests-menu-status-icon[code^="3"],
+.requests-menu-status-icon[data-code^="3"] {
   background-color: transparent;
   width: 0;
   height: 0;
@@ -266,12 +466,14 @@ window {
 }
 
 /* 4xx and 5xx are squares - error codes */
-.requests-menu-status-icon[code^="4"] {
+.requests-menu-status-icon[code^="4"],
+.requests-menu-status-icon[data-code^="4"] {
   background-color: var(--theme-highlight-red);
   border-radius: 0; /* squares */
 }
 
-.requests-menu-status-icon[code^="5"] {
+.requests-menu-status-icon[code^="5"],
+.requests-menu-status-icon[data-code^="5"] {
   background-color: var(--theme-highlight-pink);
   border-radius: 0;
   transform: rotate(45deg);
@@ -280,22 +482,26 @@ window {
 /* Network requests table: waterfall header */
 
 .requests-menu-waterfall {
+  flex: auto;
   padding-inline-start: 0;
 }
 
-#requests-menu-waterfall-label:not(.requests-menu-waterfall-visible) {
-  padding-inline-start: 13px;
+#requests-menu-waterfall-label:not(.requests-menu-waterfall-visible),
+.requests-menu-waterfall-label-wrapper:not(.requests-menu-waterfall-visible) {
+  padding-inline-start: 16px;
 }
 
 .requests-menu-timings-division {
   width: 100px;
-  padding-top: 1px;
+  padding-top: 2px;
   padding-inline-start: 4px;
-  border-inline-start: 1px dotted #000000;
-  font-size: 90%;
+  font-size: 75%;
   pointer-events: none;
   box-sizing: border-box;
   text-align: start;
+  /* Allow the timing label to shrink if the container gets too narrow.
+   * The container width then is not limited by the content. */
+  flex: initial;
 }
 
 .requests-menu-timings-division:first-child {
@@ -303,8 +509,8 @@ window {
 }
 
 .requests-menu-timings-division:not(:first-child) {
-  border-inline-start: 1px dotted;
-  margin-inline-start: -100px !important; /* Don't affect layout. */
+  border-inline-start: 1px dashed;
+/*   margin-inline-start: -100px !important; / Don't affect layout. */
 }
 
 .requests-menu-timings-division:-moz-locale-dir(ltr) {
@@ -320,28 +526,37 @@ window {
 }
 
 .requests-menu-timings-division[division-scale=second],
-.requests-menu-timings-division[division-scale=minute] {
+.requests-menu-timings-division[division-scale=minute],
+.requests-menu-timings-division[data-division-scale=second],
+.requests-menu-timings-division[data-division-scale=minute] {
   font-weight: 600;
 }
 
 /* Network requests table: waterfall items */
 
 .requests-menu-subitem.requests-menu-waterfall {
-  -moz-padding-start: 0px;
-  -moz-padding-end: 4px;
+  padding-inline-start: 0;
+  padding-inline-end: 4px;
   /* Background created on a <canvas> in js. */
-  /* @see browser/devtools/netmonitor/netmonitor-view.js */
+  /* @see devtools/client/netmonitor/netmonitor-view.js */
   background-image: -moz-element(#waterfall-background);
   background-repeat: repeat-y;
-  background-position: -1px center;
+  background-position: left center;
 }
 
 .requests-menu-subitem.requests-menu-waterfall:-moz-locale-dir(rtl) {
   background-position: right center;
 }
 
+.requests-menu-timings {
+  display: flex;
+  flex: none;
+  align-items: center;
+  transform: scaleX(var(--timings-scale));
+}
+
 .requests-menu-timings:-moz-locale-dir(ltr) {
-   transform-origin: left center;
+  transform-origin: left center;
 }
 
 .requests-menu-timings:-moz-locale-dir(rtl) {
@@ -357,49 +572,64 @@ window {
 }
 
 .requests-menu-timings-total {
-  -moz-padding-start: 4px;
+  display: inline-block;
+  padding-inline-start: 4px;
   font-size: 85%;
   font-weight: 600;
+  white-space: nowrap;
+  /* This node should not be scaled - apply a reversed transformation */
+  transform: scaleX(var(--timings-rev-scale));
 }
 
 .requests-menu-timings-box {
+  display: inline-block;
   height: 9px;
 }
 
 .requests-menu-timings-box.blocked {
-  background-color: #FF0000; /* red */
+  background-color: var(--timing-blocked-color);
 }
 
 .requests-menu-timings-box.dns {
-  background-color: #E7ADE7; /* pink */
+  background-color: var(--timing-dns-color);
 }
 
 .requests-menu-timings-box.connect {
-  background-color: #FF9F00; /* orange */
+  background-color: var(--timing-connect-color);
 }
 
 .requests-menu-timings-box.send {
-  background-color: #FFCF00; /* light blue */
+  background-color: var(--timing-send-color);
 }
 
 .requests-menu-timings-box.wait {
-  background-color: #9C9CFF; /* blue grey */
+  background-color: var(--timing-wait-color);
 }
 
 .requests-menu-timings-box.receive {
-  background-color: #A09090; /* green */
+  background-color: var(--timing-receive-color);
 }
 
 /* SideMenuWidget */
 
 #network-table .side-menu-widget-empty-text,
-#network-table .side-menu-widget-container {
+#network-table .side-menu-widget-container,
+#network-table .request-list-empty-notice,
+#network-table .request-list-container {
   background-color: var(--theme-body-background);
 }
 
-#network-table .side-menu-widget-item {
+#network-table .side-menu-widget-item,
+.request-list-item {
+  display: flex;
   border-top-color: transparent;
   border-bottom-color: transparent;
+  padding: 0;
+}
+
+.request-list-item.selected {
+  background-color: var(--theme-selection-background);
+  color: var(--theme-selection-color);
 }
 
 .side-menu-widget-item-contents {
@@ -410,41 +640,47 @@ window {
   box-shadow: none !important;
 }
 
-.side-menu-widget-item:not(.selected)[odd] {
+.side-menu-widget-item:not(.selected)[odd],
+.request-list-item:not(.selected).odd {
   background-color: var(--table-zebra-background);
 }
 
-.side-menu-widget-item:not(.selected):hover {
+.side-menu-widget-item:not(.selected):hover,
+.request-list-item:not(.selected):hover {
   background-color: var(--theme-selection-background-semitransparent);
 }
 
+/* Method Column */
+
+.request-list-item.selected .requests-menu-method {
+  color: var(--theme-selection-color);
+}
+
 /* Network request details */
 
 #details-pane-toggle {
-  list-style-image: url("chrome://devtools/skin/images/debugger-collapse.png");
+  list-style-image: var(--theme-pane-collapse-image);
 }
 
-#details-pane-toggle[pane-collapsed] {
-  list-style-image: url("chrome://devtools/skin/images/debugger-expand.png");
+#details-pane-toggle.pane-collapsed {
+  list-style-image: var(--theme-pane-expand-image);
 }
 
-@media (min-resolution: 1.1dppx) {
-  #details-pane-toggle {
-    list-style-image: url("chrome://devtools/skin/images/debugger-collapse@2x.png");
-  }
+#details-pane-toggle:-moz-locale-dir(ltr)::before,
+#details-pane-toggle.pane-collapsed:-moz-locale-dir(rtl)::before {
+  background-image: var(--theme-pane-collapse-image);
+}
 
-  #details-pane-toggle[pane-collapsed] {
-    list-style-image: url("chrome://devtools/skin/images/debugger-expand@2x.png");
-  }
+#details-pane-toggle.pane-collapsed:-moz-locale-dir(ltr)::before,
+#details-pane-toggle:-moz-locale-dir(rtl)::before {
+  background-image: var(--theme-pane-expand-image);
 }
 
 /* Network request details tabpanels */
 
 .tabpanel-content {
   background-color: var(--theme-sidebar-background);
-}
 
-.theme-dark .tabpanel-content {
   color: var(--theme-body-color);
 }
 
@@ -459,14 +695,15 @@ window {
 }
 
 .tabpanel-summary-label {
-  -moz-padding-start: 4px;
-  -moz-padding-end: 3px;
+  display: inline-block;
+  padding-inline-start: 4px;
+  padding-inline-end: 3px;
   font-weight: 600;
 }
 
 .tabpanel-summary-value {
   color: inherit;
-  -moz-padding-start: 3px;
+  padding-inline-start: 3px;
 }
 
 /* Headers tabpanel */
@@ -481,13 +718,13 @@ window {
 }
 
 #headers-summary-resend {
-  margin: 0 6px;
-/*  min-height: 20px;*/
+  margin-top: -10px;
+  margin-inline-end: 6px;
 }
 
 #toggle-raw-headers {
   margin-top: -10px;
-  -moz-margin-end: 6px;
+  margin-inline-end: 6px;
 }
 
 .raw-response-textarea {
@@ -527,14 +764,28 @@ window {
 
 /* Timings tabpanel */
 
+#timings-tabpanel .tabpanel-summary-container {
+  display: flex;
+}
+
 #timings-tabpanel .tabpanel-summary-label {
   width: 10em;
 }
 
+#timings-tabpanel .requests-menu-timings-container {
+  display: flex;
+  flex: 1;
+  align-items: center;
+}
+
+#timings-tabpanel .requests-menu-timings-offset {
+  transition: width 0.2s ease-out;
+}
+
 #timings-tabpanel .requests-menu-timings-box {
-  transition: transform 0.2s ease-out;
-  min-width: 1px;
   border: none;
+  min-width: 1px;
+  transition: width 0.2s ease-out;
 }
 
 #timings-tabpanel .requests-menu-timings-total {
@@ -544,17 +795,18 @@ window {
 /* Security tabpanel */
 
 .security-info-section {
-  -moz-padding-start: 1em;
+  padding-inline-start: 1em;
 }
 
 #security-tabpanel {
   overflow: auto;
+  -moz-user-select: text;
 }
 
 .security-warning-icon {
   background-image: url("images/alerticon-warning.png");
   background-size: 13px 12px;
-  -moz-margin-start: 5px;
+  margin-inline-start: 5px;
   vertical-align: top;
   width: 13px;
   height: 12px;
@@ -584,82 +836,55 @@ window {
   width: 4.5em;
 }
 
-/* Footer */
-
-#requests-menu-footer {
-  padding-top: 3px;
-  background-color: var(--theme-toolbar-background);
-  border-top: 1px solid var(--table-splitter-color);
-}
-
-.requests-menu-footer-button,
-.requests-menu-footer-label {
-  min-width: 1em;
-  margin: 0;
-  -moz-margin-end: 3px;
+/* Main toolbar */
+.requests-menu-filter-button {
+/*  -moz-appearance: none;
+  background: rgba(128,128,128,0.1);
   border: none;
-  padding: 0px 1vw;
-/*  color: var(--theme-body-color);*/
-}
-
-.requests-menu-footer-spacer {
-  min-width: 2px;
-}
-
-.requests-menu-footer-spacer,
-.requests-menu-footer-button {
-}
-
-.requests-menu-footer-button {
-}
-
-.requests-menu-footer-button:hover:active {
-}
-
-.requests-menu-footer-button:not(:active)[checked] {
-}
-
-.requests-menu-footer-label {
-  font-weight: 600;
+  border-radius: 2px;
+  min-width: 0;
+  padding: 0 5px;
+  margin: 2px;
+  color: var(--theme-body-color);*/
+  margin-top: 0;
+  margin-bottom: 0;
 }
 
-#requests-menu-filter-freetext-text {
-  transition-property: max-width, -moz-padding-end, -moz-padding-start;
-  transition-duration: 250ms;
-  transition-timing-function: ease;
+.requests-menu-filter-button:hover {
+/*  background: rgba(128,128,128,0.2);*/
 }
 
-#requests-menu-filter-freetext-text:not([focused]):not([filled]) > .textbox-input-box {
-  overflow: hidden;
-}
-
-#requests-menu-filter-freetext-text:not([focused]):not([filled]) {
-  max-width: 20px !important;
-  -moz-padding-end: 5px;
-  -moz-padding-start: 22px;
-  background-position: 8px center, top left, top left;
-}
-
-#requests-menu-filter-freetext-text[focused],
-#requests-menu-filter-freetext-text[filled] {
-  max-width: 200px !important;
+.requests-menu-filter-button:hover:active {
+/*  background-color: var(--theme-selection-background-semitransparent);*/
 }
 
 /* Performance analysis buttons */
 
 #requests-menu-network-summary-button {
-  list-style-image: url("images/profiler-stopwatch.svg");
-  -moz-padding-end: 0;
+  display: flex;
+  flex-wrap: nowrap;
+  align-items: center;
+  font: inherit;
+  box-shadow: none;
+  border-color: transparent;
+  list-style-image: url("images/profiler-stopwatch-tbutton.svg");
   cursor: pointer;
+  min-width: 0;
 }
 
-#requests-menu-network-summary-label {
-  -moz-padding-start: 0;
-  cursor: pointer;
+#requests-menu-network-summary-button > .summary-info-icon {
+  background-image: url(images/profiler-stopwatch.svg);
+  filter: var(--icon-filter);
+  width: 16px;
+  height: 16px;
+}
+
+#requests-menu-network-summary-button > .summary-info-text {
+  margin-inline-start: 0.5em;
 }
 
-#requests-menu-network-summary-label:hover {
-  text-decoration: underline;
+#requests-menu-network-summary-button:hover > .summary-info-icon,
+#requests-menu-network-summary-button:hover > .summary-info-text {
 }
 
 /* Performance analysis view */
@@ -668,31 +893,44 @@ window {
   /* Make the toolbar invisible, it only hold the back button */
   -moz-binding: url("chrome://global/content/bindings/toolbar.xml#toolbar");
   background-color: #000000;
+  border: none;
+  margin: 0;
+  padding: 0;
 }
 
 #network-statistics-back-button {
   min-width: 4em;
   min-height: 100vh;
+  margin: 0;
+  padding: 0;
+  border-radius: 0;
+  border-top: none;
+  border-bottom: none;
+  border-inline-start: none;
 }
 
 #network-statistics-view-splitter {
+/*  border-color: rgba(0,0,0,0.2);*/
   cursor: default;
   pointer-events: none;
 }
 
 #network-statistics-charts {
   min-height: 1px;
+}
+
+#network-statistics-charts {
   background-color: var(--theme-sidebar-background);
 }
 
 #network-statistics-charts .pie-chart-container {
-  -moz-margin-start: 3vw;
-  -moz-margin-end: 1vw;
+  margin-inline-start: 3vw;
+  margin-inline-end: 1vw;
 }
 
 #network-statistics-charts .table-chart-container {
-  -moz-margin-start: 1vw;
-  -moz-margin-end: 3vw;
+  margin-inline-start: 1vw;
+  margin-inline-end: 3vw;
 }
 
 .chart-colored-blob[name=html] {
@@ -756,28 +994,10 @@ window {
   width: 7em;
 }
 
-/* Platform overrides (copied in from the old platform specific files) */
-:root[platform="win"] .requests-menu-header-button > .button-box {
-  padding: 0;
-}
-
-:root[platform="win"] .requests-menu-timings-division {
-  padding-top: 1px;
-  font-size: 90%;
-}
-
-:root[platform="linux"] #headers-summary-resend {
-  padding: 4px;
-}
-
-:root[platform="linux"] #toggle-raw-headers {
-  padding: 4px;
-}
-
 /* Responsive sidebar */
 @media (max-width: 700px) {
   #requests-menu-toolbar {
-    height: 24px;
+    height: 22px;
   }
 
   .requests-menu-header-button {
@@ -792,7 +1012,7 @@ window {
 
   .requests-menu-status {
     max-width: none;
-    width: 12vw;
+    width: 10vw;
   }
 
   .requests-menu-status-code {
@@ -802,7 +1022,7 @@ window {
   .requests-menu-method,
   .requests-menu-method-box {
     max-width: none;
-    width: 14vw;
+    width: 12vw;
   }
 
   .requests-menu-icon-and-file {
@@ -810,17 +1030,102 @@ window {
   }
 
   .requests-menu-security-and-domain {
-    width: 18vw;
+    width: 16vw;
   }
 
-  .requests-menu-type {
+  .requests-menu-cause,
+  .requests-menu-type,
+  .requests-menu-transferred,
+  .requests-menu-size {
+    max-width: none;
     width: 10vw;
   }
 
-  .requests-menu-transferred,
-  .requests-menu-size {
-    width: 12vw;
+  .requests-menu-waterfall {
+    display: none;
+  }
+}
+
+/* Platform overrides (copied in from the old platform specific files) */
+:root[platform="win"] .requests-menu-header-button > .button-box {
+  padding: 0;
+}
+
+:root[platform="win"] .requests-menu-timings-division {
+  padding-top: 1px;
+  font-size: 90%;
+}
+
+:root[platform="linux"] #headers-summary-resend {
+  padding: 4px;
+}
+
+:root[platform="linux"] #toggle-raw-headers {
+  padding: 4px;
+}
+
+/* Responsive sidebar */
+@media (max-width: 700px) {
+  :root[platform="linux"] .requests-menu-header-button {
+    font-size: 85%;
   }
 }
 
-/* === END netmonitor.inc.css === */
+/* Overwrite tree-view cell colon and use l10n string instead */
+.treeTable .treeLabelCell::after {
+  content: "";
+}
+
+/* Layout additional warning icon in tree value cell  */
+.security-info-value {
+  display: flex;
+}
+
+.security-info-value .textbox-input {
+  text-overflow: ellipsis;
+  border: none;
+  background: none;
+  color: inherit;
+  width: 100%;
+  margin-inline-end: 2px;
+}
+
+.security-info-value .textbox-input:focus {
+  outline: 0;
+  box-shadow: var(--theme-focus-box-shadow-textbox);
+}
+
+.treeTable .treeLabel {
+  font-weight: 600;
+}
+
+/* Customize default tree table style to align with devtools theme  */
+.theme-light .treeTable .treeLabel,
+.theme-light .treeTable .treeRow.hasChildren > .treeLabelCell > .treeLabel:hover {
+  color: var(--theme-highlight-red);
+}
+
+.theme-dark .treeTable .treeLabel,
+.theme-dark .treeTable .treeRow.hasChildren > .treeLabelCell > .treeLabel:hover {
+  color: var(--theme-highlight-purple);
+}
+
+.theme-firebug .treeTable .treeLabel {
+  color: var(--theme-body-color);
+}
+
+.treeTable .treeRow.hasChildren > .treeLabelCell > .treeLabel:hover {
+  cursor: default;
+  text-decoration: none;
+}
+
+/*
+ * FIXME: normal html block element cannot fill outer XUL element
+ * This workaround should be removed after sidebar is migrated to react
+ */
+#react-security-tabpanel-hook,
+#react-timings-tabpanel-hook {
+  display: -moz-box;
+  -moz-box-orient: vertical;
+  -moz-box-flex: 1;
+}