mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-08 20:47:44 +00:00
719 lines
16 KiB
CSS
719 lines
16 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/. */
|
|
|
|
/* Global Skin ------------------------------------------------------------- */
|
|
|
|
@import url(chrome://global/skin/);
|
|
|
|
%filter substitution
|
|
%include defines.inc
|
|
|
|
/* Typography & General Styling -------------------------------------------- */
|
|
|
|
:root {
|
|
font-family: "Segoe UI", sans-serif !important;
|
|
font-size: @font_normal@;
|
|
}
|
|
|
|
.text-link {
|
|
text-decoration: none;
|
|
color: #1167bd;
|
|
}
|
|
|
|
textbox,
|
|
menulist {
|
|
-moz-appearance: none;
|
|
min-width: @field_sizing@; /* button size */
|
|
min-height: @field_sizing@; /* button size */
|
|
margin: @metro_spacing_small@;
|
|
padding: @metro_spacing_xsmall@ @metro_spacing_small@;
|
|
|
|
font-size: @metro_font_normal@;
|
|
font-weight: normal !important;
|
|
|
|
color: @field_foreground_color@;
|
|
background: @field_background_color@;
|
|
border: @metro_border_thick@ solid @field_foreground_color@ !important;
|
|
border-radius: 0;
|
|
}
|
|
|
|
textbox[disabled],
|
|
menulist[disabled] {
|
|
border-color: @field_disabled_foreground_color@ !important;
|
|
color: @field_disabled_foreground_color@;
|
|
}
|
|
|
|
menulist:not([disabled]):hover:active {
|
|
color: @field_background_color@;
|
|
background: @field_foreground_color@;
|
|
}
|
|
|
|
/* Button ------------------------------------------------------------------ */
|
|
|
|
button {
|
|
-moz-appearance: none;
|
|
border: 1px solid;
|
|
font-size: @metro_font_normal@;
|
|
font-weight: normal;
|
|
margin: @metro_spacing_small@;
|
|
min-width: @field_sizing@;
|
|
min-height: 32px;
|
|
padding: 3px 16px;
|
|
}
|
|
|
|
/* Non-default button colors */
|
|
|
|
button {
|
|
background: linear-gradient(to bottom, hsl(210, 5%, 89%), hsl(210, 5%, 87%));
|
|
border-color: hsl(220, 5%, 86%);
|
|
color: hsl(0, 0%, 10%);
|
|
}
|
|
|
|
button:not([disabled]):hover {
|
|
background: linear-gradient(to bottom, hsl(210, 5%, 75%), hsl(210, 5%, 73%));
|
|
border-color: hsl(210, 5%, 71%);
|
|
color: hsl(0, 0%, 10%);
|
|
}
|
|
|
|
/* Default button colors */
|
|
|
|
.button-default,
|
|
.notification-button-default {
|
|
background: linear-gradient(to bottom, hsl(35, 100%, 50%), hsl(30, 100%, 50%));
|
|
border-color: hsl(30, 100%, 48%);
|
|
color: white;
|
|
}
|
|
|
|
.button-default:not([disabled]):hover,
|
|
.notification-button-default:not([disabled]):hover {
|
|
background: linear-gradient(to bottom, hsl(25, 100%, 47%), hsl(25, 100%, 45%));
|
|
border-color: hsl(25, 100%, 43%);
|
|
color: white;
|
|
}
|
|
|
|
/* Pushed button colors (both default and non-default */
|
|
|
|
/* Note: these need enough specificity to override all the :hover rules above. */
|
|
button:not([disabled]):hover:active,
|
|
button:not([disabled])[checked="true"],
|
|
.button-default:not([disabled])[checked="true"],
|
|
.notification-button-default:not([disabled])[checked="true"] {
|
|
background: linear-gradient(to bottom, hsl(210, 5%, 28%), hsl(210, 5%, 25%));
|
|
border-color: hsl(216, 4%, 27%);
|
|
color: white;
|
|
}
|
|
|
|
/* Disabled button colors (both default and non-default */
|
|
|
|
button[disabled] {
|
|
background: linear-gradient(to bottom, hsl(210, 3%, 93%), hsl(210, 3%, 92%));
|
|
border-color: hsl(210, 3%, 91%);
|
|
color: hsl(0, 0%, 60%);
|
|
}
|
|
|
|
/* Textbox ----------------------------------------------------------------- */
|
|
|
|
textbox[isempty="true"] {
|
|
color: @field_mid_foreground_color@;
|
|
}
|
|
|
|
.link {
|
|
color: blue;
|
|
text-decoration: underline;
|
|
}
|
|
|
|
spinbuttons {
|
|
border: none;
|
|
}
|
|
|
|
.spinbuttons-box {
|
|
border: none;
|
|
-moz-box-orient: horizontal;
|
|
-moz-box-direction: reverse;
|
|
}
|
|
|
|
.spinbuttons-down,
|
|
.spinbuttons-up {
|
|
border: none !important;
|
|
}
|
|
|
|
.spinbuttons-down {
|
|
list-style-image: url("chrome://browser/skin/images/arrowdown-16.png");
|
|
}
|
|
|
|
.spinbuttons-up {
|
|
list-style-image: url("chrome://browser/skin/images/arrowup-16.png");
|
|
}
|
|
|
|
/* Menu List --------------------------------------------------------------- */
|
|
|
|
menulist {
|
|
-moz-user-focus: ignore;
|
|
padding: @metro_spacing_xsmall@ 0;
|
|
-moz-padding-start: @metro_spacing_small@;
|
|
border-color: @field_disabled_foreground_color@ !important;
|
|
}
|
|
|
|
/* Popup Menus ------------------------------------------------------------- */
|
|
|
|
.menu-container {
|
|
position: absolute;
|
|
opacity: 0;
|
|
}
|
|
|
|
.menu-container[showingfrom="below"] {
|
|
transform: translateY(@metro_spacing_normal@);
|
|
}
|
|
|
|
.menu-container[showingfrom="above"] {
|
|
transform: translateY(-@metro_spacing_normal@);
|
|
}
|
|
|
|
.menu-container[hiding],
|
|
.menu-container[showing] {
|
|
transition: opacity ease-out 0.2s,
|
|
transform ease-out 0.2s;
|
|
}
|
|
|
|
.menu-container[showing] {
|
|
opacity: 1;
|
|
transform: none;
|
|
}
|
|
|
|
.menu-popup > richlistbox {
|
|
padding: 3px 0;
|
|
border: #000 solid @metro_border_thick@;
|
|
-moz-appearance: none;
|
|
display: -moz-box;
|
|
}
|
|
|
|
.menu-popup > richlistbox > scrollbox {
|
|
width: 100%;
|
|
}
|
|
|
|
.menu-popup richlistitem {
|
|
width: 100%;
|
|
min-height: @touch_button_small@;
|
|
min-width: @touch_action_minwidth@; /* keep the button from being too narrow */
|
|
border: 0 none;
|
|
-moz-box-align: center;
|
|
}
|
|
|
|
.menu-popup richlistitem:not([disabled]):hover {
|
|
background-color: #dedad0;
|
|
color: black;
|
|
}
|
|
|
|
.menu-popup richlistitem:not([disabled]):active {
|
|
background-color: @selected_color@ !important;
|
|
color: black;
|
|
}
|
|
|
|
.menu-popup > richlistbox[left-hand="true"] > richlistitem {
|
|
padding-left: 50px;
|
|
}
|
|
|
|
.menu-popup > richlistbox[left-hand="false"] > richlistitem {
|
|
padding-right: 50px;
|
|
}
|
|
|
|
/* Toolbar Button --------------------------------------------------------- */
|
|
|
|
toolbarbutton {
|
|
min-width: @metro_spacing_large@; /* primary button size */
|
|
min-height: @metro_spacing_large@; /* primary button size */
|
|
-moz-appearance: none;
|
|
margin: 0;
|
|
padding: @metro_spacing_xsmall@;
|
|
}
|
|
|
|
toolbarbutton:not(.show-text) .toolbarbutton-text {
|
|
display: none;
|
|
}
|
|
|
|
.toolbarbutton-icon[label]:not([label=""]),
|
|
.toolbarbutton-icon[type="menu"] {
|
|
-moz-margin-end: @metro_spacing_xsmall@;
|
|
}
|
|
|
|
toolbarbutton:not(.show-text) .toolbarbutton-icon,
|
|
toolbarbutton:not([image]) .toolbarbutton-icon,
|
|
toolbarbutton[image=''] .toolbarbutton-icon {
|
|
-moz-margin-end: 0;
|
|
}
|
|
|
|
toolbarbutton:hover,
|
|
toolbarbutton:hover:active,
|
|
toolbarbutton[open="true"] {
|
|
border-color: transparent;
|
|
}
|
|
|
|
/* Toggleswitch ------------------------------------------------------------ */
|
|
|
|
checkbox.toggleswitch {
|
|
margin: @metro_spacing_small@;
|
|
min-height: @metro_spacing_normal@;
|
|
font-weight: bold;
|
|
}
|
|
|
|
checkbox.toggleswitch hbox {
|
|
-moz-box-align: center;
|
|
}
|
|
|
|
checkbox.toggleswitch:not([checked]) .onlabel,
|
|
checkbox.toggleswitch[checked] .offlabel {
|
|
display: none;
|
|
}
|
|
|
|
checkbox.toggleswitch radiogroup {
|
|
border: @metro_border_thick@ solid @field_disabled_foreground_color@;
|
|
-moz-box-orient: horizontal;
|
|
}
|
|
|
|
checkbox.toggleswitch radio {
|
|
-moz-appearance: none;
|
|
margin: 0;
|
|
border: 0 none;
|
|
border-radius: 0;
|
|
background: 0 none;
|
|
padding: 0;
|
|
min-height: @metro_spacing_normal@;
|
|
height: @metro_spacing_normal@;
|
|
}
|
|
|
|
checkbox.toggleswitch[checked] radio.checkbox-radio-on,
|
|
checkbox.toggleswitch:not([checked]) radio.checkbox-radio-off {
|
|
width: @metro_spacing_normal@;
|
|
min-width: @metro_spacing_normal@;
|
|
background: #000;
|
|
margin: -@metro_border_thick@;
|
|
}
|
|
|
|
checkbox.toggleswitch[checked] radio.checkbox-radio-off,
|
|
checkbox.toggleswitch:not([checked]) radio.checkbox-radio-on {
|
|
width: @metro_spacing_xxxnormal@;
|
|
min-width: @metro_spacing_xxxnormal@;
|
|
margin: @metro_border_thin@;
|
|
}
|
|
|
|
checkbox.toggleswitch:not([checked]) radio.checkbox-radio-on {
|
|
background: @field_disabled_foreground_color@;
|
|
}
|
|
|
|
checkbox.toggleswitch[checked] radio.checkbox-radio-off {
|
|
background: @selected_color@;
|
|
}
|
|
|
|
checkbox.toggleswitch[checked] radio:last-child {
|
|
-moz-margin-start: 0;
|
|
}
|
|
|
|
checkbox.toggleswitch[checked] radio:first-child {
|
|
-moz-margin-end: 0;
|
|
}
|
|
|
|
/* Color Picker ------------------------------------------------------------ */
|
|
|
|
colorpicker > panel {
|
|
background-color: #767973;
|
|
}
|
|
|
|
colorpicker > vbox {
|
|
background-color: #767973;
|
|
}
|
|
|
|
/* Rich List Box ---------------------------------------------------------- */
|
|
|
|
richlistbox {
|
|
-moz-user-focus: ignore;
|
|
margin: 0;
|
|
}
|
|
|
|
richlistitem {
|
|
-moz-user-focus: ignore;
|
|
min-height: @metro_spacing_normal@; /* row size */
|
|
padding: @metro_spacing_small@;
|
|
}
|
|
|
|
richlistitem label.normal,
|
|
richlistitem description.normal,
|
|
richlistitem label.normal-black,
|
|
richlistitem description.normal-black,
|
|
richlistitem label.normal-bold,
|
|
richlistitem description.normal-bold{
|
|
white-space: pre-wrap;
|
|
word-wrap: break-word;
|
|
}
|
|
|
|
richlistitem label.normal,
|
|
richlistitem description.normal {
|
|
color: gray;
|
|
}
|
|
|
|
richlistitem label.normal-bold,
|
|
richlistitem description.normal-bold {
|
|
font-weight: bold;
|
|
}
|
|
|
|
richlistitem[selected] {
|
|
color: black;
|
|
background-color: white;
|
|
}
|
|
|
|
richlistitem:hover:active:not([selected]) {
|
|
background-color: #8db8d8;
|
|
}
|
|
|
|
richlistitem.section-header,
|
|
richlistitem[selected].section-header {
|
|
font-weight: bold;
|
|
color: #000;
|
|
background-color: lightgray;
|
|
}
|
|
|
|
richlistitem[selected] .hide-on-select,
|
|
richlistitem .show-on-select {
|
|
visibility: collapse;
|
|
}
|
|
|
|
richlistitem[selected] .show-on-select,
|
|
richlistitem .hide-on-select {
|
|
visibility: visible;
|
|
}
|
|
|
|
richlistitem[typeName="message"] {
|
|
border-bottom: 0;
|
|
}
|
|
|
|
/* Notification box ("info app bar") ---------------------------------------- */
|
|
|
|
notification {
|
|
background: hsl(0, 0%, 98%);
|
|
border-bottom: 1px solid hsla(0, 0%, 0%, .07);
|
|
box-shadow: 0 0 10px hsla(0, 0%, 0%, .1);
|
|
min-height: 64px;
|
|
}
|
|
|
|
.notification-inner {
|
|
border-style: none;
|
|
}
|
|
|
|
.notification-button {
|
|
-moz-margin-start: 0;
|
|
-moz-margin-end: 20px;
|
|
}
|
|
|
|
.messageImage {
|
|
width: 32px;
|
|
height: 32px;
|
|
-moz-margin-start: 40px;
|
|
-moz-margin-end: 16px;
|
|
}
|
|
|
|
/* If there is no image set, collapse the image but keep the starting margin */
|
|
.messageImage:not([src]) {
|
|
width: 0;
|
|
-moz-margin-end: 0;
|
|
}
|
|
|
|
.messageText {
|
|
margin: 0;
|
|
}
|
|
|
|
.messageCloseButton {
|
|
list-style-image: url("chrome://browser/skin/images/infobar-close.png");
|
|
padding: 0;
|
|
-moz-margin-start: 0;
|
|
-moz-margin-end: 40px;
|
|
-moz-image-region: rect(0, 40px, 40px, 0);
|
|
}
|
|
|
|
.messageCloseButton > .toolbarbutton-icon {
|
|
margin: 0;
|
|
}
|
|
|
|
.messageCloseButton:hover {
|
|
-moz-image-region: rect(0, 80px, 40px, 40px);
|
|
}
|
|
|
|
.messageCloseButton:hover:active {
|
|
-moz-image-region: rect(0, 120px, 40px, 80px);
|
|
}
|
|
|
|
.notification-link {
|
|
/* Make the link take up all the space before the buttons. */
|
|
-moz-box-flex: 9999;
|
|
}
|
|
|
|
|
|
/* Rich Grid ---------------------------------------------------------------- */
|
|
|
|
richgrid {
|
|
display: -moz-box;
|
|
-moz-box-sizing: border-box;
|
|
}
|
|
|
|
richgrid .meta-grid {
|
|
display: block;
|
|
}
|
|
|
|
richgriditem {
|
|
padding: @metro_spacing_small@;
|
|
}
|
|
|
|
richgriditem .richgrid-item-content {
|
|
border: @metro_border_thin@ solid @tile_border_color@;
|
|
box-shadow: 0 0 @metro_spacing_snormal@ rgba(0, 0, 0, 0.1);
|
|
-moz-box-sizing: border-box;
|
|
padding: 10px 8px 6px 8px;
|
|
position: relative;
|
|
}
|
|
.richgrid-item-content {
|
|
background: #fff;
|
|
}
|
|
|
|
richgriditem[selected] .richgrid-item-content::after {
|
|
content: "";
|
|
pointer-events: none;
|
|
display: block;
|
|
position: absolute;
|
|
top: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
left: 0;
|
|
background-image: url(chrome://browser/skin/images/tile-selected-check-hdpi.png);
|
|
background-origin: border-box;
|
|
background-position: right 0 top 0;
|
|
background-repeat: no-repeat;
|
|
/* scale the image whatever the dppx */
|
|
background-size: 35px 35px;
|
|
border: @metro_border_xthick@ solid @selected_color@;
|
|
}
|
|
|
|
richgriditem[crosssliding] {
|
|
z-index: 1;
|
|
}
|
|
|
|
/* ease the return to original position when cross-sliding */
|
|
richgriditem:not([crosssliding]) {
|
|
transition: transform ease-out 0.2s;
|
|
}
|
|
|
|
richgriditem .richgrid-icon-container {
|
|
padding-bottom: 2px;
|
|
}
|
|
|
|
richgriditem .richgrid-icon-box {
|
|
padding: 4px;
|
|
background: #fff;
|
|
opacity: 1.0;
|
|
}
|
|
|
|
|
|
/* tile pinned-state indication */
|
|
richgriditem[pinned] .richgrid-item-content::before {
|
|
pointer-events:none;
|
|
content: "";
|
|
display: block;
|
|
position: absolute;
|
|
width: 35px;
|
|
height: 35px;
|
|
right: 0;
|
|
left: auto;
|
|
top: 0;
|
|
background-image: url(chrome://browser/skin/images/pinned-hdpi.png);
|
|
background-position: center;
|
|
background-repeat: no-repeat;
|
|
/* scale the image whatever the dppx */
|
|
background-size: 70px 70px;
|
|
}
|
|
|
|
/* Selected _and_ pinned tiles*/
|
|
richgriditem[selected][pinned] .richgrid-item-content::before {
|
|
background-position: right -@metro_border_xthick@ top -@metro_border_xthick@;
|
|
width: 70px;
|
|
height: 70px;
|
|
}
|
|
|
|
richgriditem[pinned]:-moz-locale-dir(rtl) .richgrid-item-content::before {
|
|
left: 0;
|
|
right: auto;
|
|
}
|
|
|
|
richgriditem[customColor] {
|
|
color: #f1f1f1;
|
|
}
|
|
richgriditem[customImage] {
|
|
color: #1a1a1a;
|
|
}
|
|
|
|
|
|
richgriditem[customColor] .richgrid-icon-box {
|
|
opacity: 0.8;
|
|
background-color: #fff;
|
|
}
|
|
|
|
.richgrid-item-content[customImage] {
|
|
height: 160px;
|
|
width: 250px;
|
|
background-size: cover;
|
|
background-position: center;
|
|
background-repeat: no-repeat;
|
|
-moz-box-pack: end;
|
|
padding: 0px;
|
|
}
|
|
|
|
/* hide icon if there is an image background */
|
|
.richgrid-icon-container[customImage] {
|
|
visibility: collapse;
|
|
}
|
|
|
|
.richgrid-item-desc {
|
|
width: @tile_width@;
|
|
font-size: @metro_font_normal@;
|
|
margin-left: 0px;
|
|
padding-left: 0px !important;
|
|
}
|
|
|
|
.richgrid-item-content[customImage] > .richgrid-item-desc {
|
|
background: hsla(0,2%,98%,.95);
|
|
/*margin-bottom: 0px;
|
|
margin-right: 0px;*/
|
|
margin: 0px;
|
|
}
|
|
|
|
richgriditem image {
|
|
width: 24px;
|
|
height: 24px;
|
|
list-style-image: url("chrome://browser/skin/images/identity-icons-generic.png");
|
|
}
|
|
|
|
/* Dialogs ----------------------------------------------------------------- */
|
|
|
|
.modal-block,
|
|
.perm-modal-block {
|
|
background-color: rgba(0,0,0,.6);
|
|
-moz-box-align: center;
|
|
-moz-box-pack: center;
|
|
-moz-box-orient: horizontal;
|
|
}
|
|
|
|
.dialog-dark,
|
|
.panel-arrowcontent {
|
|
background: url("chrome://browser/skin/images/popup-bg-hdpi.png") left bottom repeat-x;
|
|
background-color: white;
|
|
border-radius: @border_radius_normal@;
|
|
box-shadow: black 0 @border_radius_tiny@ @border_radius_tiny@,
|
|
black 0 -@border_radius_tiny@ @border_radius_tiny@;
|
|
padding: @padding_normal@ 0; /* core spacing on top/bottom */
|
|
}
|
|
|
|
dialog {
|
|
-moz-box-orient: horizontal;
|
|
-moz-box-align: center;
|
|
-moz-box-pack: center;
|
|
}
|
|
|
|
dialog > .prompt-inner {
|
|
width: 600px;
|
|
}
|
|
|
|
.prompt-header > .prompt-message {
|
|
white-space: pre-wrap;
|
|
}
|
|
|
|
.prompt-header > .button-checkbox {
|
|
margin-left: @margin_large@;
|
|
}
|
|
|
|
.prompt-title {
|
|
padding-top: @metro_spacing_normal@;
|
|
text-align: start;
|
|
font-size: @metro_font_large@;
|
|
}
|
|
|
|
/* Authentication dialogs do not have a title */
|
|
.prompt-title:empty {
|
|
display: none;
|
|
}
|
|
|
|
.prompt-message {
|
|
text-align: start;
|
|
font-size: @metro_font_normal@;
|
|
}
|
|
|
|
.prompt-buttons {
|
|
-moz-box-pack: end;
|
|
text-align: end;
|
|
padding: @metro_spacing_normal@ 0;
|
|
}
|
|
|
|
.prompt-edit {
|
|
margin: @margin_xnormal@;
|
|
font-size: @font_normal@;
|
|
text-align: start;
|
|
}
|
|
|
|
/* Arrowbox ---------------------------------------------------------------- */
|
|
|
|
arrowbox {
|
|
-moz-appearance: none;
|
|
background: transparent;
|
|
border: none;
|
|
}
|
|
|
|
.arrowbox-dark .panel-arrowcontent {
|
|
color: white;
|
|
background: @panel_dark_color@;
|
|
}
|
|
|
|
.arrowbox-dark .panel-arrowcontent {
|
|
border: @border_width_large@ solid white;
|
|
border-radius: @border_radius_normal@;
|
|
box-shadow: black 0 @shadow_width_small@ @shadow_width_small@;
|
|
}
|
|
|
|
.panel-arrow[side="top"] {
|
|
list-style-image: url("chrome://browser/skin/images/arrowbox-up.png");
|
|
margin-bottom: -@margin_normal@;
|
|
}
|
|
|
|
.panel-arrow[side="bottom"] {
|
|
list-style-image: url("chrome://browser/skin/images/arrowbox-down.png");
|
|
margin-top: -@margin_normal@;
|
|
}
|
|
|
|
.panel-arrow[side="left"] {
|
|
list-style-image: url("chrome://browser/skin/images/arrowbox-horiz.png");
|
|
margin-right: -@margin_normal@;
|
|
transform: scaleX(-1);
|
|
}
|
|
|
|
.panel-arrow[side="right"] {
|
|
list-style-image: url("chrome://browser/skin/images/arrowbox-horiz.png");
|
|
margin-left: -@margin_normal@;
|
|
}
|
|
|
|
/*.meta -------------------------------------------------------------------- */
|
|
|
|
.meta {
|
|
background-color: @panel_light_color@;
|
|
background-image: url("chrome://browser/skin/images/firefox-watermark.png");
|
|
background-repeat: no-repeat;
|
|
background-position: center center;
|
|
padding: @metro_spacing_normal@ @metro_spacing_xxnormal@;
|
|
overflow: auto;
|
|
max-width: 100%;
|
|
width: 100%;
|
|
}
|
|
|
|
.meta-section {
|
|
margin: 0 @metro_spacing_large@;
|
|
}
|
|
|
|
.meta-section-title {
|
|
font-size: @metro_font_large@;
|
|
font-weight: 100;
|
|
}
|