X-Git-Url: https://git-public.kairo.at/?p=themes.git;a=blobdiff_plain;f=LCARStrek%2Fdevtools%2Fcommon.css;h=9bad167723aa4e6381d4678c05470d9792c0dc16;hp=0237525bbf332c2d3095ec614acb496d61f54b93;hb=b1d1a8bbaca0a31b2c2581911368b6892d447718;hpb=dc9d5d64a3f915cb832f43050545b432f33504f7 diff --git a/LCARStrek/devtools/common.css b/LCARStrek/devtools/common.css index 0237525b..9bad1677 100644 --- a/LCARStrek/devtools/common.css +++ b/LCARStrek/devtools/common.css @@ -3,6 +3,8 @@ * 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("splitters.css"); + /* LCARS-specific rules that should be limited to toolbox but there's no other place to put them */ window { padding: 0; @@ -26,87 +28,53 @@ notification { font-size: var(--monospace-font-size); } -/* Bottom-docked toolbox minimize transition */ -.devtools-toolbox-bottom-iframe { - transition: margin-bottom .1s; -} - -/* Splitters */ -.devtools-horizontal-splitter { - min-height: 3px; - height: 3px; - position: relative; -} +/* Autocomplete Popup */ -#devtools-side-splitter { - min-width: 0; - width: 3px; - border: none; - margin: 0 3px; - position: relative; - cursor: e-resize; -} +.devtools-autocomplete-popup { + border-radius: 3px; + overflow-x: hidden; + max-height: 20rem; -.devtools-horizontal-splitter.disabled, -.devtools-side-splitter.disabled { - pointer-events: none; + /* Devtools autocompletes display technical english keywords and should be displayed + using LTR direction. */ + direction: ltr !important; } -/* In-tools sidebar */ - -.devtools-toolbox-side-iframe { - min-width: 465px; +/* Reset list styles. */ +.devtools-autocomplete-popup ul { + list-style: none; } -/* === BEGIN common.inc.css === */ - -/* Autocomplete Popup */ -/* Dark and light theme */ - -.devtools-autocomplete-popup { - border-radius: 3px; - overflow-x: hidden; - max-height: 40rem; +.devtools-autocomplete-popup ul, +.devtools-autocomplete-popup li { + margin: 0; } .devtools-autocomplete-listbox { background-color: transparent; border-width: 0px !important; + margin: 0; } -.devtools-autocomplete-listbox > richlistitem, -.devtools-autocomplete-listbox > richlistitem[selected] { +.devtools-autocomplete-listbox .autocomplete-item { width: 100%; background-color: transparent; border-radius: 4px; } -.devtools-autocomplete-listbox.dark-theme > richlistitem[selected], -.devtools-autocomplete-listbox.dark-theme > richlistitem:hover { -/* background-color: rgba(0,0,0,0.5); */ -} - -.devtools-autocomplete-listbox.dark-theme > richlistitem[selected] > .autocomplete-value, -.devtools-autocomplete-listbox:focus.dark-theme > richlistitem[selected] > .initial-value { -/* color: hsl(208,100%,60%);*/ -} - -.devtools-autocomplete-listbox.dark-theme > richlistitem[selected] > label { -/* color: #eee;*/ -} - -.devtools-autocomplete-listbox.dark-theme > richlistitem > label { -/* color: #ccc;*/ +.devtools-autocomplete-listbox .autocomplete-selected { +/* background-color: rgba(0,0,0,0.2); */ } -.devtools-autocomplete-listbox > richlistitem > .initial-value, -.devtools-autocomplete-listbox > richlistitem > .autocomplete-value { +.devtools-autocomplete-listbox .autocomplete-item > .initial-value, +.devtools-autocomplete-listbox .autocomplete-item > .autocomplete-value { margin: 0; - padding: 1px 0; + padding: 0; + cursor: default; } -.devtools-autocomplete-listbox > richlistitem > .autocomplete-count { +.devtools-autocomplete-listbox .autocomplete-item > .autocomplete-count { text-align: end; } @@ -115,223 +83,577 @@ notification { .devtools-autocomplete-popup, .CodeMirror-hints, .CodeMirror-Tern-tooltip { - border: 1px solid #FF9F00; + border: 1px solid #9C9CFF; background-color: #000000; } -.devtools-autocomplete-popup.light-theme { +/* Autocomplete list clone used for accessibility. */ + +.devtools-autocomplete-list-aria-clone { + /* Cannot use display:none or visibility:hidden : screen readers ignore the element. */ + position: fixed; + overflow: hidden; + margin: 0; + width: 0; + height: 0; } -.devtools-autocomplete-listbox.light-theme > richlistitem[selected], -.devtools-autocomplete-listbox.light-theme > richlistitem:hover { -/* background-color: rgba(128,128,128,0.3); */ +.devtools-autocomplete-list-aria-clone li { + /* Prevent screen readers from prefacing every item with 'bullet'. */ + list-style-type: none; } -.devtools-autocomplete-listbox.light-theme > richlistitem[selected] > .autocomplete-value, -.devtools-autocomplete-listbox:focus.light-theme > richlistitem[selected] > .initial-value { -/* color: #222;*/ +/* links to source code, like displaying `myfile.js:45` */ + +.devtools-source-link { + font-family: var(--monospace-font-family); + color: var(--theme-text-blue); + cursor: pointer; + white-space: nowrap; + display: flex; + text-decoration: none; + font-size: 11px; + width: 12em; /* probably should be changed for each tool */ } -.devtools-autocomplete-listbox.light-theme > richlistitem > label { -/* color: #666;*/ +.devtools-source-link:hover { + text-decoration: underline; } -/* Responsive container */ +.devtools-source-link > .filename { + text-overflow: ellipsis; + text-align: end; + overflow: hidden; + margin: 2px 0px; + cursor: pointer; +} -.devtools-responsive-container { - -moz-box-orient: horizontal; +.devtools-source-link > .line-number { + flex: none; + margin: 2px 0px; + cursor: pointer; } -@media (max-width: 700px) { - .devtools-responsive-container { - -moz-box-orient: vertical; - } +/* Keyboard focus highlight styles */ - .devtools-responsive-container > .devtools-side-splitter { - border: 0; - margin: 3px 0; - min-height: 3px; - height: 3px; - /* In some edge case the cursor is not changed to n-resize */ - cursor: n-resize; - } +:-moz-focusring { + outline: var(--theme-focus-outline); + outline-offset: -1px; +} - .devtools-responsive-container > .devtools-sidebar-tabs { - min-height: 35vh; - max-height: 75vh; - } +textbox[focused="true"] { + border-color: var(--theme-focus-border-color-textbox); +/* box-shadow: var(--theme-focus-box-shadow-textbox);*/ + transition: all 0.2s ease-in-out +} + +textbox :-moz-focusring { + box-shadow: none; + outline: none; +} + +/* Form fields should already have box-shadow hightlight */ +select:-moz-focusring, +input[type="radio"]:-moz-focusring, +input[type="checkbox"]:-moz-focusring, +checkbox:-moz-focusring { + outline: none; +} + +/* Toolbar buttons */ + +.devtools-menulist, +.devtools-toolbarbutton, +.devtools-button { } -/* Tooltip widget (see browser/devtools/shared/widgets/Tooltip.js) */ +.devtools-menulist, +.devtools-toolbarbutton { +} -.devtools-tooltip.devtools-tooltip-tooltip { - /* If the tooltip uses a XUL element */ - padding: 4px; - background: #A09090; +.devtools-toolbarbutton:not([label]) > .toolbarbutton-icon, +.devtools-button::before { + width: 16px; + height: 16px; +/* transition: opacity 0.05s ease-in-out;*/ +} + +/* HTML buttons */ +.devtools-button { + margin: 0; + padding: 0; + border: none; border-radius: 3px; + min-width: 18px; + height: 100%; + margin-inline-start: 2px; + background: var(--theme-toolbar-background); + color: var(--theme-body-color); + /* The icon is absolutely positioned in the button using ::before */ + position: relative; } -.devtools-tooltip .panel-arrowcontent { - /* If the tooltip uses a XUL element instead */ - padding: 4px; +.devtools-button:not([disabled]):hover { + background: var(--theme-hover-background); + color: var(--theme-hover-color); } -.devtools-tooltip .panel-arrowcontainer { - /* Reseting the transition used when panels are shown */ - transition: none; - /* Panels slide up/down/left/right when they appear using a transform. - Since we want to remove the transition, we don't need to transform anymore - plus it can interfeer by causing mouseleave events on the underlying nodes */ - transform: none; +.devtools-button:not([disabled]):hover:active { + background: var(--theme-active-background); + color: var(--theme-active-color); } -.devtools-tooltip[clamped-dimensions] { - min-height: 100px; - max-height: 400px; - min-width: 100px; - max-width: 400px; +/* Menu type buttons and checked states */ +.devtools-button[checked], +.devtools-button.checked { + background: var(--theme-selection-background); + color: var(--theme-selection-color); } -.devtools-tooltip[clamped-dimensions-no-min-height] { - min-height: 0; - max-height: 400px; - min-width: 100px; - max-width: 400px; + +.devtools-button::before { + content: ""; + display: block; + position: absolute; + left: 50%; + top: 50%; + margin: -8px 0 0 -8px; +/* background-size: cover; + background-repeat: no-repeat;*/ +/* transition: opacity 0.05s ease-in-out;*/ } -.devtools-tooltip[clamped-dimensions-no-max-or-min-height] { - min-width: 400px; - max-width: 400px; + +.devtools-button:-moz-focusring { + outline: none; } -.devtools-tooltip[clamped-dimensions] .panel-arrowcontent, -.devtools-tooltip[clamped-dimensions-no-min-height] .panel-arrowcontent, -.devtools-tooltip[clamped-dimensions-no-max-or-min-height] .panel-arrowcontent { - overflow: hidden; + +/* Standalone buttons */ +.devtools-button[standalone], +.devtools-button[data-standalone], +.devtools-toolbarbutton[standalone], +.devtools-toolbarbutton[data-standalone], +.menu-filter-button { + border: none; +/* min-height: 32px; */ + font: inherit; + background-color: var(--theme-button-background); + color: var(--theme-button-color); + border-radius: 300px; } -.devtools-tooltip[wide] { - max-width: 600px; + +.devtools-button[standalone]:hover, +.devtools-button[data-standalone]:hover, +.devtools-toolbarbutton[standalone]:hover, +.devtools-toolbarbutton[data-standalone]:hover, +.menu-filter-button:hover { + background-color: var(--theme-hover-background); + color: var(--theme-hover-color); } -/* Tooltip: Simple Text */ +.devtools-button[standalone]:hover:active, +.devtools-button[data-standalone]:hover:active, +.devtools-toolbarbutton[standalone]:hover:active, +.devtools-toolbarbutton[data-standalone]:hover:active, +.menu-filter-button:hover:active { + background-color: var(--theme-active-background); + color: var(--theme-active-color); +} -.devtools-tooltip-simple-text { - background: #000000; - max-width: 400px; - margin: 0 -4px; /* Compensate for the .panel-arrowcontent padding. */ - padding: 8px 12px; - white-space: pre-wrap; +.menu-filter-button.checked { + background: var(--theme-selection-background); + color: var(--theme-selection-color); } -.devtools-tooltip-simple-text:first-child { - margin-top: -4px; +.menu-filter-button + .menu-filter-button { + margin-inline-start: 2px; } -.devtools-tooltip-simple-text:last-child { - margin-bottom: -4px; +.devtools-toolbarbutton[standalone], .devtools-toolbarbutton[data-standalone] { } -.devtools-tooltip-simple-text { - background-color: #000000; - max-width: 400px; - margin: 0 -4px; /* Compensate for the .panel-arrowcontent padding. */ - padding: 8px 12px; - white-space: pre-wrap; +.devtools-toolbarbutton[label][standalone] { } -.devtools-tooltip-simple-text:first-child { - margin-top: -4px; +.devtools-menulist, +.devtools-toolbarbutton, +.devtools-button { + min-height: 18px; } -.devtools-tooltip-simple-text:last-child { - margin-bottom: -4px; +/* Icon button styles */ +.devtools-toolbarbutton:not([label]), +.devtools-toolbarbutton[text-as-image] { + min-width: 16px; } -/* Tooltip: Alert Icon */ +.devtools-toolbarbutton:not([label]) > .toolbarbutton-text { + display: none; +} -.devtools-tooltip-alert-icon { - width: 32px; - height: 32px; - margin: 6px; - -moz-margin-end: 20px; +.devtools-toolbar .devtools-toolbarbutton { + margin-inline-start: 2px; } -.devtools-tooltip-alert-icon { - list-style-image: url("chrome://global/skin/icons/alert-exclam.gif"); +.devtools-toolbarbutton > .toolbarbutton-icon { } -/* Tooltip: Variables View */ +/* Menu button styles (eg. web console filters) */ +.devtools-toolbarbutton[type=menu-button] > .toolbarbutton-menubutton-button { +/* -moz-box-orient: horizontal; */ +} -.devtools-tooltip-variables-view-box { - margin: -4px; /* Compensate for the .panel-arrowcontent padding. */ +.devtools-toolbarbutton[type=menu-button] { } -.devtools-tooltip-variables-view-box .variable-or-property > .title { - -moz-padding-end: 6px; +.devtools-toolbarbutton > .toolbarbutton-menubutton-button > .toolbarbutton-icon { } -/* Tooltip: Tiles */ +.devtools-menulist > .menulist-dropmarker { +} -.devtools-tooltip-tiles { - background-color: #A09090; - background-image: linear-gradient(45deg, #9C9CFF 25%, transparent 25%, transparent 75%, #9C9CFF 75%, #9C9CFF), - linear-gradient(45deg, #9C9CFF 25%, transparent 25%, transparent 75%, #9C9CFF 75%, #9C9CFF); - background-size: 20px 20px; - background-position: 0 0, 10px 10px; +.devtools-toolbarbutton[type=menu] > .toolbarbutton-menu-dropmarker, +.devtools-toolbarbutton[type=menu-button] > .toolbarbutton-menubutton-dropmarker { } -.devtools-tooltip-iframe { - border: none; - background: transparent; +/* Icon-only buttons */ +.devtools-button:empty::before, +.devtools-toolbarbutton:not([label]):not([disabled]) > image { +/* opacity: 0.8;*/ } -/* Eyedropper Widget */ +.devtools-button:hover:empty::before, +.devtools-button.checked:empty::before, +.devtools-button[checked]:empty::before, +.devtools-button[open]:empty::before, +.devtools-button.checked::before, +.devtools-toolbarbutton:not([label]):hover > image, +.devtools-toolbarbutton:not([label])[checked=true] > image, +.devtools-toolbarbutton:not([label])[open=true] > image { +/* opacity: 1;*/ +} -.devtools-eyedropper-panel { +.devtools-button:disabled, +.devtools-button[disabled], +.devtools-toolbarbutton[disabled] { pointer-events: none; - -moz-appearance: none; - width: 156px; - height: 120px; - background-color: transparent; +/* opacity: 0.5 !important;*/ +} + +.devtools-button[standalone]::before, +.devtools-button[data-standalone]::before, +.devtools-button:not([disabled]):hover::before, +.devtools-button:not([disabled]):hover:active::before, +.devtools-button[checked]:empty::before, +.devtools-button[open]:empty::before, +.devtools-toolbarbutton[standalone] > image, +.devtools-toolbarbutton[data-standalone] > image, +.devtools-toolbarbutton:not([disabled]):hover > image, +.devtools-toolbarbutton:not([disabled]):hover:active > image, +.devtools-toolbarbutton[checked=true] > image, +.devtools-toolbarbutton[open=true] > image { + filter: var(--checked-icon-filter); +} + +.devtools-button[disabled]::before, +.devtools-toolbarbutton[disabled] > image { + filter: url(images/filters.svg#disabled-icon-state); +} + +/* Icon-and-text buttons */ +.devtools-toolbarbutton.icon-and-text .toolbarbutton-text { + margin-inline-start: .5em !important; + font-weight: 600; +} + +/* Text-only buttons */ +.devtools-toolbarbutton[label]:not([text-as-image]):not([type=menu-button]), +.devtools-toolbarbutton[data-text-only], +.devtools-button:not(:empty), +#toolbox-buttons .devtools-toolbarbutton[text-as-image] { +/* background-color: rgba(0, 0, 0, .2); / Splitter */ +} + +/* Text-only button states */ +.devtools-button:not(:empty):not(:disabled):hover, +#toolbox-buttons .devtools-toolbarbutton:not([disabled])[text-as-image]:hover, +.devtools-toolbarbutton:not(:-moz-any([checked=true],[disabled],[text-as-image]))[label]:hover { +/* background: rgba(0, 0, 0, .3); / Splitters */ +} + +.devtools-button:not(:empty):not(:disabled):hover:active, +#toolbox-buttons .devtools-toolbarbutton:not([disabled])[text-as-image]:hover:active, +.devtools-toolbarbutton:not(:-moz-any([checked=true],[disabled],[text-as-image]))[label]:hover:active { +/* background: rgba(0, 0, 0, .4); / Splitters */ +} + +.devtools-toolbarbutton:not([disabled])[label][checked=true], +.devtools-toolbarbutton:not([disabled])[label][open], +.devtools-button:not(:empty)[checked=true], +#toolbox-buttons .devtools-toolbarbutton[text-as-image][checked=true] { +/* background: rgba(29, 79, 115, .7); / Select highlight blue / + color: var(--theme-selection-color); */ +} + +.devtools-menulist[open=true], +.devtools-toolbarbutton[open=true], +.devtools-toolbarbutton[open=true]:hover, +.devtools-toolbarbutton[open=true]:hover:active, +.devtools-toolbarbutton[checked=true], +.devtools-toolbarbutton[checked=true]:hover, +#toolbox-buttons .devtools-toolbarbutton[text-as-image][checked] { +/* background: rgba(29, 79, 115, .8); / Select highlight blue / + color: var(--theme-selection-color); */ +} + +:root { + --clear-icon-url: url("chrome://devtools/skin/images/clear.svg"); +} + +.devtools-button.devtools-clear-icon::before { + background-image: var(--clear-icon-url); +} + +.devtools-button.devtools-filter-icon::before { + background-image: var(--filter-image); +} + +.devtools-toolbarbutton.devtools-clear-icon { + list-style-image: var(--clear-icon-url); +} + +.devtools-option-toolbarbutton { + list-style-image: var(--tool-options-image); +} + +.devtools-toolbarbutton-group > .devtools-toolbarbutton:last-child { +} + +.devtools-toolbarbutton-group + .devtools-toolbarbutton { +} + +.devtools-separator + .devtools-toolbarbutton { +} + +/* + * Filter buttons + * @TODO : Fix when https://bugzilla.mozilla.org/show_bug.cgi?id=1255116 lands + */ + +.menu-filter-button { +/* -moz-appearance: none; + background: rgba(128,128,128,0.1); border: none; - padding: 0; + border-radius: 2px; + min-width: 0; + padding: 0 5px; + margin: 2px; + color: var(--theme-body-color);*/ } -#color-value { - color: #FF9F00; +.menu-filter-button:hover { +/* background: rgba(128,128,128,0.2);*/ } -#color-value.highlight { - color: #FFCF00; +.menu-filter-button:hover:active { +/* background-color: var(--theme-selection-background-semitransparent);*/ } -/* Links to source code, like displaying `myfile.js:45` */ +.menu-filter-button:not(:active).checked { + background-color: var(--theme-selection-background); + color: var(--theme-selection-color); +} -.devtools-source-link { - font-family: var(--monospace-font-family); - color: var(--theme-text-blue); - cursor: pointer; - white-space: nowrap; +/* Text input */ + +.devtools-textinput, +.devtools-searchinput, +.devtools-filterinput { +/* -moz-appearance: none; + margin: 1 3px; + border: 1px solid; + border-radius: 2px; + padding: 4px 6px; + border-color: var(--theme-splitter-color); + font: message-box;*/ + margin-top: 0; + margin-bottom: 0; +} + +:root[platform="mac"] .devtools-searchinput, +:root[platform="mac"] .devtools-textinput { +/* border-radius: 20px;*/ +} + +.devtools-searchinput, +.devtools-filterinput { +/* margin-top: 1px; + margin-bottom: 1px; + padding: 0;*/ + padding-inline-start: 22px; + padding-inline-end: 4px; + background-position: 8px center; + background-size: 11px 11px; + background-repeat: no-repeat; + font-size: inherit; +} + +/* + * @TODO : has-clear-btn class was added for bug 1296187 and we should remove it + * once we have a standardized search and filter input across the toolboxes. + */ +.has-clear-btn > .devtools-searchinput, +.has-clear-btn > .devtools-filterinput { + padding-inline-end: 23px; +} + +.devtools-searchinput { + background-image: var(--magnifying-glass-image); +} + +.devtools-filterinput { + background-image: var(--filter-image); +} + +.devtools-searchinput:-moz-locale-dir(rtl), +.devtools-searchinput:dir(rtl), +.devtools-filterinput:-moz-locale-dir(rtl), +.devtools-filterinput:dir(rtl) { + background-position: calc(100% - 8px) center; +} + +.devtools-searchinput > .textbox-input-box > .textbox-search-icons > .textbox-search-icon, +.devtools-filterinput > .textbox-input-box > .textbox-search-icons > .textbox-search-icon { + visibility: hidden; +} + +.devtools-searchinput .textbox-input::placeholder, +.devtools-filterinput .textbox-input::placeholder { + font-style: normal; +} + +.devtools-plaininput { + border-color: transparent; + background-color: transparent; + + color: var(--theme-highlight-gray); +} + +/* Searchbox is a div container element for a search input element */ +.devtools-searchbox { display: flex; - align-self: flex-start; - text-decoration: none; - font-size: 11px; - width: 12em; /* probably should be changed for each tool */ + flex: 1; + position: relative; } -.devtools-source-link:hover { - text-decoration: underline; +button + .devtools-searchbox { + margin-inline-start: 2px; } -.devtools-source-link > .filename { - text-overflow: ellipsis; - text-align: end; - overflow: hidden; - margin: 2px 0px; - cursor: pointer; +/* The spacing is accomplished with a padding on the searchbox */ +.devtools-searchbox > .devtools-textinput, +.devtools-searchbox > .devtools-searchinput { } -.devtools-source-link > .line-number { - flex: none; - margin: 2px 0px; - cursor: pointer; +.devtools-textinput:focus, +.devtools-searchinput:focus, +.devtools-filterinput:focus { + border-color: var(--theme-focus-border-color-textbox); +/* box-shadow: var(--theme-focus-box-shadow-textbox);*/ + transition: all 0.2s ease-in-out; + outline: none; } -/* === END common.inc.css === */ +/* Don't add 'double spacing' for inputs that are at beginning / end + of a toolbar (since the toolbar has it's own spacing). */ +.devtools-toolbar > .devtools-textinput:first-child, +.devtools-toolbar > .devtools-searchinput:first-child, +.devtools-toolbar > .devtools-filterinput:first-child { +} +.devtools-toolbar > .devtools-textinput:last-child, +.devtools-toolbar > .devtools-searchinput:last-child, +.devtools-toolbar > .devtools-filterinput:last-child { +} +.devtools-toolbar > .devtools-searchbox:first-child { +} +.devtools-toolbar > .devtools-searchbox:last-child { +} + +.devtools-rule-searchbox { + -moz-box-flex: 1; + width: 100%; +/* font: inherit;*/ +} + +.devtools-rule-searchbox[filled] { + background-color: var(--searchbox-background-color); + border-color: var(--searchbox-border-color); +} + +.devtools-style-searchbox-no-match { + background-color: var(--searchbox-no-match-background-color) !important; + border-color: var(--searchbox-no-match-border-color) !important; +} + +.devtools-searchinput-clear { + position: absolute; + top: 3.5px; + offset-inline-end: 7px; + padding: 0; + border: 0; + width: 16px; + height: 16px; + background-position: 0 0; + background-repeat: no-repeat; + background-color: transparent; +} + +.devtools-searchinput-clear:dir(rtl) { + right: unset; + left: 7px; +} + +.devtools-searchinput-clear { + background-image: url("chrome://devtools/skin/images/search-clear.svg"); +} + +.devtools-style-searchbox-no-match + .devtools-searchinput-clear { + background-image: url("chrome://devtools/skin/images/search-clear-failed.svg") !important; +} + +.devtools-searchinput-clear:hover { + background-position: -16px 0; +} + +.devtools-searchinput > .textbox-input-box > .textbox-search-icons > .textbox-search-clear, +.devtools-filterinput > .textbox-input-box > .textbox-search-icons > .textbox-search-clear { + list-style-image: url("chrome://devtools/skin/images/search-clear.svg"); + -moz-image-region: rect(0, 16px, 16px, 0); +} + +.devtools-searchinput > .textbox-input-box > .textbox-search-icons > .textbox-search-clear:hover, +.devtools-filterinput > .textbox-input-box > .textbox-search-icons > .textbox-search-clear:hover { + -moz-image-region: rect(0, 32px, 16px, 16px); +} + +/* Throbbers */ + +.devtools-throbber::before { + content: ""; + display: inline-block; + vertical-align: bottom; + margin-inline-end: 0.5em; + width: 1em; + height: 1em; + border: 2px solid currentColor; + border-right-color: transparent; + border-radius: 50%; + animation: 1.1s linear throbber-spin infinite; +} + +@keyframes throbber-spin { + from { + transform: none; + } + to { + transform: rotate(360deg); + } +}