2020-05-15 21:08:21 +00:00
|
|
|
// -------
|
|
|
|
// Please see `app/assets/stylesheets/page_bundles/ide_themes/README.md` for a guide on contributing new themes
|
|
|
|
// -------
|
2020-05-27 21:08:05 +00:00
|
|
|
.ide {
|
|
|
|
$bs-input-focus-border: #80bdff;
|
|
|
|
$bs-input-focus-box-shadow: rgba(0, 123, 255, 0.25);
|
|
|
|
|
|
|
|
a:not(.btn),
|
|
|
|
.btn-link:hover,
|
|
|
|
.btn-link:focus,
|
|
|
|
.btn-link:active {
|
|
|
|
color: var(--ide-link-color, $blue-600);
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
h1,
|
|
|
|
h2,
|
|
|
|
h3,
|
2020-05-08 12:09:37 +00:00
|
|
|
h4,
|
2020-04-21 15:21:10 +00:00
|
|
|
h5,
|
|
|
|
h6,
|
2020-04-30 21:09:47 +00:00
|
|
|
code,
|
|
|
|
.md table:not(.code),
|
2020-04-21 15:21:10 +00:00
|
|
|
.md,
|
|
|
|
.md p,
|
|
|
|
.context-header > a,
|
|
|
|
input,
|
|
|
|
textarea,
|
2020-05-04 12:09:46 +00:00
|
|
|
.dropdown-menu li button,
|
|
|
|
.dropdown-menu-selectable li a.is-active,
|
|
|
|
.dropdown-menu-inner-title,
|
2020-05-06 12:09:36 +00:00
|
|
|
.bs-callout,
|
|
|
|
.ide-pipeline .top-bar,
|
2020-05-27 21:08:05 +00:00
|
|
|
.ide-pipeline .top-bar .controllers .controllers-buttons,
|
|
|
|
.controllers-buttons svg,
|
|
|
|
.nav-links li a.active,
|
|
|
|
.md-area.is-focused {
|
|
|
|
color: var(--ide-text-color, $gl-text-color);
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
|
2020-05-27 21:08:05 +00:00
|
|
|
.badge.badge-pill {
|
|
|
|
color: var(--ide-text-color, $gray-800);
|
|
|
|
background-color: var(--ide-background, $badge-bg);
|
2020-05-06 12:09:36 +00:00
|
|
|
}
|
|
|
|
|
2020-05-27 21:08:05 +00:00
|
|
|
.nav-links:not(.quick-links) li:not(.md-header-toolbar) a,
|
|
|
|
.dropdown-menu-inner-content,
|
2020-04-21 15:21:10 +00:00
|
|
|
.file-row .file-row-icon svg,
|
2020-05-27 21:08:05 +00:00
|
|
|
.file-row:hover .file-row-icon svg {
|
|
|
|
color: var(--ide-text-color-secondary, $gl-text-color-secondary);
|
|
|
|
}
|
|
|
|
|
|
|
|
.nav-links:not(.quick-links) li:not(.md-header-toolbar) {
|
|
|
|
&:hover a,
|
|
|
|
&.active a,
|
|
|
|
a:hover,
|
|
|
|
a.active {
|
|
|
|
&,
|
|
|
|
.badge.badge-pill {
|
|
|
|
color: var(--ide-text-color, $black);
|
|
|
|
border-color: var(--ide-input-border, $gray-darkest);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
.drag-handle:hover {
|
|
|
|
background-color: var(--ide-dropdown-hover-background, $white-normal);
|
|
|
|
}
|
|
|
|
|
|
|
|
.card-header {
|
|
|
|
background-color: var(--ide-background, $white);
|
|
|
|
|
|
|
|
.badge.badge-pill {
|
|
|
|
background-color: var(--ide-dropdown-hover-background, $badge-bg);
|
|
|
|
}
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
.text-secondary {
|
2020-05-27 21:08:05 +00:00
|
|
|
color: var(--ide-text-color-secondary, $gl-text-color-secondary) !important;
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
|
2020-05-04 12:09:46 +00:00
|
|
|
input[type='search']::placeholder,
|
2020-04-21 15:21:10 +00:00
|
|
|
input[type='text']::placeholder,
|
2020-05-27 21:08:05 +00:00
|
|
|
textarea::placeholder {
|
|
|
|
color: var(--ide-input-border, $gl-text-color-tertiary);
|
|
|
|
}
|
|
|
|
|
2020-05-04 12:09:46 +00:00
|
|
|
.dropdown-input .fa {
|
2020-05-27 21:08:05 +00:00
|
|
|
color: var(--ide-input-border, $dropdown-input-fa-color);
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
|
2020-05-04 12:09:46 +00:00
|
|
|
.ide-nav-form .input-icon {
|
2020-05-27 21:08:05 +00:00
|
|
|
color: var(--ide-input-border, $dropdown-input-fa-color);
|
|
|
|
}
|
|
|
|
|
|
|
|
code {
|
|
|
|
background-color: var(--ide-background, $gray-100);
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
|
2020-05-06 12:09:36 +00:00
|
|
|
.bs-callout,
|
|
|
|
.ide-pipeline .top-bar,
|
|
|
|
.ide-terminal .top-bar {
|
2020-05-27 21:08:05 +00:00
|
|
|
background-color: var(--ide-background, $gray-light);
|
2020-04-30 21:09:47 +00:00
|
|
|
}
|
|
|
|
|
2020-05-06 12:09:36 +00:00
|
|
|
.bs-callout {
|
2020-05-27 21:08:05 +00:00
|
|
|
border-color: var(--ide-dropdown-background, $border-color);
|
2020-05-06 12:09:36 +00:00
|
|
|
|
|
|
|
code {
|
2020-05-27 21:08:05 +00:00
|
|
|
background-color: var(--ide-dropdown-background, $gray-100);
|
2020-05-06 12:09:36 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2020-05-27 21:08:05 +00:00
|
|
|
.common-note-form .md-area {
|
|
|
|
border-color: var(--ide-input-border, $border-color);
|
2020-05-06 12:09:36 +00:00
|
|
|
}
|
|
|
|
|
2020-05-27 21:08:05 +00:00
|
|
|
.md table:not(.code) tr th {
|
|
|
|
background-color: var(--ide-highlight-background, $gray-100);
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
&,
|
2020-05-27 21:08:05 +00:00
|
|
|
.card,
|
|
|
|
.common-note-form .md-area {
|
|
|
|
background-color: var(--ide-highlight-background, $white);
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
|
2020-05-06 12:09:36 +00:00
|
|
|
.card,
|
|
|
|
.card-header,
|
|
|
|
.ide-terminal .top-bar,
|
|
|
|
.ide-pipeline .top-bar {
|
2020-05-27 21:08:05 +00:00
|
|
|
border-color: var(--ide-border-color, $border-color);
|
|
|
|
}
|
|
|
|
|
|
|
|
hr {
|
|
|
|
border-color: var(--ide-border-color, darken($gray-normal, 8%));
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
|
2020-04-30 21:09:47 +00:00
|
|
|
.md h1,
|
|
|
|
.md h2,
|
|
|
|
.md blockquote,
|
|
|
|
.md table:not(.code) tbody td,
|
|
|
|
.md table:not(.code) tr th,
|
2020-05-27 21:08:05 +00:00
|
|
|
.nav-links:not(.quick-links),
|
|
|
|
.common-note-form .md-area.is-focused .nav-links {
|
|
|
|
border-color: var(--ide-border-color-alt, $white-dark);
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
|
2020-05-27 21:08:05 +00:00
|
|
|
pre {
|
|
|
|
border-color: var(--ide-border-color-alt, $gray-200);
|
2020-04-21 15:21:10 +00:00
|
|
|
|
2020-05-27 21:08:05 +00:00
|
|
|
code {
|
|
|
|
background-color: var(--ide-border-color, inherit);
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2020-05-27 21:08:05 +00:00
|
|
|
// highlight accents (based on navigation theme) should only apply
|
|
|
|
// in the default white theme and "none" theme.
|
|
|
|
&:not(.theme-white):not(.theme-none) {
|
|
|
|
.ide-sidebar-link.active {
|
|
|
|
color: var(--ide-highlight-accent, $gl-text-color);
|
|
|
|
box-shadow: inset 3px 0 var(--ide-highlight-accent, $gl-text-color);
|
|
|
|
|
|
|
|
&.is-right {
|
|
|
|
box-shadow: inset -3px 0 var(--ide-highlight-accent, $gl-text-color);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
.nav-links li.active a,
|
|
|
|
.nav-links li a.active {
|
|
|
|
border-color: var(--ide-highlight-accent, $gl-text-color);
|
|
|
|
}
|
2020-04-21 15:21:10 +00:00
|
|
|
|
2020-05-27 21:08:05 +00:00
|
|
|
.dropdown-menu .nav-links li a.active {
|
|
|
|
border-color: var(--ide-highlight-accent, $gl-text-color);
|
|
|
|
}
|
|
|
|
|
|
|
|
// for other themes, suppress different avatar default colors for simplicity
|
|
|
|
.avatar-container {
|
|
|
|
&,
|
|
|
|
.avatar {
|
|
|
|
color: var(--ide-text-color, $gl-text-color);
|
|
|
|
background-color: var(--ide-highlight-background, $white);
|
|
|
|
border-color: var(--ide-highlight-background, rgba($black, $gl-avatar-border-opacity));
|
|
|
|
}
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2020-05-04 12:09:46 +00:00
|
|
|
input[type='text'],
|
|
|
|
input[type='search'],
|
|
|
|
.filtered-search-box {
|
2020-05-27 21:08:05 +00:00
|
|
|
border-color: var(--ide-input-border, $border-color);
|
|
|
|
background: var(--ide-input-background, $white) !important;
|
|
|
|
}
|
|
|
|
|
|
|
|
input[type='text']:not([disabled]):not([readonly]):focus,
|
|
|
|
.md-area.is-focused {
|
|
|
|
border-color: var(--ide-input-border, $bs-input-focus-border);
|
|
|
|
box-shadow: 0 0 0 3px var(--ide-dropdown-background, $bs-input-focus-box-shadow);
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
input[type='text'],
|
2020-05-04 12:09:46 +00:00
|
|
|
input[type='search'],
|
|
|
|
.filtered-search-box,
|
2020-04-21 15:21:10 +00:00
|
|
|
textarea {
|
2020-05-27 21:08:05 +00:00
|
|
|
color: var(--ide-input-color, $gl-text-color) !important;
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
|
2020-05-04 12:09:46 +00:00
|
|
|
.filtered-search-box input[type='search'] {
|
2020-05-27 21:08:05 +00:00
|
|
|
border-color: transparent !important;
|
|
|
|
box-shadow: none !important;
|
2020-05-04 12:09:46 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
.filtered-search-token .value-container,
|
|
|
|
.filtered-search-term .value-container {
|
2020-05-27 21:08:05 +00:00
|
|
|
background-color: var(--ide-dropdown-hover-background, $white-normal);
|
|
|
|
color: var(--ide-text-color, $gl-text-color);
|
2020-05-04 12:09:46 +00:00
|
|
|
|
|
|
|
&:hover {
|
2020-05-27 21:08:05 +00:00
|
|
|
background-color: var(--ide-input-border, $gray-200);
|
2020-05-04 12:09:46 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2020-05-12 12:09:47 +00:00
|
|
|
@function calc-btn-hover-padding($original-padding, $original-border: 1px) {
|
2020-05-28 12:08:10 +00:00
|
|
|
@return calc(#{$original-padding + $original-border} - var(--ide-btn-hover-border-width, #{$original-border}));
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
|
2020-05-06 12:09:36 +00:00
|
|
|
.btn:not(.btn-link):not([disabled]):hover {
|
2020-05-27 21:08:05 +00:00
|
|
|
border-width: var(--ide-btn-hover-border-width, 1px);
|
2020-05-12 12:09:47 +00:00
|
|
|
padding: calc-btn-hover-padding(6px) calc-btn-hover-padding(10px);
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
|
2020-05-06 12:09:36 +00:00
|
|
|
.btn:not([disabled]).btn-sm:hover {
|
2020-05-12 12:09:47 +00:00
|
|
|
padding: calc-btn-hover-padding(4px) calc-btn-hover-padding(10px);
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
|
2020-05-06 12:09:36 +00:00
|
|
|
.btn:not([disabled]).btn-block:hover {
|
2020-05-12 12:09:47 +00:00
|
|
|
padding: calc-btn-hover-padding(6px) 0;
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
.btn-default,
|
|
|
|
.dropdown,
|
|
|
|
.dropdown-menu-toggle {
|
2020-05-27 21:08:05 +00:00
|
|
|
background-color: var(--ide-input-background, $white) !important;
|
|
|
|
color: var(--ide-input-color, $gl-text-color) !important;
|
|
|
|
border-color: var(--ide-btn-default-border, $border-color);
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
|
2020-05-27 21:08:05 +00:00
|
|
|
.dropdown-menu-toggle {
|
|
|
|
border-color: var(--ide-btn-default-border, $gray-darkest);
|
|
|
|
|
2020-04-21 15:21:10 +00:00
|
|
|
&:hover,
|
|
|
|
&:focus {
|
2020-05-27 21:08:05 +00:00
|
|
|
background-color: var(--ide-dropdown-btn-hover-background, $gray-darker) !important;
|
|
|
|
border-color: var(--ide-dropdown-btn-hover-border, $gray-darkest) !important;
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2020-05-27 21:08:05 +00:00
|
|
|
// In IDE, the only inverted buttons are `.btn-remove`
|
|
|
|
.btn-inverted.btn-remove {
|
|
|
|
color: var(--ide-input-color, $red-500) !important;
|
|
|
|
background-color: var(--ide-input-background, $white) !important;
|
|
|
|
border-color: var(--ide-btn-default-border, $red-500);
|
|
|
|
|
2020-04-21 15:21:10 +00:00
|
|
|
&:hover,
|
|
|
|
&:focus {
|
2020-05-27 21:08:05 +00:00
|
|
|
color: var(--ide-input-color, $red-700) !important;
|
|
|
|
background-color: var(--ide-input-background, $red-100) !important;
|
|
|
|
border-color: var(--ide-btn-default-hover-border, $red-500) !important;
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
|
2020-05-27 21:08:05 +00:00
|
|
|
&:active {
|
|
|
|
color: var(--ide-input-color, $red-800) !important;
|
|
|
|
background-color: var(--ide-input-background, $red-200) !important;
|
|
|
|
border-color: var(--ide-btn-default-hover-border, $red-600) !important;
|
|
|
|
}
|
|
|
|
}
|
2020-05-04 12:09:46 +00:00
|
|
|
|
2020-05-27 21:08:05 +00:00
|
|
|
.btn-default {
|
|
|
|
&:hover,
|
|
|
|
&:focus {
|
|
|
|
border-color: var(--ide-btn-default-hover-border, $border-white-normal) !important;
|
|
|
|
background-color: var(--ide-input-background, $white-normal) !important;
|
2020-05-04 12:09:46 +00:00
|
|
|
}
|
|
|
|
|
2020-05-27 21:08:05 +00:00
|
|
|
&:active,
|
|
|
|
.active {
|
|
|
|
border-color: var(--ide-btn-default-hover-border, $border-white-normal) !important;
|
|
|
|
background-color: var(--ide-input-background, $white-dark) !important;
|
2020-05-04 12:09:46 +00:00
|
|
|
}
|
2020-05-27 21:08:05 +00:00
|
|
|
}
|
2020-05-04 12:09:46 +00:00
|
|
|
|
2020-05-27 21:08:05 +00:00
|
|
|
.dropdown-menu {
|
|
|
|
color: var(--ide-text-color, $gl-text-color);
|
|
|
|
border-color: var(--ide-background, $border-color);
|
|
|
|
background-color: var(--ide-dropdown-background, $white);
|
2020-05-04 12:09:46 +00:00
|
|
|
|
2020-05-27 21:08:05 +00:00
|
|
|
.nav-links:not(.quick-links) {
|
|
|
|
background-color: var(--ide-dropdown-hover-background, $white);
|
|
|
|
border-color: var(--ide-dropdown-hover-background, $border-color);
|
|
|
|
}
|
|
|
|
|
|
|
|
.divider {
|
|
|
|
background-color: var(--ide-dropdown-hover-background, $gray-200);
|
|
|
|
border-color: var(--ide-dropdown-hover-background, $gray-200);
|
2020-05-04 12:09:46 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
li > a:not(.disable-hover):hover,
|
|
|
|
li > a:not(.disable-hover):focus,
|
|
|
|
li button:not(.disable-hover):hover,
|
|
|
|
li button:not(.disable-hover):focus,
|
|
|
|
li button.is-focused {
|
2020-05-27 21:08:05 +00:00
|
|
|
background-color: var(--ide-dropdown-hover-background, $gray-darker);
|
|
|
|
color: var(--ide-text-color, $gl-text-color);
|
2020-05-04 12:09:46 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
.dropdown-title,
|
|
|
|
.dropdown-input {
|
2020-05-27 21:08:05 +00:00
|
|
|
border-color: var(--ide-dropdown-hover-background, $gray-200) !important;
|
2020-05-04 12:09:46 +00:00
|
|
|
}
|
|
|
|
|
2020-05-12 12:09:47 +00:00
|
|
|
.btn-primary,
|
|
|
|
.btn-info {
|
2020-05-27 21:08:05 +00:00
|
|
|
background-color: var(--ide-btn-primary-background, $blue-500);
|
|
|
|
border-color: var(--ide-btn-primary-border, $blue-600) !important;
|
2020-04-21 15:21:10 +00:00
|
|
|
|
|
|
|
&:hover,
|
|
|
|
&:focus {
|
2020-05-27 21:08:05 +00:00
|
|
|
background-color: var(--ide-btn-primary-background, $blue-600);
|
|
|
|
border-color: var(--ide-btn-primary-hover-border, $blue-700) !important;
|
|
|
|
}
|
|
|
|
|
|
|
|
&:active,
|
|
|
|
&.active {
|
|
|
|
background-color: var(--ide-btn-primary-background, $blue-700);
|
|
|
|
border-color: var(--ide-btn-primary-hover-border, $blue-800) !important;
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
.btn-success {
|
2020-05-27 21:08:05 +00:00
|
|
|
background-color: var(--ide-btn-success-background, $green-500);
|
|
|
|
border-color: var(--ide-btn-success-border, $green-600) !important;
|
2020-04-21 15:21:10 +00:00
|
|
|
|
|
|
|
&:hover,
|
|
|
|
&:focus {
|
2020-05-27 21:08:05 +00:00
|
|
|
background-color: var(--ide-btn-success-background, $green-600);
|
|
|
|
border-color: var(--ide-btn-success-hover-border, $green-700) !important;
|
|
|
|
}
|
|
|
|
|
|
|
|
&:active,
|
|
|
|
&.active {
|
|
|
|
background-color: var(--ide-btn-success-background, $green-700);
|
|
|
|
border-color: var(--ide-btn-success-hover-border, $green-800) !important;
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
.btn[disabled] {
|
2020-05-27 21:08:05 +00:00
|
|
|
background-color: var(--ide-btn-default-background, $gray-light) !important;
|
|
|
|
border: 1px solid var(--ide-btn-disabled-border, $gray-200) !important;
|
|
|
|
color: var(--ide-btn-disabled-color, $gl-text-color-disabled) !important;
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
|
2020-05-19 15:08:04 +00:00
|
|
|
.md table:not(.code) tbody {
|
2020-05-27 21:08:05 +00:00
|
|
|
background-color: var(--ide-border-color, $white);
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
.animation-container {
|
|
|
|
[class^='skeleton-line-'] {
|
2020-05-27 21:08:05 +00:00
|
|
|
background-color: var(--ide-animation-gradient-1, $gray-100);
|
2020-04-21 15:21:10 +00:00
|
|
|
|
|
|
|
&::after {
|
|
|
|
background-image: linear-gradient(to right,
|
2020-05-27 21:08:05 +00:00
|
|
|
var(--ide-animation-gradient-1, $gray-100) 0%,
|
|
|
|
var(--ide-animation-gradient-2, $gray-10) 20%,
|
|
|
|
var(--ide-animation-gradient-1, $gray-100) 40%,
|
|
|
|
var(--ide-animation-gradient-1, $gray-100) 100%);
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2020-04-30 21:09:47 +00:00
|
|
|
|
|
|
|
.idiff.addition {
|
2020-05-27 21:08:05 +00:00
|
|
|
background-color: var(--ide-diff-insert, $line-added-dark);
|
2020-04-30 21:09:47 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
.idiff.deletion {
|
2020-05-27 21:08:05 +00:00
|
|
|
background-color: var(--ide-diff-remove, $line-removed-dark);
|
2020-04-30 21:09:47 +00:00
|
|
|
}
|
2020-04-21 15:21:10 +00:00
|
|
|
|
2020-05-27 21:08:05 +00:00
|
|
|
~ .popover {
|
|
|
|
box-shadow: none;
|
|
|
|
}
|
2020-04-21 15:21:10 +00:00
|
|
|
}
|
2020-05-04 12:09:46 +00:00
|
|
|
|
2020-05-27 21:08:05 +00:00
|
|
|
.navbar:not(.theme-white):not(.theme-none) {
|
|
|
|
border-bottom-color: transparent;
|
2020-05-04 12:09:46 +00:00
|
|
|
}
|