Headless CMS and Content Managment Hub
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

763 lines
14 KiB

@import './../../node_modules/bootstrap/scss/mixins/_buttons';
//
// Bade colors
//
.badge {
& {
font-size: .9rem;
font-weight: normal;
padding: .25rem .6rem;
}
&-primary {
background: $color-badge-primary-background;
color: $color-badge-primary-foreground;
}
&-secondary {
background: $color-badge-secondary-background;
color: $color-badge-secondary-foreground;
}
&-success {
background: $color-badge-success-background;
color: $color-badge-success-foreground;
}
&-info {
background: $color-badge-info-background;
color: $color-badge-info-foreground;
}
&-warning {
background: $color-badge-warning-background;
color: $color-badge-warning-foreground;
}
&-danger {
background: $color-badge-danger-background;
color: $color-badge-danger-foreground;
}
}
//
// Alert overrides.
//
.alert-success,
.alert-warning,
.alert-info,
.alert-danger {
& {
border: 0;
}
.alert-link {
color: $color-dark-foreground !important;
font-size: inherit;
font-weight: normal;
text-decoration: underline;
}
.close {
& {
font-size: 1.6rem;
font-weight: 400;
padding-top: .25rem;
}
&:hover,
&:focus {
color: inherit;
}
}
}
.alert-info {
background: $color-theme-blue;
border: 0;
}
.alert-hint {
background: lighten($color-theme-blue, 35%);
border: 1px solid $color-border;
border-radius: 0;
color: $color-text;
font-size: 90%;
font-weight: normal;
.alert-link {
color: $color-text !important;
}
i {
color: $color-theme-blue;
font-size: 1.2rem;
font-weight: normal;
vertical-align: text-bottom;
}
}
a {
&:disabled,
&.disabled {
opacity: .8;
pointer-events: none;
}
&.btn {
&:focus {
color: inherit;
}
}
&.pointer {
cursor: pointer;
}
&.force {
& {
color: $color-theme-blue !important;
}
&:hover {
color: inherit;
cursor: pointer;
text-decoration: underline !important;
}
}
}
//
// Fix navbar.
//
.navbar {
// Use fixed height to reduce problems with dynamic elements.
& {
height: $size-navbar-height;
}
&-nav {
line-height: 2.2rem;
}
// Ensure that dropdown is always under nav bar.
.dropdown-menu {
top: 2.6rem;
}
}
.navbar-nav {
.nav-link {
cursor: pointer;
}
.nav-icon {
& {
line-height: 2rem;
margin-left: .5rem;
margin-right: 0;
position: relative;
vertical-align: middle;
}
.nav-link {
color: $color-dark-foreground;
padding-bottom: 0;
padding-top: 0;
i {
font-size: 1.5rem;
font-weight: lighter;
vertical-align: middle;
}
}
.badge {
@include absolute(-.25rem, auto, auto, -.375rem);
background: $color-theme-error;
font-size: .75rem;
font-weight: normal;
padding: .25rem .5rem;
}
}
}
//
// Restyle dropdown menu.
//
.dropdown-menu {
// White dropdown menu without border and shadow.
& {
@include box-shadow-outer(0, 3px, 16px, .2);
background: $panel-light-background;
border: 0;
z-index: 1200;
}
a {
// Special style for menu item to delete something.
&.dropdown-item-delete {
& {
color: $color-theme-error;
}
&:hover {
color: $color-theme-error-dark;
}
&:active {
background: $color-theme-error-dark;
}
&:disabled,
&.disabled {
color: lighten($color-theme-error, 20%);
}
}
&.dropdown-item {
// Make the color white on active.
&:active {
color: $color-dark-foreground;
}
}
}
}
//
// Breadcrump
//
.breadcrumb {
& {
background: none;
border: 1px solid $color-border;
margin-bottom: 2rem;
}
&.steps {
& {
padding: 0;
}
.breadcrumb-item {
& {
background: url('data:image/svg+xml;charset=UTF-8,%3csvg xmlns="http://www.w3.org/2000/svg" width="7" height="20"%3e%3cpath d="M0 0l7 10-7 10" fill="none" stroke="%23e4e7e9" stroke-width=".5"/%3e%3c/svg%3e');
background-position-x: right;
background-repeat: no-repeat;
background-size: contain;
color: $color-text-decent;
padding: .75rem 2rem .75rem 1rem;
a {
color: $color-text-decent !important;
}
}
&.active {
color: $color-text;
a {
color: $color-text !important;
}
}
&.done {
color: $color-theme-green !important;
a {
color: $color-theme-green !important;
}
}
&:last-child {
background: none;
}
&::before {
content: none;
}
}
}
&-item {
i {
display: none;
}
&::before {
color: darken($color-border, 10%);
}
&.done {
color: $color-theme-green;
a {
color: $color-theme-green !important;
}
i {
display: inline-block;
}
}
}
}
.dropdown-divider {
&:first-child {
display: none;
}
&:last-child {
display: none;
}
& + .dropdown-divider {
display: none;
}
}
//
// Dark vertical menu for dark panels.
//
.nav-dark {
& {
background: $color-dark2-background;
}
.nav-item + .nav-item {
margin: 0;
}
&-bordered {
.nav-link {
border-bottom: 1px solid $color-dark2-separator;
}
.nav-item {
&:last-child {
.nav-link {
// Keep border between two items, not after last item.
border: 0;
}
}
}
}
.nav-link {
& {
color: $color-dark2-foreground;
}
&:hover,
&.active {
color: $color-dark1-focus-foreground;
}
&.active {
background: $color-dark2-active-background;
}
}
}
//
// Tab control navigation.
//
.nav-tabs2 {
& {
@include absolute(auto, auto, 0, 1.25rem);
}
& .nav-link {
& {
border-bottom: .25rem solid transparent;
color: $color-text;
cursor: pointer;
margin: 0 1rem;
padding: 1rem 0;
text-align: center;
}
&.active {
font-weight: bold;
}
&.active,
&:hover {
border-color: $color-theme-blue;
}
}
}
//
// Corresponding icon colors for external login buttons.
//
.icon {
&-github {
color: $color-extern-github-icon;
}
&-google {
color: $color-extern-google-icon;
}
&-microsoft {
color: $color-extern-microsoft-icon;
}
&-twitter {
color: $color-extern-twitter-icon;
}
}
.icon-sm {
font-size: 70%;
}
//
// Button improvements
//
.btn {
// Buttons for external logins.
&-github {
@include button-variant($color-extern-github, $color-extern-github);
&:hover,
&:focus {
.icon-github {
color: darken($color-extern-github-icon, 5%);
}
}
}
&-google {
@include button-variant($color-extern-google, $color-extern-google);
&:hover,
&:focus {
.icon-google {
color: darken($color-extern-google-icon, 5%);
}
}
}
&-microsoft {
@include button-variant($color-extern-microsoft, $color-extern-microsoft);
&:hover,
&:focus {
.icon-microsoft {
color: darken($color-extern-microsoft-icon, 5%);
}
}
}
&-twitter {
@include button-variant($color-extern-twitter, $color-extern-twitter);
& {
color: $color-dark-foreground;
}
&:hover,
&:focus {
.icon-twitter {
color: darken($color-extern-twitter-icon, 5%);
}
}
}
// Special radio button.
&-radio {
& {
@include border-radius;
background: transparent;
border: 1px solid $color-border;
color: $color-text-decent;
cursor: pointer;
font-size: 1.5rem;
font-weight: normal;
margin-right: .5rem;
text-align: center;
width: 4.5rem;
}
i {
color: $color-border-dark;
}
.radio-label {
display: block;
font-size: .7rem;
font-weight: bold;
line-height: 1.5rem;
margin-left: -.5rem;
margin-right: -.5rem;
}
.radio-input {
display: none;
}
&.active {
& {
background: none;
border-color: $color-theme-blue;
color: $color-theme-blue;
}
i {
color: $color-theme-blue;
}
&:hover {
color: $color-theme-blue-dark;
i {
color: $color-theme-blue-dark;
}
}
}
&:hover {
color: $color-theme-blue;
i {
color: $color-theme-blue;
}
}
}
// Special button groups
&-group {
.btn-toggle {
& {
background: $color-dark-foreground;
border: 1px solid $color-theme-secondary;
}
&.btn-primary {
@include build-toggle-button($color-theme-blue, $color-badge-primary-background);
}
&.btn-info {
@include build-toggle-button($color-theme-info, $color-badge-info-background);
}
&.btn-danger {
@include build-toggle-button($color-theme-error, $color-badge-danger-background);
}
&.btn-success {
@include build-toggle-button($color-theme-green, $color-badge-success-background);
}
&.btn-warning {
@include build-toggle-button($color-theme-orange, $color-badge-warning-background);
}
}
.btn + .btn-toggle {
margin-left: -2px;
}
}
// Link buttons only exists with blue text color in bootstrap. Provide them for all colors.
&-text {
&,
&-primary {
@include build-text-button($color-theme-blue);
}
&-secondary {
@include build-text-button($color-text-decent);
}
&-danger {
@include build-text-button($color-theme-error);
}
&-success {
@include build-text-button($color-theme-green);
}
&-info {
@include build-text-button($color-theme-info);
}
&-warning {
@include build-text-button($color-theme-orange);
}
&-secondary2 {
@include build-text-button($color-text);
}
}
}
$icon-size: 4.5rem;
//
// Type icons, for example for apps or schemas
//
.type {
& {
margin-bottom: .5rem;
}
&-title {
font-weight: bold;
margin-bottom: 0;
margin-top: -.25rem;
}
&-text {
font-size: .9rem;
}
.btn-radio {
& {
font-size: 1.75rem;
font-weight: normal;
height: $icon-size;
line-height: $icon-size;
}
i {
color: $color-theme-blue;
}
.radio-input {
display: none;
}
}
.radio-input {
display: none;
}
}
//
// Restyle modal dialogs.
//
.modal {
&-header,
&-footer {
flex-shrink: 0;
}
&-body {
overflow-y: auto;
}
&-header {
& {
@include border-radius-top(.25rem);
background: $color-modal-header-background;
border: 0;
color: $color-modal-header-foreground;
}
h4 {
font-size: 1rem;
font-weight: normal;
}
.close {
& {
color: $color-modal-header-foreground;
}
&:hover {
color: lighten($color-modal-header-foreground, 15%);
}
}
}
&-content {
@include box-shadow-outer(0, 8px, 16px, .3);
border: 0;
border-radius: .4rem .35rem .35rem .4rem;
max-height: 100%;
}
&-fh {
.modal-content {
min-height: 100%;
}
}
&-lg {
@media (max-width: 992px) {
max-width: 90%;
}
}
&-dialog {
& {
@include absolute(0, 0, 0, 0);
z-index: 1100;
}
}
&-tabs {
background: $color-theme-secondary;
padding: .75rem 1.25rem;
position: relative;
}
&-footer {
.clearfix {
width: 100%;
}
}
}
//
// Cards
//
.card {
border-bottom-width: 2px;
border-top-width: 0;
}
//
// Table Helpers
//
.table {
// Use fixed width for columns.
&-fixed {
table-layout: fixed;
}
// Vertical align cells.
&-middle {
td {
vertical-align: middle;
}
}
// Remove all borders.
&-borderless {
td,
th {
border: 0;
}
}
&-lesspadding {
td {
&:first-child {
padding-left: 0;
}
&:last-child {
padding-right: 0;
}
}
}
tbody + tbody {
border: 0;
}
}