summaryrefslogtreecommitdiffstats
path: root/devtools/client/aboutdebugging/src/base.css
diff options
context:
space:
mode:
Diffstat (limited to 'devtools/client/aboutdebugging/src/base.css')
-rw-r--r--devtools/client/aboutdebugging/src/base.css420
1 files changed, 420 insertions, 0 deletions
diff --git a/devtools/client/aboutdebugging/src/base.css b/devtools/client/aboutdebugging/src/base.css
new file mode 100644
index 0000000000..2499503b4e
--- /dev/null
+++ b/devtools/client/aboutdebugging/src/base.css
@@ -0,0 +1,420 @@
+/* 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 {
+ /* Colors from common.css */
+ --bg-color: #f9f9fa; /* --in-content-background-color */
+ --text-color: #0c0c0d; /* --in-content-text-color */
+
+ --border-color: #d7d7db; /* --in-content-border-color */
+
+ --box-background: #fff;
+ --box-border-color: #d7d7db;
+
+ --category-background-hover: rgba(12,12,13,0.1);
+ --category-text: rgba(12,12,13);
+ --category-text-selected: #0a84ff;
+
+ /* Dimensions from common.css #categories > .category */
+ /* TODO: Values are not based on photon's 4px base distance, see bug 1501638 */
+ --category-height: 48px;
+ --category-padding: 10px;
+ --category-transition-duration: 150ms;
+
+ --link-color: #0a8dff;
+ --link-color-active: #003eaa;
+ --link-color-hover: #0060df;
+
+ /* Colors from Photon */
+ --success-background: #30e60b;
+ --warning-background: #fffbd6; /* from the Web Console */
+ --warning-border: rgba(164, 127, 0, 0.27); /* yellow-70(#a47f00) at 27% */
+ --warning-icon: var(--yellow-65); /* from the Web Console */
+ --warning-text: var(--yellow-80); /* from the Web Console */
+ --error-background: #fdf2f5; /* from the Web Console */
+ --error-border: rgba(90, 0, 2, 0.16); /* red-80(#5a0002) at 16% */
+ --error-icon: var(--red-60); /* from the Web Console */
+ --error-text: var(--red-70); /* from the Web Console */
+ --highlight-50: #0a84ff;
+ --grey-20: #ededf0; /* for ui, no special semantic */
+ --grey-30: #d7d7db; /* for ui, no special semantic */
+ --grey-50: #737373; /* for ui, no special semantic */
+ --grey-90: #0c0c0d; /* for ui, no special semantic */
+ --grey-90-a10: rgba(12, 12, 13, 0.1);
+ --grey-90-a20: rgba(12, 12, 13, 0.2);
+ --grey-90-a30: rgba(12, 12, 13, 0.3);
+ --grey-90-a60: rgba(12, 12, 13, 0.6);
+ --grey-90-a80: rgba(12, 12, 13, 0.8);
+ --red-70: #a4000f; /* for ui, no special semantic */
+ --white-100: #fff; /* for ui, no special semantic */
+ --yellow-60: #d7b600; /* for ui, no special semantic */
+ --yellow-70: #a47f00; /* for ui, no special semantic */
+
+ /* Typography from Photon */
+ /* See https://firefox-dev.tools/photon/visuals/typography.html */
+ --body-10-font-size: 13px;
+ --body-10-font-weight: 400;
+ --body-20-font-size: 15px;
+ --body-20-font-weight: 400;
+ --body-20-font-weight-bold: 700;
+ --caption-10-font-size: 11px;
+ --caption-10-font-weight: 400;
+ --caption-20-font-size: 13px;
+ --caption-20-font-weight: 400;
+ --caption-20-color: var(--grey-50);
+ --display-10-font-size: 28px;
+ --display-10-font-weight: 200;
+ --title-20-font-size: 17px;
+ --title-20-font-weight: 600;
+ --title-30-font-size: 22px;
+ --title-30-font-weight: 300;
+
+ /* Global layout vars */
+ --page-width: 664px;
+ --base-unit: 4px;
+
+ /* Global styles */
+ --base-font-style: message-box;
+ --base-font-size: var(--body-10-font-size);
+ --base-font-weight: var(--body-10-font-weight);
+ --base-line-height: 1.8;
+ --icon-label-font-size: var(--body-10-font-size);
+ --message-font-size: var(--body-10-font-size);
+ --button-font-size: var(--base-font-size);
+ --micro-font-size: 11px;
+ --monospace-font-family: monospace;
+
+ --card-separator-color: var(--grey-20);
+ --card-shadow-blur-radius: var(--base-unit);
+
+ /*
+ * Variables particular to about:debugging
+ */
+ --alt-heading-icon-size: calc(var(--base-unit) * 6);
+ --alt-heading-icon-gap: var(--base-unit);
+ --main-heading-icon-size: calc(var(--base-unit) * 17); /* 4px * 17 = 68px */
+ --main-heading-icon-gap: calc(var(--base-unit) * 3);
+ --main-subheading-icon-size: calc(var(--base-unit) * 4);
+ --main-subheading-heading-icon-gap: calc(var(--base-unit) * 2);
+}
+
+/*
+* Reset some tags
+*/
+
+html {
+ font: var(--base-font-style);
+}
+
+body {
+ margin: 0;
+ padding: 0;
+ color: var(--text-color);
+ font-size: var(--base-font-size);
+ font-weight: var(--base-font-weight);
+ line-height: var(--base-line-height);
+ background: var(--bg-color);
+}
+
+dd {
+ margin: 0;
+ padding: 0;
+}
+
+ul {
+ list-style: none;
+ margin: 0;
+ padding: 0;
+}
+
+a {
+ color: var(--link-color);
+ text-decoration: none;
+}
+a:hover {
+ color: var(--link-color-hover);
+}
+a:active {
+ color: var(--link-color-active);
+}
+
+p, h1 {
+ margin: 0;
+}
+
+/*
+* Utils
+*/
+
+/* text that needs to be cut with … */
+.ellipsis-text {
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+}
+
+/* Technical text that should use a monospace font, such as code, error messages. */
+.technical-text {
+ font-family: var(--monospace-font-family);
+}
+
+/* Links that need to look like current text */
+.undecorated-link,
+.undecorated-link:hover {
+ text-decoration: none;
+ color: currentColor;
+}
+
+/* Text needs to wrap anywhere */
+.word-wrap-anywhere {
+ word-wrap: anywhere;
+}
+
+/*
+* Typography
+*/
+
+/* Main style for heading (i.e. h1) */
+.main-heading {
+ font-size: var(--display-10-font-size);
+ font-weight: var(--display-10-font-weight);
+ line-height: 1.2;
+}
+
+.main-heading__icon {
+ width: 100%;
+}
+
+.main-heading-subtitle {
+ font-size: var(--title-30-font-size);
+ font-weight: var(--title-30-font-weight);
+}
+
+/* Main style for a subheading (i.e. h2). It features an icon */
+/* +--------+-------------+
+* | [Icon] | Lorem ipsum |
+* +--------+-------------+
+*/
+.main-subheading {
+ margin-block: calc(var(--base-unit) * 4) 0;
+ font-size: var(--title-20-font-size); /* Note: this is from Photon Title 20 */
+ font-weight: var(--title-20-font-weight); /* Note: this is from Photon Title 20 */
+
+ display: grid;
+ grid-template-columns: var(--main-subheading-icon-size) 1fr;
+ grid-column-gap: var(--main-subheading-heading-icon-gap);
+ align-items: center;
+}
+
+.main-subheading__icon {
+ width: 100%;
+ fill: currentColor;
+ -moz-context-properties: fill;
+}
+
+/* Alternative style for a heading (i.e. h1) */
+.alt-heading {
+ font-weight: var(--title-20-font-weight);
+ font-size: var(--title-20-font-size);
+
+ margin-block-start: 0;
+ margin-block-end: calc(var(--base-unit) * 4);
+}
+
+.alt-heading--larger {
+ font-size: var(--title-30-font-size);
+ font-weight: var(--title-30-font-weight);
+}
+
+/* Alternative style for a subheading (i.e. h2). It features an icon */
+/* +--------+-------------+
+* | [Icon] | Lorem ipsum |
+* +--------+-------------+
+*/
+.alt-subheading {
+ margin-block-start: calc(var(--base-unit) * 4);
+ font-weight: 600;
+ font-size: 1.14em;
+ line-height: 1.4em; /* odd value - from common.inc.css */
+
+ display: grid;
+ grid-template-columns: var(--alt-heading-icon-size) 1fr;
+ grid-column-gap: var(--alt-heading-icon-gap);
+ align-items: center;
+}
+
+.alt-subheading__icon {
+ width: 100%;
+ fill: currentColor;
+ -moz-context-properties: fill;
+}
+
+/*
+* Layout elements
+*/
+
+/* for horizontal rules / separators */
+.separator {
+ border-style: solid none none none;
+ border-color: var(--border-color);
+}
+
+/* adds breathing space to the separator */
+.separator--breathe {
+ margin: calc(var(--base-unit) * 5) 0;
+}
+
+/* a series of button-like elements, layed out horizontally */
+.toolbar {
+ display: flex;
+ column-gap: calc(var(--base-unit) * 3);
+}
+
+.toolbar--right-align {
+ justify-content: end;
+}
+
+/*
+Form controls
+*/
+.default-button, .default-input {
+ box-sizing: border-box;
+ font-size: 1em;
+}
+
+/* Buttons from Photon */
+.default-button, .primary-button {
+ appearance: none;
+ margin: 0;
+ height: calc(var(--base-unit) * 8);
+ padding-inline-start: calc(var(--base-unit) * 5);
+ padding-inline-end: calc(var(--base-unit) * 5);
+
+ border: none;
+ border-radius: calc(var(--base-unit) / 2);
+
+ font-size: var(--button-font-size);
+}
+
+/* Disabled state for buttons from Photon */
+.default-button:disabled, .primary-button:disabled {
+ opacity: 0.4;
+}
+
+/* Smaller variant size for buttons, from Photon */
+.default-button--micro, .primary-button--micro {
+ padding-inline-start: calc(2 * var(--base-unit));
+ padding-inline-end: calc(2 * var(--base-unit));
+ font-size: var(--micro-font-size);
+ height: calc(var(--base-unit) * 6);
+}
+
+/* Photon button representing a primary action */
+.primary-button {
+ color: var(--white-100);
+ background-color: var(--blue-60);
+}
+
+.primary-button:enabled:hover {
+ background-color: var(--blue-70);
+}
+
+.primary-button:enabled:active {
+ background-color: var(--blue-80);
+}
+
+/* Photon standard button */
+.default-button {
+ color: var(--grey-90); /* Note: this is from Photon Default button */
+ background-color: var(--grey-90-a10); /* Note: this is from Photon Default button */
+}
+
+.default-button:enabled:hover {
+ background: var(--grey-90-a20); /* Note: this is from Photon Default button */
+}
+
+.default-button:enabled:active {
+ background: var(--grey-90-a30); /* Note: this is from Photon Default button */
+}
+
+/* Photon ghost button. Icon button with no background */
+.ghost-button {
+ background: transparent;
+ border: none;
+ border-radius: calc(var(--base-unit) / 2);
+ fill: var(--grey-90-a80);
+ height: calc(var(--base-unit) * 6);
+ padding: calc(var(--base-unit));
+ width: calc(var(--base-unit) * 6);
+
+ -moz-context-properties: fill;
+}
+
+.ghost-button:hover {
+ background-color: var(--grey-30);
+}
+
+.ghost-button:active {
+ background-color: var(--grey-40);
+}
+
+/* Standard inputs */
+.default-input {
+ line-height: unset;
+ padding: 0 calc(var(--base-unit) * 2);
+ height: 100%;
+
+ border: 1px solid var(--box-border-color);
+ border-radius: 2px;
+ color: var(--text-color);
+ background-color: var(--box-background);
+}
+
+/*
+* Other UI components
+*/
+
+/*
+* A small, colored badge.
+* NOTE: styles borrowed from Photon's micro buttons (there aren't badges)
+*/
+.badge {
+ background: var(--grey-30);
+ border-radius: calc(var(--base-unit) / 2);
+ font-size: var(--micro-font-size);
+ padding: var(--base-unit) calc(2 * var(--base-unit));
+}
+
+.badge--info {
+ background: var(--highlight-50);
+}
+
+.badge--success {
+ background: var(--success-background);
+}
+
+.badge--warning {
+ background: var(--warning-background);
+}
+
+.badge--error {
+ background: var(--error-background);
+}
+
+/*
+ * Card UI, from Photon
+ */
+.card {
+ background-color: var(--white-100); /* from common.inc.css */
+ border-radius: var(--card-shadow-blur-radius); /* from common.inc.css */
+ box-shadow: 0 1px 4px var(--grey-90-a10); /* from common.inc.css */
+ box-sizing: border-box;
+ min-width: min-content;
+ padding-block: calc(var(--base-unit) * 5);
+}
+
+.card__heading {
+ font-size: var(--title-20-font-size); /* Note: this is from Photon Title 20 */
+ font-weight: var(--title-20-font-weight); /* Note: this is from Photon Title 20 */
+}