$endpointBubbleWidth: 18px; :fullscreen{ overflow-y: scroll; // overwrites browser default } body{ // prevent marking text -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; cursor: default; } // links ========================================================================================== a, .pf-link{ color: $teal; will-change: color; text-decoration: none; cursor: pointer; @include transition( color 0.08s ease-out, background-color 0.08s ease-out ); &:hover{ color: $teal-lightest; text-decoration: none; } &:focus{ color: $teal; } &.disabled{ color: $navbar-default-link-color; pointer-events: none; cursor: default; } } em, .pf-font-italic{ font-style: italic; &.pf-brand{ text-transform: uppercase; } } .pf-font-uppercase{ text-transform: uppercase; } .pf-font-capitalize{ text-transform: capitalize; } .pf-font-line-through{ text-decoration: line-through; } .pf-text-ellipsis{ text-overflow: ellipsis; overflow: hidden; white-space: nowrap; } .fa-char{ &:before{ font-family: Arial, sans-serif; font-weight: bold; content: attr(data-char-content); } } .fa-tree-child{ @extend .fa-fw; @extend .fa-lg; @extend .fa-level-up-alt; @extend .fa-rotate-90; color: $gray-light; padding-right: 5px; } .no-scroll{ overflow: hidden; } .no-padding{ padding: 0 !important; } .no-margin{ margin: 0 !important; } // show/hide by [data-attr] value ================================================================= .pf-hidden-by-attr{ &[data-attr='']{ display: none; } &:not([data-attr='']){ display: initial; } &:before{ content: attr(data-attr) ' ' attr(data-attr-label); } } .pf-shown-by-attr{ &[data-attr='']{ display: initial; } &:not([data-attr='']){ display: none; } &:before{ content: attr(data-attr) ' ' attr(data-attr-label); } } // scroll bar ===================================================================================== html{ scrollbar-width: thin; // Firefox scrollbar-color: #717171 #222223; // Firefox } ::-webkit-scrollbar { display: none; // hides the scrollbar but is still scrollable width: 16px; height: 16px; } ::-webkit-scrollbar-track { background-color: $gray-darker; border-left: 1px solid $gray-dark; border-radius: 2px; @include transition( background-color .5s ); } ::-webkit-scrollbar-thumb { height: 6px; border: 5px solid transparent; background-clip: padding-box; -webkit-border-radius: 8px; background-color: lighten($gray, 30%); &:hover{ background-color: lighten($gray, 40%); } } ::-webkit-scrollbar-button { width: 0; height: 0; display: none; } ::-webkit-scrollbar-corner { background-color: transparent; } // text selection ================================================================================= ::selection{ background: $gray-lighter; /* WebKit/Blink Browsers */ color: $gray-darkest; } ::-moz-selection{ background: $gray-lighter; /* Gecko Browsers */ color: $gray-darkest; } .row{ // swap render order &--reverse{ display: flex; flex-direction: column-reverse; } } // Flex layout ==================================================================================== .pf-container-flex-end{ display: flex; justify-content: flex-end; } // .well variants ================================================================================= .well{ &.well-text-number{ // .well with improved contrast font-family: Oxygen, Arial, sans-serif; font-weight: bold; letter-spacing: .02em; line-height: 16px; text-rendering: geometricPrecision; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; } } // .collapse ====================================================================================== .collapse{ will-change: height; } // help elements ================================================================================== .pf-help-light{ @extend .txt-color; @extend .txt-color-grayLight; @extend .pf-help-default; } .pf-help{ @extend .txt-color; @extend .txt-color-gray; @extend .pf-help-default; } .pf-help-default{ cursor: help; pointer-events: auto; // enable mouse events even if a parent was set to 'none' (e.g. disabled xEditable cells in sig-reader dialog table) @include transition( color 0.08s ease-out ); &:hover{ @extend .txt-color-blue; } } // icon buttons =================================================================================== .pf-dialog-icon-button{ cursor: pointer; margin-top: 2px; @include transition(color 0.15s ease-out); &:not(.collapsed), &:hover{ color: $orange; } } .pf-module-icon-button{ cursor: pointer; color: $gray-light; // overwrite xEditable button style @include transition(color 0.15s ease-out); &.fas { position: relative; // for absolute positioned [data-badge]:after elements } &:hover, &.active{ color: $orange !important; } &.editable{ border-bottom: none !important; // overwrite xEditable button style } &[data-badge]:after { content: attr(data-badge); position: absolute; top: -8px; left: calc(100% - 5px); color: $orange; border-radius: 9px; padding: 3px 4px; font-size: 11px; font-weight: bold; line-height: 1; vertical-align: baseline; white-space: nowrap; text-align: center; font-family: Oxygen, Arial, sans-serif; } } .pf-module-icon-button-copy{ cursor: copy; -moz-user-select: text; user-select: text; } %pf-bg-image-wrapper{ background-size: contain; background-origin: content-box; background-repeat: no-repeat; background-image: var(--bg-image); background-position: bottom 0 right 0; image-rendering: -webkit-optimize-contrast; } .pf-bg-icon-inline{ @extend %pf-bg-image-wrapper; display: inline-block; width: 20px; height: 20px; margin: -5px 5px; outline: 1px solid; outline-color: transparent; outline-offset: 2px; @include transition(outline-color 0.15s ease-out); &:hover{ outline-color: $teal; } } // alert messages ================================================================================= .alert{ will-change: opacity, transform; } // form fields custom styles ====================================================================== .editable-input { optgroup[label] { background-color: $gray; color: $gray-light; option { background-color: $gray-dark; color: $gray-lighter; font-family: $font-family-monospace; } } .editable-checklist { > div > label { @extend .checkbox; display: block !important; padding-left: 20px !important; // overwrite inline-form styles color: $gray-lighter; > span { @extend label; &:after { top: -2px; } } } // layout settings popover (active map modules) &.pf-editable-settings { display: grid; column-gap: 15px; grid-template-columns: repeat(2, auto); align-items: end; > .pf-editable-headline { grid-column: 1; &:before { content: attr(data-headline); display: block; text-transform: capitalize; font-weight: bold; line-height: 18px; margin-bottom: 5px; margin-top: 5px; color: lighten($gray-light, 10%); padding-left: 25px; } + .pf-editable-headline[data-count='1'] { grid-column: 2; } } } .pf-editable-unknown[value='0'] + span { color: $red; } .pf-editable-warn + span { color: $orange; } } // toggle 2 elements active (settings popover) .pf-editable-toggle { display: flex; margin-bottom: 5px; justify-content: space-between; .pf-editable-toggle-item { display: flex; flex-wrap: nowrap; &:nth-child(odd) { margin-right: 4px; } > .btn { display: flex; justify-content: center; align-items: center; &.pf-editable-toggle-btn { font-size: 13px; &:not(.disabled) { color: $gray-darker; } } &.active { color: $gray-dark; // overwrite default background-color: $btn-primary-bg; border-color: $btn-primary-border; } &.disabled { color: $gray-dark; pointer-events: all; // required for cursor: not-allowed change (bootstrap bug) https://stackoverflow.com/a/50349274/4329969 } &.active, &:active { + .btn.active, + .btn:active { clip-path: inset(-15px -15px -15px 0); } } } > .pf-editable-toggle-svg { width: 98px; height: 68px; color: $gray-dark; // SVG color padding: 3px; margin: 0 3px; } } } } select:active, select:hover { outline: none } /* make it red instead (with with same width and style) */ select:active, select:hover { outline-color: red } // select2 custom template ======================================================================== .select2-results, .select2-container--pathfinder { [class*="col-"]{ // smaller and less padding padding-left: 3px; padding-right: 3px; line-height: 22px; &:first-child{ padding-left: 0; } &:last-child{ padding-right: 0; } } // custom "remove" X icon for multi select .select2-selection__choice__remove { display: flex !important; // overwrite default align-items: center; justify-content: center; font-size: 0; // hide default char &:before { font-family: "Font Awesome 5 Free"; content: "\f00d"; font-weight: bold; display: inline-block; margin-right: 3px; font-size: 12px; } } } .select2{ ::-webkit-search-cancel-button{ -webkit-appearance: none !important; } } .select2-results.mCustomScrollbar{ .select2-results__option--load-more{ position: absolute; margin-top: 50px; // margin gets removed on totalScroll -> enables ajax select options to load next page } } // global dataTable styles ======================================================================== .dataTables_wrapper{ .dataTables_length select{ margin: 0 3px; //