mirror of
				https://github.com/mozilla/gecko-dev.git
				synced 2025-10-31 00:08:07 +02:00 
			
		
		
		
	 03de1a202c
			
		
	
	
		03de1a202c
		
	
	
	
	
		
			
			Use the non-native theme number input rather than rebuilding one. D205379 actually broke the hover effect because nesting with a pseudo-element doesn't work as you expect, see https://github.com/w3c/csswg-drafts/issues/9492 Differential Revision: https://phabricator.services.mozilla.com/D207178
		
			
				
	
	
		
			270 lines
		
	
	
	
		
			5.3 KiB
		
	
	
	
		
			CSS
		
	
	
	
	
	
			
		
		
	
	
			270 lines
		
	
	
	
		
			5.3 KiB
		
	
	
	
		
			CSS
		
	
	
	
	
	
| /* This Source Code Form is subject to the terms of the Mozilla Public
 | |
|  * 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/. */
 | |
| 
 | |
| :root {
 | |
|   font: menu;
 | |
| }
 | |
| 
 | |
| :root,
 | |
| body {
 | |
|   height: 100vh;
 | |
| }
 | |
| 
 | |
| body {
 | |
|   display: flex;
 | |
|   flex-direction: column;
 | |
|   justify-content: flex-start;
 | |
|   overflow: hidden;
 | |
| }
 | |
| 
 | |
| *[hidden] {
 | |
|   display: none !important;
 | |
| }
 | |
| 
 | |
| .section-block {
 | |
|   margin: var(--space-large);
 | |
| 
 | |
|   .block-label {
 | |
|     display: block;
 | |
|     margin-bottom: var(--space-small);
 | |
|   }
 | |
| }
 | |
| 
 | |
| .row {
 | |
|   display: flex;
 | |
|   flex-direction: column;
 | |
|   width: 100%;
 | |
|   min-height: 1.8em;
 | |
|   margin-block: var(--space-xxsmall);
 | |
| 
 | |
|   &.cols-2 {
 | |
|     flex-direction: row;
 | |
|     align-items: center;
 | |
| 
 | |
|     #scale &,
 | |
|     #more-settings-options > & {
 | |
|       /* The margin-block of the checkboxes/radiobuttons
 | |
|          already provide the needed vertical spacing. */
 | |
|       margin-block: 0;
 | |
|     }
 | |
|   }
 | |
| }
 | |
| 
 | |
| hr {
 | |
|   margin: 0 var(--space-small);
 | |
| }
 | |
| 
 | |
| .header-container {
 | |
|   display: flex;
 | |
|   flex-direction: row;
 | |
|   justify-content: space-between;
 | |
|   align-items: center;
 | |
|   flex: 0 1 auto;
 | |
|   padding: var(--space-small) var(--space-large);
 | |
| 
 | |
|   > h2 {
 | |
|     margin: 0;
 | |
|     line-height: 1;
 | |
|   }
 | |
| }
 | |
| 
 | |
| #sheet-count {
 | |
|   font: message-box;
 | |
|   padding-block: var(--space-xsmall);
 | |
|   margin: 0;
 | |
| 
 | |
|   &[loading],
 | |
|   body[invalid] & {
 | |
|     visibility: hidden;
 | |
|   }
 | |
| }
 | |
| 
 | |
| #print {
 | |
|   display: flex;
 | |
|   flex: 1 1 auto;
 | |
|   flex-direction: column;
 | |
|   justify-content: flex-start;
 | |
|   overflow: hidden;
 | |
| 
 | |
|   body[loading] & {
 | |
|     visibility: hidden;
 | |
|   }
 | |
| }
 | |
| 
 | |
| .body-container {
 | |
|   flex: 1 1 auto;
 | |
|   overflow: auto;
 | |
| }
 | |
| 
 | |
| select {
 | |
|   margin: 0;
 | |
|   width: 100%;
 | |
| 
 | |
|   &:not([size], [multiple])[iconic] {
 | |
|     padding-inline-start: calc(8px + 16px + 4px); /* spacing before image + image width + spacing after image */
 | |
|     background-size: auto 12px, 16px;
 | |
|     background-position: right 19px center, left 8px center;
 | |
| 
 | |
|     &:dir(rtl) {
 | |
|       background-position-x: left 19px, right 8px;
 | |
|     }
 | |
|   }
 | |
| }
 | |
| 
 | |
| #printer-picker {
 | |
|   background-image: url("chrome://global/skin/icons/arrow-down-12.svg"), url("chrome://global/skin/icons/print.svg");
 | |
| 
 | |
|   &[output="pdf"] {
 | |
|     background-image: url("chrome://global/skin/icons/arrow-down-12.svg"), url("chrome://global/skin/icons/page-portrait.svg");
 | |
|   }
 | |
| }
 | |
| 
 | |
| input:is([type="number"], [type="text"]) {
 | |
|   padding: var(--space-xxsmall);
 | |
|   padding-inline-start: var(--space-small);
 | |
| }
 | |
| 
 | |
