mirror of
https://github.com/prurigro/hypothetical.git
synced 2024-11-25 00:51:25 -05:00
1501 lines
39 KiB
SCSS
1501 lines
39 KiB
SCSS
// Sass modules
|
|
@use "sass:color";
|
|
@use "sass:math";
|
|
|
|
// Base font size
|
|
$base-font-size: 16px;
|
|
|
|
// Libraries
|
|
$fa-font-path: "/fonts";
|
|
@import "@fortawesome/fontawesome-free/scss/fontawesome.scss";
|
|
@import "@fortawesome/fontawesome-free/scss/solid.scss";
|
|
|
|
$enable-smooth-scroll: false;
|
|
@import "bootstrap/scss/bootstrap.scss";
|
|
|
|
// Functions
|
|
@import "functions/**/*.scss";
|
|
|
|
// Core
|
|
@import "_fonts";
|
|
@import "_common-vars";
|
|
|
|
// Supplementary
|
|
@import "mixins/**/*.scss";
|
|
|
|
// Colours
|
|
$c-text: #111; // text
|
|
$c-text-inactive: color.adjust($c-text, $alpha: -0.25); // inactive text
|
|
$c-text-light: #fff; // light text
|
|
$c-text-light-inactive: color.adjust($c-text-light, $alpha: -0.25); // inactive light text
|
|
$c-input-bg: #fff; // white
|
|
$c-dashboard-error: #a80000;
|
|
$c-dashboard-dark: #111;
|
|
$c-dashboard-light: #f1f1f1;
|
|
$c-dashboard-edit: #87823e;
|
|
$c-dashboard-delete: #87483e;
|
|
|
|
//
|
|
// Main Dashboard Styles
|
|
//
|
|
|
|
* {
|
|
outline: none !important;
|
|
}
|
|
|
|
html {
|
|
width: 100%;
|
|
font-size: $base-font-size;
|
|
|
|
@include media-breakpoint-up(xxxl) {
|
|
font-size: 18px;
|
|
}
|
|
|
|
@include media-breakpoint-up(xxxxl) {
|
|
font-size: 20px;
|
|
}
|
|
}
|
|
|
|
body {
|
|
@include font-sans;
|
|
-webkit-font-smoothing: antialiased;
|
|
-moz-osx-font-smoothing: grayscale;
|
|
-webkit-overflow-scrolling: touch;
|
|
}
|
|
|
|
.site-content {
|
|
position: relative;
|
|
display: flex;
|
|
min-height: 100vh;
|
|
flex-direction: column;
|
|
|
|
.page-content {
|
|
flex-grow: 1;
|
|
}
|
|
}
|
|
|
|
.dashboard-background {
|
|
position: absolute;
|
|
top: 0px;
|
|
left: 0px;
|
|
width: 100%;
|
|
height: 100%;
|
|
background-image: url("/img/dashboard/line-bg.svg");
|
|
background-position: center top;
|
|
background-repeat: repeat;
|
|
}
|
|
|
|
.navbar, .dashboard-footer {
|
|
z-index: 10;
|
|
position: relative;
|
|
}
|
|
|
|
.navbar {
|
|
margin-bottom: $grid-gutter-width;
|
|
border: 0;
|
|
background-color: $c-dashboard-dark;
|
|
user-select: none;
|
|
|
|
@include media-breakpoint-down(lg) {
|
|
padding-right: pxrem(8);
|
|
padding-left: pxrem(8);
|
|
}
|
|
|
|
@include media-breakpoint-down(md) {
|
|
margin-bottom: 0px;
|
|
}
|
|
|
|
&-brand {
|
|
@include font-sans-bold;
|
|
overflow: hidden;
|
|
max-width: calc(100vw - #{pxrem(60)});
|
|
color: $c-text-light;
|
|
white-space: nowrap;
|
|
|
|
&:hover, &:focus, &:active {
|
|
color: $c-text-light;
|
|
}
|
|
|
|
@include media-breakpoint-down(md) {
|
|
font-size: pxrem(12);
|
|
}
|
|
}
|
|
|
|
&-toggler {
|
|
position: absolute;
|
|
top: pxrem(3);
|
|
right: 0px;
|
|
border: 0;
|
|
|
|
@include media-breakpoint-up(md) {
|
|
top: pxrem(10);
|
|
}
|
|
|
|
&-icon {
|
|
position: relative;
|
|
|
|
&-bar {
|
|
$v-inset: pxrem(6);
|
|
$h-inset: pxrem(3);
|
|
position: absolute;
|
|
left: $h-inset;
|
|
width: calc(100% - #{$h-inset * 2});
|
|
height: pxrem(2);
|
|
background-color: $c-text-light;
|
|
|
|
&:nth-child(1) {
|
|
top: $v-inset;
|
|
}
|
|
|
|
&:nth-child(2) {
|
|
top: 50%;
|
|
transform: translateY(-50%);
|
|
}
|
|
|
|
&:nth-child(3) {
|
|
bottom: $v-inset;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.nav-link {
|
|
color: $c-text-light-inactive;
|
|
transition: color 150ms;
|
|
|
|
&.show {
|
|
color: $c-text-light-inactive;
|
|
}
|
|
|
|
&.active {
|
|
color: $c-text-light;
|
|
}
|
|
|
|
&.dropdown-toggle {
|
|
border: 0;
|
|
background-color: transparent;
|
|
cursor: pointer;
|
|
}
|
|
}
|
|
|
|
.dropdown-menu {
|
|
right: 0px;
|
|
left: auto;
|
|
padding: 0px;
|
|
border-top-right-radius: 0;
|
|
border-top-left-radius: 0;
|
|
list-style: none;
|
|
|
|
@include media-breakpoint-up(lg) {
|
|
top: pxrem(45);
|
|
}
|
|
|
|
@include media-breakpoint-down(lg) {
|
|
border-bottom-right-radius: 0;
|
|
border-bottom-left-radius: 0;
|
|
}
|
|
|
|
.dropdown-item {
|
|
background-color: transparent;
|
|
transition: background-color 150ms, color 150ms;
|
|
|
|
@include media-breakpoint-down(lg) {
|
|
padding-right: pxrem(8);
|
|
padding-left: pxrem(8);
|
|
background-color: color.adjust($c-dashboard-dark, $lightness: -2%);
|
|
color: $c-text-light-inactive;
|
|
}
|
|
|
|
&.active, &:hover, &:focus, &:active {
|
|
color: $c-text;
|
|
|
|
@include media-breakpoint-down(lg) {
|
|
color: $c-text-light;
|
|
}
|
|
}
|
|
|
|
&:hover, &:focus {
|
|
@include media-breakpoint-up(lg) {
|
|
background-color: color.adjust(#000, $alpha: -0.97);
|
|
}
|
|
}
|
|
|
|
&.active {
|
|
@include media-breakpoint-up(lg) {
|
|
background-color: color.adjust(#000, $alpha: -0.93);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.dashboard-footer {
|
|
margin-top: $grid-gutter-width;
|
|
width: 100%;
|
|
padding: pxrem(8) $half-gutter-width;
|
|
background-color: $c-dashboard-dark;
|
|
text-align: right;
|
|
|
|
a {
|
|
color: $c-text-light-inactive;
|
|
text-decoration: none;
|
|
transition: color 150ms;
|
|
|
|
&:hover, &:focus {
|
|
text-decoration: none;
|
|
}
|
|
|
|
&.active {
|
|
color: $c-text-light;
|
|
}
|
|
}
|
|
}
|
|
|
|
.card {
|
|
margin-top: pxrem(20);
|
|
margin-bottom: pxrem(20);
|
|
|
|
> .card-header {
|
|
@include font-sans-bold;
|
|
position: relative;
|
|
padding: pxrem(9) pxrem(15);
|
|
border-top: 1px solid color.adjust($c-dashboard-dark, $lightness: -5%);
|
|
border-right: 1px solid color.adjust($c-dashboard-dark, $lightness: -5%);
|
|
border-left: 1px solid color.adjust($c-dashboard-dark, $lightness: -5%);
|
|
background-color: $c-dashboard-dark;
|
|
color: $c-dashboard-light;
|
|
font-size: pxrem(14);
|
|
|
|
.dashboard-heading {
|
|
position: absolute;
|
|
top: 50%;
|
|
right: pxrem(8);
|
|
transform: translateY(-50%);
|
|
|
|
.btn {
|
|
min-width: pxrem(70);
|
|
height: pxrem(26);
|
|
padding-top: pxrem(1);
|
|
padding-bottom: pxrem(2);
|
|
}
|
|
|
|
a {
|
|
color: $c-text;
|
|
text-decoration: none;
|
|
}
|
|
}
|
|
}
|
|
|
|
.card-body {
|
|
padding: pxrem(15);
|
|
background-color: color.adjust($c-dashboard-light, $lightness: 1%);
|
|
|
|
&.dashboard {
|
|
@include media-breakpoint-down(md) {
|
|
padding: pxrem(10) pxrem(8) pxrem(12) pxrem(8);
|
|
}
|
|
}
|
|
|
|
.search-form {
|
|
display: flex;
|
|
width: 100%;
|
|
|
|
@include media-breakpoint-down(md) {
|
|
margin-bottom: $half-gutter-width;
|
|
}
|
|
|
|
&-input {
|
|
display: block;
|
|
width: 100%;
|
|
}
|
|
|
|
&-submit {
|
|
margin-top: pxrem(2);
|
|
margin-left: pxrem(10);
|
|
height: pxrem(32);
|
|
border: 1px solid color.adjust($c-text, $alpha: -0.75);
|
|
border-radius: pxrem(4);
|
|
}
|
|
}
|
|
|
|
.search {
|
|
margin-bottom: pxrem(10);
|
|
width: 100%;
|
|
padding: pxrem(3) pxrem(8);
|
|
border: 1px solid color.adjust(#000, $alpha: -0.875);
|
|
border-radius: 0.25rem;
|
|
|
|
@include media-breakpoint-down(md) {
|
|
margin: pxrem(3) pxrem(3) 0px pxrem(3);
|
|
width: calc(100% - #{pxrem(6)});
|
|
}
|
|
}
|
|
|
|
.help-text {
|
|
margin-top: pxrem(10);
|
|
margin-bottom: pxrem(10);
|
|
padding: pxrem(5) pxrem(10);
|
|
border: 1px solid color.adjust($c-dashboard-dark, $lightness: -5%);
|
|
border-radius: pxrem(5);
|
|
background-color: $c-dashboard-dark;
|
|
color: $c-text-light;
|
|
|
|
ul {
|
|
margin-bottom: 0px;
|
|
}
|
|
}
|
|
|
|
.form-group {
|
|
margin-bottom: pxrem(15);
|
|
|
|
label {
|
|
@include font-sans-semibold;
|
|
font-size: pxrem(14);
|
|
|
|
@include media-breakpoint-up(md) {
|
|
text-align: right;
|
|
}
|
|
}
|
|
|
|
.form-control {
|
|
font-size: pxrem(14);
|
|
transition: border-color 150ms, box-shadow 150ms;
|
|
|
|
&:focus {
|
|
border-color: $c-dashboard-dark;
|
|
box-shadow: inset 0 pxrem(1) pxrem(1) color.adjust(#000, $alpha: -0.925), 0 0 pxrem(8) color.adjust($c-dashboard-dark, $alpha: -0.4);
|
|
}
|
|
}
|
|
|
|
&.has-error .form-control {
|
|
border-color: $c-dashboard-error;
|
|
}
|
|
|
|
.checkbox {
|
|
position: relative;
|
|
display: inline-block;
|
|
min-height: 0px;
|
|
padding-top: 0px;
|
|
padding-left: pxrem(22);
|
|
user-select: none;
|
|
|
|
span, input {
|
|
position: absolute;
|
|
top: 50%;
|
|
left: 0px;
|
|
transform: translateY(-50%);
|
|
display: block;
|
|
width: pxrem(16);
|
|
height: pxrem(16);
|
|
}
|
|
|
|
span {
|
|
border: 1px solid color.adjust($c-text, $lightness: 50%);
|
|
border-radius: pxrem(4);
|
|
background-color: $c-input-bg;
|
|
pointer-events: none;
|
|
|
|
&:after {
|
|
content: "";
|
|
position: absolute;
|
|
top: 0px;
|
|
left: 0px;
|
|
transform: scale(0);
|
|
display: block;
|
|
width: 100%;
|
|
height: 100%;
|
|
background-image: url("/img/dashboard/checkmark.svg");
|
|
background-position: center center;
|
|
background-size: 65% auto;
|
|
background-repeat: no-repeat;
|
|
opacity: 0;
|
|
transition: transform 150ms, opacity 150ms;
|
|
}
|
|
}
|
|
|
|
input {
|
|
margin: 0px;
|
|
padding: 0px;
|
|
opacity: 0;
|
|
cursor: pointer;
|
|
|
|
&:checked + span:after {
|
|
transform: scale(1);
|
|
opacity: 1;
|
|
}
|
|
}
|
|
}
|
|
|
|
.text-muted {
|
|
font-size: pxrem(10);
|
|
text-transform: uppercase;
|
|
}
|
|
}
|
|
|
|
.dashboard-credits {
|
|
padding: $grid-gutter-width;
|
|
|
|
h2 {
|
|
@include font-sans-semibold;
|
|
margin-bottom: pxrem(15);
|
|
font-size: pxrem(18);
|
|
text-transform: uppercase;
|
|
|
|
&:not(:first-child) {
|
|
margin-top: pxrem(25);
|
|
}
|
|
}
|
|
|
|
ul {
|
|
margin-bottom: 0px;
|
|
padding-left: pxrem(20);
|
|
|
|
li a {
|
|
color: $c-text;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.btn {
|
|
border-color: color.adjust($c-dashboard-dark, $lightness: -5%);
|
|
background-color: $c-dashboard-dark;
|
|
color: $c-text-light;
|
|
font-size: pxrem(14);
|
|
transition: background-color 100ms;
|
|
|
|
&:hover {
|
|
background-color: color.adjust($c-dashboard-dark, $lightness: -5%);
|
|
}
|
|
|
|
&:focus {
|
|
background-color: color.adjust($c-dashboard-dark, $lightness: 5%);
|
|
}
|
|
|
|
&, &:hover, &:focus {
|
|
text-decoration: none;
|
|
}
|
|
|
|
&.vertical-margin {
|
|
margin-top: pxrem(3);
|
|
margin-bottom: pxrem(3);
|
|
}
|
|
|
|
&.btn-warning, &.btn-danger {
|
|
&:hover, &:focus, &:active {
|
|
color: $c-text-light !important;
|
|
}
|
|
}
|
|
|
|
&.btn-warning {
|
|
border-color: color.adjust($c-dashboard-edit, $lightness: -10%);
|
|
background-color: $c-dashboard-edit;
|
|
|
|
&:hover {
|
|
background-color: color.adjust($c-dashboard-edit, $lightness: -5%);
|
|
}
|
|
|
|
&:focus {
|
|
background-color: color.adjust($c-dashboard-edit, $lightness: 5%);
|
|
}
|
|
}
|
|
|
|
&.btn-danger {
|
|
border-color: color.adjust($c-dashboard-delete, $lightness: -10%);
|
|
background-color: $c-dashboard-delete;
|
|
|
|
&:hover {
|
|
background-color: color.adjust($c-dashboard-delete, $lightness: -5%);
|
|
}
|
|
|
|
&:focus {
|
|
background-color: color.adjust($c-dashboard-delete, $lightness: 5%);
|
|
}
|
|
}
|
|
|
|
&.btn-secondary {
|
|
border-color: color.adjust($c-dashboard-light, $lightness: -10%);
|
|
background-color: $c-dashboard-light;
|
|
color: $c-text;
|
|
|
|
&:hover {
|
|
background-color: color.adjust($c-dashboard-light, $lightness: -5%);
|
|
}
|
|
|
|
&:focus {
|
|
background-color: color.adjust($c-dashboard-light, $lightness: 5%);
|
|
}
|
|
}
|
|
|
|
&.btn-link {
|
|
color: $c-dashboard-light;
|
|
}
|
|
|
|
&.btn-outline {
|
|
background-color: transparent;
|
|
color: $c-text;
|
|
}
|
|
|
|
&.btn-inactive {
|
|
pointer-events: none;
|
|
}
|
|
|
|
&.btn-disabled {
|
|
opacity: 0.5;
|
|
pointer-events: none;
|
|
}
|
|
}
|
|
|
|
.view-table-container {
|
|
@include media-breakpoint-down(md) {
|
|
padding: pxrem(10) pxrem(5);
|
|
}
|
|
|
|
.table {
|
|
margin-bottom: 0px;
|
|
border-bottom-color: transparent;
|
|
|
|
@include media-breakpoint-down(xl) {
|
|
overflow-x: auto;
|
|
display: block;
|
|
width: 100%;
|
|
}
|
|
|
|
> thead {
|
|
@include media-breakpoint-down(xl) {
|
|
display: none;
|
|
}
|
|
|
|
> tr > th {
|
|
border-top: 0;
|
|
border-bottom: 1px solid #666;
|
|
}
|
|
}
|
|
|
|
> tbody {
|
|
@include media-breakpoint-down(xl) {
|
|
display: block;
|
|
width: 100%;
|
|
}
|
|
|
|
> tr {
|
|
@include media-breakpoint-down(xl) {
|
|
display: block;
|
|
width: 100%;
|
|
|
|
&:not(:first-child) {
|
|
border-top: 1px solid #ddd;
|
|
}
|
|
}
|
|
|
|
@include media-breakpoint-up(xl) {
|
|
border-bottom: 1px solid #ddd;
|
|
|
|
&:last-child {
|
|
border-bottom-color: transparent;
|
|
|
|
> td {
|
|
padding-bottom: pxrem(10);
|
|
}
|
|
}
|
|
}
|
|
|
|
> td {
|
|
@include media-breakpoint-down(xl) {
|
|
display: block;
|
|
border-top: 0;
|
|
|
|
&:first-child {
|
|
padding-top: pxrem(20);
|
|
}
|
|
|
|
&:last-child {
|
|
padding-bottom: pxrem(20);
|
|
}
|
|
}
|
|
|
|
@include media-breakpoint-up(xl) {
|
|
padding: pxrem(20) pxrem(8);
|
|
}
|
|
|
|
.mobile-heading {
|
|
@include media-breakpoint-up(xl) {
|
|
display: none;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.pagination-navigation-bar {
|
|
margin-bottom: pxrem(10);
|
|
margin-left: pxrem(4);
|
|
display: flex;
|
|
width: calc(100% - #{pxrem(8)});
|
|
|
|
@include media-breakpoint-down(sm) {
|
|
flex-direction: column;
|
|
}
|
|
|
|
@include media-breakpoint-up(sm) {
|
|
justify-content: space-between;
|
|
}
|
|
|
|
&-arrow {
|
|
position: relative;
|
|
font-size: 0px;
|
|
|
|
@include media-breakpoint-down(sm) {
|
|
height: pxrem(35);
|
|
}
|
|
|
|
&.prev {
|
|
@include media-breakpoint-down(sm) {
|
|
margin-bottom: pxrem(8);
|
|
}
|
|
|
|
@include media-breakpoint-up(sm) {
|
|
margin-right: $half-gutter-width;
|
|
}
|
|
}
|
|
|
|
&.next {
|
|
transform: rotate(180deg);
|
|
|
|
@include media-breakpoint-down(sm) {
|
|
margin-top: pxrem(8);
|
|
}
|
|
|
|
@include media-breakpoint-up(sm) {
|
|
margin-left: $half-gutter-width;
|
|
}
|
|
}
|
|
|
|
&:before, &:after {
|
|
content: "";
|
|
position: absolute;
|
|
top: calc(50% - #{pxrem(1px)});
|
|
left: 25%;
|
|
width: pxrem(16);
|
|
height: pxrem(2);
|
|
background-color: $c-text-light;
|
|
|
|
@include media-breakpoint-down(sm) {
|
|
left: 50%;
|
|
}
|
|
}
|
|
|
|
&:before {
|
|
transform: rotate(-45deg);
|
|
transform-origin: bottom left;
|
|
}
|
|
|
|
&:after {
|
|
transform: rotate(45deg);
|
|
transform-origin: top left;
|
|
}
|
|
}
|
|
|
|
&-page-count {
|
|
display: flex;
|
|
|
|
@include media-breakpoint-down(sm) {
|
|
justify-content: center;
|
|
}
|
|
|
|
.btn {
|
|
$spacing: pxrem(3);
|
|
|
|
&:not(:first-child) {
|
|
margin-left: $spacing;
|
|
}
|
|
|
|
&:not(:last-child) {
|
|
margin-right: $spacing;
|
|
}
|
|
|
|
&.space {
|
|
position: relative;
|
|
|
|
&:after {
|
|
content: "...";
|
|
position: absolute;
|
|
top: 0px;
|
|
line-height: pxrem(25);
|
|
}
|
|
|
|
&:first-child {
|
|
margin-right: pxrem(20);
|
|
|
|
&:after {
|
|
left: calc(100% + #{pxrem(7)});
|
|
}
|
|
}
|
|
|
|
&:last-child {
|
|
margin-left: pxrem(20);
|
|
|
|
&:after {
|
|
right: calc(100% + #{pxrem(7)});
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.list-group {
|
|
margin-bottom: 0px;
|
|
|
|
&.menu-list .list-group-item {
|
|
position: relative;
|
|
padding: pxrem(10) pxrem(15);
|
|
|
|
&-link {
|
|
position: absolute;
|
|
top: 0px;
|
|
left: 0px;
|
|
display: block;
|
|
width: 100%;
|
|
height: 100%;
|
|
background-color: transparent;
|
|
color: $c-text;
|
|
transition: background-color 150ms;
|
|
|
|
&:hover {
|
|
background-color: color.adjust(#000, $alpha: -0.97);
|
|
text-decoration: none;
|
|
}
|
|
}
|
|
}
|
|
|
|
&.edit-list {
|
|
.list-group-item {
|
|
padding-top: pxrem(4);
|
|
padding-bottom: pxrem(4);
|
|
|
|
@include media-breakpoint-down(md) {
|
|
margin: pxrem(3);
|
|
}
|
|
|
|
@include media-breakpoint-up(md) {
|
|
display: flex;
|
|
}
|
|
|
|
&.sortable {
|
|
@include media-breakpoint-down(md) {
|
|
padding-left: pxrem(50);
|
|
}
|
|
}
|
|
|
|
.title-column {
|
|
@include font-sans-semibold;
|
|
padding-top: pxrem(6);
|
|
padding-bottom: pxrem(6);
|
|
padding-left: 0px;
|
|
|
|
@include media-breakpoint-down(md) {
|
|
text-align: center;
|
|
}
|
|
|
|
@include media-breakpoint-up(md) {
|
|
overflow: hidden;
|
|
display: flex;
|
|
flex-grow: 1;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.sort-icon {
|
|
margin-right: pxrem(10);
|
|
display: inline-block;
|
|
opacity: 1;
|
|
transition: opacity 100ms;
|
|
cursor: grab;
|
|
|
|
@include media-breakpoint-down(md) {
|
|
position: absolute;
|
|
top: 50%;
|
|
left: pxrem(20);
|
|
transform: translateY(-50%);
|
|
}
|
|
|
|
&-inner {
|
|
position: relative;
|
|
top: pxrem(2);
|
|
display: inline-block;
|
|
width: pxrem(12);
|
|
height: pxrem(14);
|
|
|
|
&-bar {
|
|
position: absolute;
|
|
left: 0px;
|
|
width: 100%;
|
|
height: pxrem(2);
|
|
background-color: $c-text;
|
|
|
|
&:nth-child(1) {
|
|
top: pxrem(2);
|
|
}
|
|
|
|
&:nth-child(2) {
|
|
top: 50%;
|
|
transform: translateY(-50%);
|
|
}
|
|
|
|
&:nth-child(3) {
|
|
bottom: pxrem(2);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.column {
|
|
display: inline-block;
|
|
|
|
.image-preview {
|
|
display: block;
|
|
aspect-ratio: 16/9;
|
|
background-position: center center;
|
|
background-size: cover;
|
|
background-repeat: no-repeat;
|
|
|
|
@include media-breakpoint-down(md) {
|
|
width: pxrem(150);
|
|
max-width: 100%;
|
|
}
|
|
|
|
@include media-breakpoint-up(md) {
|
|
width: pxrem(43);
|
|
}
|
|
}
|
|
}
|
|
|
|
.spacer {
|
|
@include media-breakpoint-down(md) {
|
|
display: block;
|
|
font-size: 0;
|
|
}
|
|
|
|
@include media-breakpoint-up(md) {
|
|
margin: 0px pxrem(5);
|
|
display: inline-block;
|
|
}
|
|
}
|
|
}
|
|
|
|
.button-column {
|
|
padding-right: 0px;
|
|
|
|
@include media-breakpoint-down(md) {
|
|
padding-bottom: pxrem(5);
|
|
padding-left: 0px;
|
|
text-align: center;
|
|
}
|
|
|
|
@include media-breakpoint-up(md) {
|
|
padding-left: pxrem(5);
|
|
flex-shrink: 0;
|
|
text-align: right;
|
|
}
|
|
|
|
.btn {
|
|
margin: pxrem(5) pxrem(3);
|
|
min-width: pxrem(70);
|
|
height: pxrem(26);
|
|
padding-top: pxrem(1);
|
|
padding-bottom: pxrem(2);
|
|
|
|
@include media-breakpoint-down(md) {
|
|
min-width: 33%;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
&.filtered .list-group-item .title-column .sort-icon {
|
|
opacity: 0.5;
|
|
pointer-events: none;
|
|
}
|
|
}
|
|
}
|
|
|
|
form {
|
|
margin-top: pxrem(10);
|
|
|
|
.form-title {
|
|
@include font-sans-semibold;
|
|
margin-top: 0px;
|
|
margin-bottom: pxrem(15);
|
|
font-size: pxrem(14);
|
|
text-transform: uppercase;
|
|
}
|
|
|
|
&.edit-item {
|
|
$label-height: pxrem(35);
|
|
|
|
.CodeMirror {
|
|
height: pxrem(300);
|
|
padding: pxrem(5);
|
|
|
|
&-code {
|
|
margin-bottom: pxrem(10);
|
|
}
|
|
}
|
|
|
|
.container-fluid {
|
|
@include media-breakpoint-down(sm) {
|
|
padding: 0px;
|
|
}
|
|
}
|
|
|
|
.list {
|
|
margin-bottom: pxrem(15);
|
|
padding-bottom: pxrem(15);
|
|
border-bottom: 1px solid color.adjust($c-text, $alpha: -0.9);
|
|
|
|
&-template, &-data {
|
|
display: none;
|
|
}
|
|
|
|
&-items-row {
|
|
position: relative;
|
|
margin-bottom: pxrem(10);
|
|
padding: pxrem(8) pxrem(8) pxrem(8) pxrem(33);
|
|
border-radius: pxrem(6);
|
|
background-color: color.adjust($c-input-bg, $lightness: -2%);
|
|
|
|
@include media-breakpoint-up(lg) {
|
|
display: flex;
|
|
padding: pxrem(5) pxrem(5) pxrem(5) pxrem(30);
|
|
align-items: center;
|
|
}
|
|
|
|
&:not(:last-child) {
|
|
@include media-breakpoint-down(lg) {
|
|
margin-bottom: pxrem(15);
|
|
}
|
|
}
|
|
|
|
.sort-icon {
|
|
position: absolute;
|
|
top: pxrem(11);
|
|
left: pxrem(10);
|
|
display: inline-block;
|
|
opacity: 1;
|
|
transition: opacity 100ms;
|
|
cursor: grab;
|
|
|
|
@include media-breakpoint-up(lg) {
|
|
top: pxrem(9);
|
|
}
|
|
|
|
&-inner {
|
|
position: relative;
|
|
top: pxrem(2);
|
|
display: inline-block;
|
|
width: pxrem(12);
|
|
height: pxrem(14);
|
|
|
|
&-bar {
|
|
position: absolute;
|
|
left: 0px;
|
|
width: 100%;
|
|
height: pxrem(2);
|
|
background-color: $c-text;
|
|
|
|
&:nth-child(1) {
|
|
top: pxrem(2);
|
|
}
|
|
|
|
&:nth-child(2) {
|
|
top: 50%;
|
|
transform: translateY(-50%);
|
|
}
|
|
|
|
&:nth-child(3) {
|
|
bottom: pxrem(2);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
&-content, &-button {
|
|
@include media-breakpoint-down(lg) {
|
|
width: 100%;
|
|
}
|
|
|
|
&:not(:last-child) {
|
|
@include media-breakpoint-down(lg) {
|
|
margin-bottom: pxrem(10);
|
|
}
|
|
|
|
@include media-breakpoint-up(lg) {
|
|
margin-right: pxrem(5);
|
|
}
|
|
}
|
|
|
|
&:not(:first-child) {
|
|
@include media-breakpoint-up(lg) {
|
|
margin-left: pxrem(5);
|
|
}
|
|
}
|
|
}
|
|
|
|
&-content {
|
|
position: relative;
|
|
|
|
&.wide {
|
|
width: 100%;
|
|
}
|
|
|
|
&-inner {
|
|
$row-height: pxrem(36);
|
|
display: flex;
|
|
height: $row-height;
|
|
align-items: center;
|
|
|
|
.list-input {
|
|
margin-bottom: 0px;
|
|
height: auto;
|
|
}
|
|
|
|
.image-link {
|
|
margin-right: pxrem(10);
|
|
display: block;
|
|
width: pxrem(50);
|
|
height: $row-height;
|
|
background-color: $c-input-bg;
|
|
|
|
&:not(.active) {
|
|
display: none;
|
|
}
|
|
|
|
.image-preview {
|
|
display: block;
|
|
width: 100%;
|
|
height: 100%;
|
|
object-fit: cover;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
&-buttons {
|
|
@include media-breakpoint-up(lg) {
|
|
display: flex;
|
|
flex-grow: 1;
|
|
justify-content: flex-end;
|
|
}
|
|
|
|
&-delete {
|
|
min-width: pxrem(70);
|
|
height: $label-height;
|
|
border: 1px solid color.adjust($c-text, $alpha: -0.75);
|
|
border-radius: pxrem(4);
|
|
background-color: $c-dashboard-delete;
|
|
color: $c-text-light;
|
|
}
|
|
}
|
|
}
|
|
|
|
&-add-button {
|
|
height: $label-height;
|
|
border: 1px solid color.adjust($c-text, $alpha: -0.75);
|
|
border-radius: pxrem(4);
|
|
|
|
@include media-breakpoint-down(lg) {
|
|
margin-top: pxrem(15);
|
|
width: 100%;
|
|
}
|
|
}
|
|
}
|
|
|
|
.picker__holder {
|
|
overflow-y: hidden;
|
|
|
|
.picker__button--today {
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.picker__select--year, .picker__select--month, .picker__month, .picker__day, .picker__weekday, .picker__footer {
|
|
@include media-breakpoint-down(md) {
|
|
font-size: pxrem(16);
|
|
}
|
|
}
|
|
|
|
.picker__select--year, .picker__select--month {
|
|
width: auto;
|
|
height: 1.5em;
|
|
padding: 0px;
|
|
}
|
|
}
|
|
|
|
label {
|
|
min-height: $label-height;
|
|
line-height: $label-height;
|
|
|
|
@include media-breakpoint-up(md) {
|
|
margin-bottom: 0px;
|
|
}
|
|
}
|
|
|
|
.text-display, .mkd-editor-container, input:not([type="file"]), textarea, select, .upload-wrapper {
|
|
margin-bottom: pxrem(15);
|
|
}
|
|
|
|
input, textarea {
|
|
display: block;
|
|
width: 100%;
|
|
|
|
&:not([type="file"]) {
|
|
padding: pxrem(5) pxrem(8);
|
|
border: 1px solid color.adjust($c-dashboard-light, $lightness: -10%);
|
|
border-radius: pxrem(2);
|
|
transition: border-color 150ms;
|
|
|
|
&.error {
|
|
border-color: $c-dashboard-error;
|
|
}
|
|
}
|
|
|
|
&.date-picker {
|
|
cursor: pointer;
|
|
}
|
|
}
|
|
|
|
.upload-wrapper {
|
|
display: flex;
|
|
height: $label-height;
|
|
align-items: center;
|
|
|
|
input {
|
|
overflow: hidden;
|
|
max-width: 100%;
|
|
font-size: pxrem(14);
|
|
}
|
|
|
|
.clear-upload {
|
|
position: relative;
|
|
transform: rotate(45deg);
|
|
width: pxrem(20);
|
|
height: pxrem(20);
|
|
padding: 0px;
|
|
border: 0;
|
|
background-color: transparent;
|
|
|
|
&:before, &:after {
|
|
content: "";
|
|
position: absolute;
|
|
top: 50%;
|
|
left: 50%;
|
|
transform: translateX(-50%) translateY(-50%);
|
|
background-color: $c-dashboard-error;
|
|
}
|
|
|
|
&:before {
|
|
width: 2px;
|
|
height: 50%;
|
|
}
|
|
|
|
&:after {
|
|
width: 50%;
|
|
height: 2px;
|
|
}
|
|
}
|
|
}
|
|
|
|
textarea {
|
|
resize: none;
|
|
min-height: pxrem(175);
|
|
}
|
|
|
|
select {
|
|
max-width: 100%;
|
|
}
|
|
|
|
.current-image {
|
|
margin-bottom: pxrem(15);
|
|
display: block;
|
|
width: pxrem(125);
|
|
max-width: 100%;
|
|
}
|
|
|
|
.edit-button {
|
|
margin-bottom: $half-gutter-width;
|
|
display: inline-block;
|
|
padding: pxrem(5) pxrem(10);
|
|
border-radius: pxrem(5);
|
|
text-transform: uppercase;
|
|
text-decoration: none;
|
|
transition: background-color 150ms;
|
|
cursor: pointer;
|
|
|
|
&:hover, &:focus {
|
|
text-decoration: none;
|
|
}
|
|
|
|
&.view {
|
|
border: 1px solid color.adjust($c-dashboard-dark, $lightness: -5%);
|
|
background-color: $c-dashboard-dark;
|
|
color: $c-text-light;
|
|
|
|
&:hover {
|
|
background-color: color.adjust($c-dashboard-dark, $lightness: 5%);
|
|
}
|
|
}
|
|
|
|
&.delete {
|
|
border: 1px solid color.adjust($c-dashboard-delete, $lightness: -5%);
|
|
background-color: $c-dashboard-delete;
|
|
color: $c-text-light;
|
|
|
|
&:hover {
|
|
background-color: color.adjust($c-dashboard-delete, $lightness: 5%);
|
|
}
|
|
}
|
|
}
|
|
|
|
.back-button, .submit-button {
|
|
margin: pxrem(20) pxrem(15) pxrem(15) pxrem(15);
|
|
|
|
@include media-breakpoint-down(lg) {
|
|
margin-right: 0px;
|
|
margin-left: 0px;
|
|
display: block;
|
|
width: 100%;
|
|
}
|
|
|
|
&:first-child {
|
|
margin-left: 0px;
|
|
|
|
@include media-breakpoint-down(lg) {
|
|
margin-top: pxrem(20);
|
|
margin-bottom: pxrem(5);
|
|
}
|
|
}
|
|
|
|
&:last-child {
|
|
@include media-breakpoint-down(lg) {
|
|
margin-top: pxrem(10);
|
|
margin-bottom: pxrem(20);
|
|
}
|
|
|
|
@include media-breakpoint-down(sm) {
|
|
margin-bottom: 0px;
|
|
}
|
|
}
|
|
}
|
|
|
|
.submit-button {
|
|
transition: opacity 150ms;
|
|
|
|
&.no-input {
|
|
opacity: 0.65;
|
|
pointer-events: none;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.dashboard-settings-container {
|
|
@include media-breakpoint-up(lg) {
|
|
display: flex;
|
|
flex-direction: row;
|
|
}
|
|
|
|
form {
|
|
&.user-profile-image {
|
|
display: block;
|
|
width: 100%;
|
|
max-width: pxrem(150);
|
|
|
|
@include media-breakpoint-down(lg) {
|
|
margin: $grid-gutter-width auto;
|
|
}
|
|
|
|
@include media-breakpoint-up(lg) {
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.image-display {
|
|
position: relative;
|
|
width: 100%;
|
|
aspect-ratio: 1/1;
|
|
border: 1px solid color.adjust($c-dashboard-light, $lightness: -10%);
|
|
border-radius: pxrem(3);
|
|
background-position: center center;
|
|
background-size: cover;
|
|
background-repeat: no-repeat;
|
|
}
|
|
|
|
.image-buttons {
|
|
margin-top: pxrem(20);
|
|
display: flex;
|
|
justify-content: space-around;
|
|
|
|
input {
|
|
display: none;
|
|
}
|
|
|
|
.image-upload-button, .image-delete-button {
|
|
display: block;
|
|
width: pxrem(40);
|
|
height: pxrem(40);
|
|
min-height: 0;
|
|
border: 1px solid color.adjust($c-dashboard-light, $lightness: -14%);
|
|
border-radius: pxrem(3);
|
|
background-color: color.adjust($c-dashboard-light, $lightness: -10%);
|
|
line-height: 1;
|
|
cursor: pointer;
|
|
|
|
&:hover {
|
|
background-color: color.adjust($c-dashboard-light, $lightness: -7%);
|
|
}
|
|
}
|
|
|
|
.image-upload-button {
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
transition: background-color 150ms;
|
|
}
|
|
|
|
.image-delete-button {
|
|
opacity: 1;
|
|
transition: background-color 150ms, opacity 150ms;
|
|
|
|
&.inactive {
|
|
opacity: 0.35;
|
|
pointer-events: none;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
&.user-profile-update {
|
|
@include media-breakpoint-down(lg) {
|
|
border-top: 1px solid color.adjust($c-dashboard-light, $lightness: -10%);
|
|
border-bottom: 1px solid color.adjust($c-dashboard-light, $lightness: -10%);
|
|
}
|
|
|
|
@include media-breakpoint-up(lg) {
|
|
margin-right: $grid-gutter-width;
|
|
margin-left: $grid-gutter-width;
|
|
width: 100%;
|
|
padding: 0px $grid-gutter-width;
|
|
flex-grow: 1;
|
|
border-right: 1px solid color.adjust($c-dashboard-light, $lightness: -10%);
|
|
border-left: 1px solid color.adjust($c-dashboard-light, $lightness: -10%);
|
|
}
|
|
}
|
|
|
|
&.user-password-update {
|
|
@include media-breakpoint-up(lg) {
|
|
width: pxrem(225);
|
|
flex-shrink: 0;
|
|
}
|
|
}
|
|
|
|
.form-title {
|
|
@include media-breakpoint-down(lg) {
|
|
margin-top: pxrem(25);
|
|
margin-bottom: pxrem(20);
|
|
text-align: center;
|
|
}
|
|
}
|
|
|
|
.submit-button {
|
|
@include media-breakpoint-down(md) {
|
|
margin-right: auto;
|
|
margin-left: auto;
|
|
width: 100%;
|
|
}
|
|
|
|
@include media-breakpoint-up(md) {
|
|
float: none;
|
|
margin: $half-gutter-width 0px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#loading-modal {
|
|
z-index: 1000;
|
|
position: fixed;
|
|
top: 0px;
|
|
left: 0px;
|
|
visibility: hidden;
|
|
width: 100%;
|
|
height: 100%;
|
|
background-color: color.adjust(color.adjust($c-dashboard-light, $lightness: 1%), $alpha: -0.6);
|
|
opacity: 0;
|
|
transition: opacity 250ms;
|
|
|
|
.spinner-container {
|
|
position: absolute;
|
|
top: 50%;
|
|
left: 50%;
|
|
transform: translateX(-50%) translateY(-50%);
|
|
}
|
|
}
|
|
|
|
.modal {
|
|
z-index: 1000;
|
|
position: fixed;
|
|
top: 0px;
|
|
left: 0px;
|
|
visibility: hidden;
|
|
display: flex;
|
|
width: 100%;
|
|
height: 100%;
|
|
padding: $grid-gutter-width;
|
|
justify-content: center;
|
|
align-items: center;
|
|
background-color: color.adjust(color.adjust($c-dashboard-light, $lightness: 1%), $alpha: -0.3);
|
|
opacity: 0;
|
|
transition: opacity 250ms;
|
|
|
|
.card {
|
|
position: relative;
|
|
margin: 0px;
|
|
width: 100%;
|
|
max-width: pxrem(500);
|
|
|
|
.btn {
|
|
margin: pxrem(20) pxrem(15);
|
|
display: inline-block;
|
|
|
|
&:not(:last-child) {
|
|
margin-bottom: 0px;
|
|
}
|
|
}
|
|
}
|
|
|
|
&.alert .card {
|
|
.message {
|
|
min-height: pxrem(50);
|
|
padding: pxrem(15) pxrem(20);
|
|
text-align: left;
|
|
|
|
@include media-breakpoint-up(md) {
|
|
padding-right: pxrem(85);
|
|
}
|
|
}
|
|
|
|
.btn {
|
|
@include media-breakpoint-down(md) {
|
|
margin-top: 0px;
|
|
}
|
|
|
|
@include media-breakpoint-up(md) {
|
|
position: absolute;
|
|
top: 50%;
|
|
right: 0px;
|
|
transform: translateY(-50%);
|
|
}
|
|
}
|
|
}
|
|
}
|