engelsystem/resources/assets/themes/base.scss

411 lines
6.8 KiB
SCSS

// select 2 variables
$cursor-disabled: false;
$link-decoration: none !default;
$link-hover-decoration: underline !default;
@import "~bootstrap/scss/functions";
@import "~bootstrap/scss/variables";
@import "~bootstrap/scss/mixins";
$custom-colors: (
black: #000
);
$theme-colors: map-merge($theme-colors, $custom-colors);
@import "~bootstrap/scss/bootstrap";
@import "~bootstrap-icons/font/bootstrap-icons.css";
@import "~tempusdominus-bootstrap-4/build/css/tempusdominus-bootstrap-4";
@import "~select2/src/scss/core";
@import "~select2-bootstrap-5-theme/src/include-all";
@import "error";
$navbar-height: 3.125rem;
body {
padding-top: 70px;
}
.footer a {
color: $text-muted;
}
.text-inherit {
color: inherit;
&:hover {
color: inherit;
}
}
.text-big {
display: block;
font-size: 30px;
line-height: 30px;
margin: 0;
}
.icon-icon_angel {
background-color: $body-color;
display: inline-block;
width: 1em;
height: 1em;
mask: url(../icons/angel.svg) no-repeat 50% 50%;
mask-size: cover;
}
a .icon-icon_angel {
background-color: $link-color;
}
.navbar .icon-icon_angel {
background-color: $nav-link-disabled-color;
}
.navbar-brand .icon-icon_angel {
background-color: $body-color;
}
.nav-item--userhints {
margin: -$navbar-padding-y 0;
}
.popover--userhints .alert:last-of-type {
margin-bottom: 0;
}
table a > .icon-icon_angel {
background-color: $body-color;
}
.table .form-group {
margin-bottom: 0;
}
.input-group.datetime,
.input-group.time {
.bootstrap-datetimepicker-widget {
inset: 42px auto auto 0 !important;
}
}
.stats {
font-size: 20px;
height: 150px;
text-align: center;
.number {
font-size: 80px;
font-weight: 200;
}
@media (max-width: map-get($grid-breakpoints, 'md')) {
font-size: inherit;
.number {
font-size: 40px;
}
}
}
.stats-danger {
color: map-get($theme-colors, 'danger');
}
.stats-warning {
color: map-get($theme-colors, 'warning');
}
.stats-success {
color: map-get($theme-colors, 'success');
}
.dashboard-card {
position: relative;
font-size: 20px;
color: $headings-color;
.card-link {
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
text-decoration: none; /* No underlines on the link */
z-index: 10; /* Places the link above everything else in the div */
background-color: $primary; /* Fix to make div clickable in IE */
opacity: 0; /* Fix to make div clickable in IE */
filter: alpha(opacity=1); /* Fix to make div clickable in IE */
}
.card-link:hover {
opacity: 0.3;
}
}
.select2-dropdown {
background-color: $input-bg;
}
.selection .checkbox {
display: block;
}
.shift-calendar {
display: flex;
flex-direction: row;
flex-wrap: nowrap;
align-items: stretch;
width: 100%;
.lane {
background: $table-striped-bg;
flex-grow: 1;
min-width: 280px;
width: 280px;
flex-shrink: 1;
.header {
background: $dark; //@todo bs5
border-bottom: 1px solid $table-border-color;
height: 30px;
padding: 5px 5px 5px 16px;
}
.tick {
height: 30px;
border-top: 1px solid darken($table-striped-bg, 2%);
}
.tick.hour {
border-top: 2px solid $table-border-color;
font-size: 0.9em;
padding-left: 5px;
}
.tick.day {
border-top: 2px solid $primary;
font-size: 0.9em;
padding-left: 5px;
}
}
.lane.time {
border-right: 1px solid $table-border-color;
flex-grow: 0;
min-width: 50px;
width: 50px;
flex-shrink: 0;
}
.shift-card {
z-index: 0;
overflow: hidden;
position: relative;
margin: 0 5px 5px 0;
&:hover {
overflow: visible;
z-index: 100;
}
.shift {
min-height: 100%;
}
}
}
.column_duration {
text-align: right;
}
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
code {
background-color: inherit;
}
}
.messages {
&:focus {
outline: none;
}
a:focus {
outline: none;
}
}
.messages span.text-danger {
animation: pulse 1s infinite;
}
.legend .label {
white-space: pre-wrap;
line-height: 2;
}
.shift-calendar.table-responsive {
overflow-x: inherit;
}
.inline-form-spacing {
margin-bottom: map-get($spacers, 3);
}
.user-settings .settings-menu ul {
margin-top: map-get($spacers, 3); //@todo bs5
}
span.ref-id[id] {
padding-top: 50px;
}
.faq {
.card-header {
small a.ref-link {
display: none;
}
&:hover {
small a.ref-link {
display: inherit;
}
}
}
}
.card-body > *:last-child {
margin-bottom: 0;
}
@keyframes pulse {
0% {
transform: rotate(0deg);
}
10% {
transform: rotate(5deg) translateY(-2px);
}
20% {
transform: rotate(-5deg);
}
30% {
transform: rotate(5deg) translateY(-2px);;
}
40% {
transform: rotate(-5deg);
}
50% {
transform: rotate(0deg) translateY(-2px);
}
75% {
transform: rotate(0deg) translateY(0px);
}
}
@media (max-width: 525px) {
.col-xxs-12 {
float: none;
width: 100%;
position: relative;
left: 0;
right: 0;
min-height: 1px;
padding-right: 15px;
padding-left: 15px;
}
}
@media print {
a[href]:after {
content: "";
}
}
.navbar-toggle {
transform: scale(1.25, 0.96);
padding: 2px 6px;
margin-top: 6px;
margin-bottom: 4px;
max-height: $navbar-height;
.icon {
border-color: $primary;
font-weight: bold;
color: $primary;
font-size: 25px;
&-close {
padding: 0 3px;
display: none;
}
}
&.is-open .icon {
&-open {
display: none;
}
&-close {
display: block;
}
}
}
@media screen and (max-width: map-get($grid-breakpoints, 'xxl')) {
#navbar-offcanvas {
display: block;
position: absolute;
width: 90%;
height: calc(100vh - #{$navbar-height});
max-height: unset;
left: 101%;
top: $navbar-height + 1;
// extra padding because mobile Safari displays a bottom bar hiding parts of the menu
padding-bottom: 75px;
transition: left .3s ease-in-out;
background: $light; // @todo bs5
margin: 0 !important; // Overridden in theme with high specifity:
// .container > .navbar-header,
// .container-fluid > .navbar-header,
// .container > .navbar-collapse,
// .container-fluid > .navbar-collapse
// Is open
&.collapse.in {
left: 10%;
display: block;
overflow-y: auto;
box-shadow: -5px 20px 20px 0 rgba(0, 0, 0, 0.5), 5px 0 5px -5px rgba(0, 0, 0, 0.5);
}
// Hide current page in nav.
.nav > li.active {
display: none;
}
.caret {
float: right;
margin-top: 7px;
}
}
.navbar-toggle {
align-items: center;
font-size: 18px;
display: flex;
height: 38px;
justify-content: center;
padding: 0;
transform: none;
width: 38px;
.icon-close {
padding: 0;
}
}
}