| input[type="number"] {
 | |
|   box-sizing: content-box;
 | |
|   min-height: unset;
 | |
|   padding: 0;
 | |
|   padding-inline-start: var(--space-small);
 | |
|   margin: 0;
 | |
|   height: 1.5em;
 | |
|   width: 4em;
 | |
| }
 | |
| 
 | |
| input:is([type="checkbox"], [type="radio"]):disabled + label,
 | |
| input[type="radio"]:disabled + span > label {
 | |
|   opacity: 0.5;
 | |
| }
 | |
| 
 | |
| #custom-range {
 | |
|   margin: 0;
 | |
|   margin-top: var(--space-xsmall);
 | |
|   width: 100%;
 | |
| }
 | |
| 
 | |
| #percent-scale {
 | |
|   margin-inline-start: var(--space-xsmall);
 | |
| 
 | |
|   &:disabled {
 | |
|     /* Let clicks on the disabled input select the radio button */
 | |
|     pointer-events: none;
 | |
|   }
 | |
| }
 | |
| 
 | |
| .toggle-group-label {
 | |
|   padding: var(--space-xsmall) var(--space-small);
 | |
| 
 | |
|   #landscape + &::before {
 | |
|     content: url("chrome://global/skin/icons/page-landscape.svg");
 | |
|   }
 | |
| 
 | |
|   #portrait + &::before {
 | |
|     content: url("chrome://global/skin/icons/page-portrait.svg");
 | |
|   }
 | |
| }
 | |
| 
 | |
| #more-settings {
 | |
|   > summary {
 | |
|     list-style: none;
 | |
|     display: flex;
 | |
|     cursor: pointer;
 | |
|     align-items: center;
 | |
| 
 | |
|     > .twisty {
 | |
|       background-image: url("chrome://global/skin/icons/arrow-down-12.svg");
 | |
|       background-repeat: no-repeat;
 | |
|       background-position: center;
 | |
|       -moz-context-properties: fill;
 | |
|       fill: currentColor;
 | |
|       width: 12px;
 | |
|       height: 12px;
 | |
|     }
 | |
| 
 | |
|     > .label {
 | |
|       flex-grow: 1;
 | |
|     }
 | |
|   }
 | |
| 
 | |
|   &[open] > summary > .twisty {
 | |
|     background-image: url("chrome://global/skin/icons/arrow-up-12.svg");
 | |
|   }
 | |
| }
 | |
| 
 | |
| .vertical-margins,
 | |
| .horizontal-margins {
 | |
|   display: flex;
 | |
|   gap: var(--space-large);
 | |
|   margin-block: var(--space-xsmall);
 | |
| 
 | |
|   > .margin-pair {
 | |
|     width: calc(50% - (2 * var(--space-xsmall))); /* Half minus the gap */
 | |
| 
 | |
|     > .margin-descriptor {
 | |
|       display: block;
 | |
|       text-align: center;
 | |
|       margin-top: var(--space-xxsmall);
 | |
|     }
 | |
| 
 | |
|     > .margin-input {
 | |
|       width: 100%;
 | |
|       box-sizing: border-box;
 | |
|     }
 | |
|   }
 | |
| }
 | |
| 
 | |
| .horizontal-margins:dir(rtl) {
 | |
|   /* Swap between the left and right margin inputs to match their position
 | |
|    * in the form to their physical location they represent. */
 | |
|   flex-direction: row-reverse;
 | |
| }
 | |
| 
 | |
| #open-dialog-link {
 | |
|   display: flex;
 | |
|   justify-content: space-between;
 | |
|   align-items: center;
 | |
|   gap: var(--space-xsmall);
 | |
| 
 | |
|   &::after {
 | |
|     display: block;
 | |
|     flex-shrink: 0;
 | |
|     content: "";
 | |
|     background: url(chrome://global/skin/icons/open-in-new.svg) no-repeat center;
 | |
|     background-size: 12px;
 | |
|     -moz-context-properties: fill;
 | |
|     fill: currentColor;
 | |
|     width: 12px;
 | |
|     height: 12px;
 | |
|   }
 | |
| 
 | |
|   &:dir(rtl)::after {
 | |
|     transform: scaleX(-1);
 | |
|   }
 | |
| }
 | |
| 
 | |
| .footer-container {
 | |
|   flex: 0 1 auto;
 | |
| }
 | |
| 
 | |
| #print-progress {
 | |
|   background-image: image-set(
 | |
|     url("chrome://global/skin/icons/loading.png"),
 | |
|     url("chrome://global/skin/icons/loading@2x.png") 2x
 | |
|   );
 | |
|   background-repeat: no-repeat;
 | |
|   background-size: var(--size-item-small);
 | |
|   background-position: left center;
 | |
|   padding-inline-start: calc(var(--size-item-small) + var(--space-xsmall));
 | |
| 
 | |
|   &:dir(rtl) {
 | |
|     background-position-x: right;
 | |
|   }
 | |
| }
 | |
| 
 | |
| .error-message {
 | |
|   color: var(--text-color-error);
 | |
|   margin-top: var(--space-xsmall);
 | |
| }
 |