mirror of
https://github.com/pi-hole/web.git
synced 2024-12-06 19:36:21 +01:00
070ccb56f3
Signed-off-by: Michal Svatos <github@svatos.dev>
5892 lines
139 KiB
CSS
5892 lines
139 KiB
CSS
/*
|
|
- Document: Pi-hole LCARS Star Trek Picard Theme
|
|
- Version: 1.4.3
|
|
- Author: @MichalSvatos (svatos.dev)
|
|
- Description: Star Trek Picard LCARS Theme for Pi-hole dashboard.
|
|
- Disclaimer: Due to fact that I have the access only to CSS I was forced to use some !importants and a lot of IDs. I'm sorry.
|
|
- Resources: mewho.com, Star Trek Picard, various LCARS images and websites
|
|
*/
|
|
|
|
/* GLOBAL SETTINGS AND VARIABLES
|
|
========================================================== */
|
|
|
|
/*
|
|
-- breakpoints used (based on Bootstrap)
|
|
sm: 576px;
|
|
md: 768px;
|
|
lg: 992px;
|
|
xl: 1200px;
|
|
xxl: 1500px;
|
|
*/
|
|
|
|
:root {
|
|
/* -- gaps, sizes */
|
|
--gap: 1.6rem;
|
|
--gap75: calc(var(--gap) * 0.75);
|
|
--gap50: calc(var(--gap) / 2);
|
|
--gap25: calc(var(--gap) / 4);
|
|
--sidebar-width: calc(var(--gap) * 14);
|
|
--collapsed-width: calc(var(--gap) * 3.125);
|
|
--gradient-pos: 300px;
|
|
--wrapper-max-width: 1250px;
|
|
--radius100: var(--gap);
|
|
--radius75: var(--gap75);
|
|
--radius50: var(--gap50);
|
|
--radius25: var(--gap25);
|
|
--radius-main-lcars: calc(var(--radius100) * 5);
|
|
--radius-main-lcars-inner: calc(var(--radius100) * 3);
|
|
--lcars-space: var(--gap25);
|
|
--border-width: calc(var(--gap) / 8);
|
|
--border-width-thick: calc(var(--gap) / 2);
|
|
--border-panel-width: calc(var(--border-width) * 40);
|
|
--pie-chart-border-width: calc(var(--gap) * 9);
|
|
--form-fields-height: 34px;
|
|
|
|
/* -- colors */
|
|
--color-background: #000;
|
|
--color-primary: #313748;
|
|
--color-primary-text: #9fa5b8;
|
|
--color-secondary: #53596c;
|
|
--color-secondary-hover: #9fa5b8;
|
|
--color-tertiary: #6e748a;
|
|
--color-tertiary-hover: #80c8ec;
|
|
--color-quaternary: #915e4d;
|
|
--color-quinternary: #8e4437;
|
|
--color-text: #9fa5b8;
|
|
--color-text-dark: #000;
|
|
--color-link: #3c8dbc;
|
|
--color-danger: #d55138;
|
|
--color-danger-bright: #f37052;
|
|
--color-red-alert: #ea3323;
|
|
--color-success: #0bd08a;
|
|
--color-success-dark: #024b3b;
|
|
--color-disabled: #1f2228;
|
|
--color-supplement-01: #411e17;
|
|
--color-supplement-02: #131315;
|
|
--color-supplement-03: #bcbc53;
|
|
--color-supplement-04: #a856a8;
|
|
|
|
/* -- typo */
|
|
--font-family: Antonio, Oswald, "Myriad Pro Cond", "Roboto Condensed", "Futura Condensed",
|
|
"Helvetica Condensed", "Arial Narrow", sans-serif;
|
|
--font-family-mono: "Ubuntu Mono", Consolas, "Courier New", monospace;
|
|
--font-light: 300;
|
|
--font-regular: 400;
|
|
--font-bold: 600;
|
|
|
|
/* -- animations*/
|
|
--transition-duration: 0.6s;
|
|
--transition-duration-fast: 0.25s;
|
|
--transition-duration-slow: 1.6s;
|
|
--transition-function: cubic-bezier(0.33, 1, 0.68, 1);
|
|
--transition: var(--transition-duration) var(--transition-function);
|
|
--transition-fast: var(--transition-duration-fast) var(--transition-function);
|
|
--transition-slow: var(--transition-duration-slow) var(--transition-function);
|
|
|
|
/* -- LCARS panels and gradients */
|
|
--background-grid: linear-gradient(var(--color-supplement-01) 0.1rem, transparent 0.1rem),
|
|
linear-gradient(90deg, var(--color-supplement-01) 0.1rem, transparent 0.1rem);
|
|
}
|
|
|
|
@media (max-width: 767px) {
|
|
:root {
|
|
--border-panel-width: var(--border-width-thick);
|
|
}
|
|
}
|
|
|
|
/* GLOBAL STYLES
|
|
========================================================== */
|
|
|
|
html {
|
|
font-size: 62.5%;
|
|
scrollbar-color: var(--color-primary) var(--color-disabled); /* Firefox only scrollbar */
|
|
color-scheme: dark;
|
|
}
|
|
|
|
/* --- Chrome & Safari scrollbar */
|
|
html::-webkit-scrollbar,
|
|
.wrapper::-webkit-scrollbar,
|
|
#output::-webkit-scrollbar,
|
|
.select2-results__options::-webkit-scrollbar {
|
|
width: var(--gap50);
|
|
height: var(--gap50);
|
|
}
|
|
|
|
html::-webkit-scrollbar-thumb,
|
|
.wrapper::-webkit-scrollbar-thumb,
|
|
#output::-webkit-scrollbar-thumb,
|
|
.select2-results__options::-webkit-scrollbar-thumb {
|
|
background: var(--color-primary);
|
|
border-radius: var(--radius25);
|
|
}
|
|
|
|
html::-webkit-scrollbar-track,
|
|
.wrapper::-webkit-scrollbar-track,
|
|
#output::-webkit-scrollbar-track,
|
|
.select2-results__options::-webkit-scrollbar-track {
|
|
background: var(--color-disabled);
|
|
}
|
|
|
|
.wrapper,
|
|
#output {
|
|
scrollbar-color: var(--color-primary) var(--color-disabled);
|
|
}
|
|
|
|
.layout-boxed .wrapper {
|
|
box-shadow: none;
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
.layout-boxed .wrapper {
|
|
padding-inline: var(--gap25);
|
|
}
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
body:not(.layout-boxed) .wrapper {
|
|
padding-inline: var(--gap25);
|
|
}
|
|
}
|
|
|
|
body {
|
|
font-size: 1.6rem;
|
|
color: var(--color-text);
|
|
background: var(--color-background);
|
|
font-family: var(--font-family);
|
|
}
|
|
|
|
h1,
|
|
h2,
|
|
h3,
|
|
h4,
|
|
h5,
|
|
h6 {
|
|
font-family: var(--font-family);
|
|
text-transform: uppercase;
|
|
font-weight: var(--font-bold);
|
|
}
|
|
|
|
.sidebar-collapse {
|
|
--sidebar-width: var(--collapsed-width);
|
|
--radius-main-lcars: var(--radius100);
|
|
}
|
|
|
|
@media (max-width: 767px) {
|
|
:root {
|
|
--radius-main-lcars: var(--radius100);
|
|
--radius-main-lcars-inner: var(--radius75);
|
|
}
|
|
}
|
|
|
|
.svg-inline--fa {
|
|
vertical-align: inherit;
|
|
}
|
|
|
|
/* BUTTONS
|
|
========================================================== */
|
|
|
|
.btn,
|
|
.nav-tabs-custom > .nav-tabs > li > a,
|
|
.main-header .navbar-nav li a {
|
|
color: var(--color-text);
|
|
font-weight: var(--font-bold);
|
|
border: none;
|
|
min-width: calc(var(--gap) * 6);
|
|
transition: background-color var(--transition-fast);
|
|
}
|
|
|
|
.btn-default,
|
|
.btn-primary,
|
|
.btn-success,
|
|
.btn-warning,
|
|
.btn-danger,
|
|
.nav-tabs-custom > .nav-tabs > li > a,
|
|
.main-header .navbar-nav li a,
|
|
.bs-actionsbox button.btn {
|
|
padding: var(--gap50) var(--gap);
|
|
border-radius: calc(var(--gap) * 1.5);
|
|
text-align: right;
|
|
text-transform: uppercase;
|
|
letter-spacing: 0.025rem;
|
|
}
|
|
|
|
.btn-default {
|
|
background-color: var(--color-disabled);
|
|
border: none;
|
|
color: var(--color-text);
|
|
}
|
|
|
|
.btn-primary {
|
|
background-color: var(--color-primary);
|
|
border: none;
|
|
color: var(--color-text);
|
|
font-weight: bold;
|
|
text-transform: uppercase;
|
|
}
|
|
|
|
.btn-primary:hover,
|
|
.btn-primary:active,
|
|
.btn-primary.hover {
|
|
/*background-color: var(--color-primary-hover);*/
|
|
}
|
|
|
|
.btn-secondary,
|
|
.main-header .navbar-nav li a {
|
|
background-color: var(--color-secondary);
|
|
color: var(--color-text-dark);
|
|
}
|
|
|
|
.btn-secondary:hover,
|
|
.btn-secondary:active,
|
|
.btn-secondary.hover,
|
|
.main-header .navbar-nav li a:hover,
|
|
.main-header .navbar-nav li a:active {
|
|
background-color: var(--color-secondary-hover);
|
|
}
|
|
|
|
.btn-warning,
|
|
#add-group .btn-toolbar #add2black {
|
|
background-color: var(--color-supplement-01);
|
|
color: var(--color-danger-bright);
|
|
}
|
|
|
|
.btn-warning:hover,
|
|
#add-group .btn-toolbar #add2black:hover {
|
|
background-color: var(--color-danger);
|
|
color: var(--color-background);
|
|
}
|
|
|
|
.btn-whitelist,
|
|
.btn-blacklist,
|
|
.btn-audit,
|
|
.btn-xs.btn-whitelist,
|
|
.btn-xs.btn-blacklist,
|
|
.btn-xs.btn-audit {
|
|
position: relative;
|
|
padding-left: calc(var(--gap) * 2.75);
|
|
border-top-left-radius: 0;
|
|
border-bottom-left-radius: 0;
|
|
}
|
|
|
|
.btn-xs.btn-whitelist,
|
|
.btn-xs.btn-blacklist,
|
|
.btn-xs.btn-audit {
|
|
padding: var(--gap25) var(--gap) var(--gap25) calc(var(--gap) * 2.75);
|
|
border-radius: calc(var(--gap) * 1.5);
|
|
}
|
|
|
|
.btn-audit {
|
|
background-color: var(--color-supplement-01);
|
|
}
|
|
|
|
.btn-whitelist:hover {
|
|
background-color: var(--color-success-dark) !important;
|
|
color: #fff !important;
|
|
}
|
|
|
|
.btn-blacklist:hover {
|
|
background-color: var(--color-red-alert) !important;
|
|
color: #fff !important;
|
|
}
|
|
|
|
.btn-audit:hover {
|
|
background-color: var(--color-primary);
|
|
color: #fff !important;
|
|
}
|
|
|
|
.btn-whitelist > svg.svg-inline--fa,
|
|
.btn-blacklist > svg.svg-inline--fa,
|
|
.btn-audit > svg.svg-inline--fa,
|
|
.btn-xs.btn-whitelist > svg.svg-inline--fa,
|
|
.btn-xs.btn-blacklist > svg.svg-inline--fa,
|
|
.btn-xs.btn-audit > svg.svg-inline--fa {
|
|
position: absolute;
|
|
inset: 0 auto 0 0;
|
|
width: calc(var(--gap) * 2);
|
|
height: calc(var(--gap) * 2 + var(--border-width));
|
|
padding: 0 var(--gap50);
|
|
border-right: var(--border-width) solid var(--color-background);
|
|
}
|
|
|
|
.btn-xs.btn-whitelist > svg.svg-inline--fa,
|
|
.btn-xs.btn-blacklist > svg.svg-inline--fa,
|
|
.btn-xs.btn-audit > svg.svg-inline--fa {
|
|
height: calc(var(--gap) * 1.5 + var(--border-width));
|
|
}
|
|
|
|
.btn-xs.btn-whitelist,
|
|
.btn-xs.btn-blacklist {
|
|
margin-right: var(--gap25);
|
|
}
|
|
|
|
.btn-success,
|
|
.bs-actionsbox > button.btn-success,
|
|
#add-group .btn-toolbar #add2white {
|
|
background-color: var(--color-success-dark);
|
|
color: var(--color-success);
|
|
}
|
|
|
|
.btn-success:hover,
|
|
.bs-actionsbox > button.btn-success:hover,
|
|
#add-group .btn-toolbar #add2white:hover {
|
|
background-color: var(--color-link) !important;
|
|
color: #fff;
|
|
}
|
|
|
|
#resetButton,
|
|
.btn-danger {
|
|
background-color: var(--color-red-alert);
|
|
color: #fff;
|
|
}
|
|
|
|
#resetButton:hover,
|
|
.btn-danger:hover {
|
|
--pulse-color: #fff;
|
|
--pulse-color-background: var(--color-red-alert);
|
|
color: var(--color-background);
|
|
animation: pulseBg 2s ease-in-out infinite;
|
|
}
|
|
|
|
#resetButton {
|
|
color: #fff !important;
|
|
margin-top: var(--gap);
|
|
min-width: calc(var(--gap) * 8);
|
|
}
|
|
|
|
.btn-xs {
|
|
padding: 1px 5px;
|
|
border-radius: 5px;
|
|
min-width: auto;
|
|
}
|
|
|
|
.navbar-nav > .user-menu > .dropdown-menu > .user-footer .btn-link,
|
|
.login-footer .btn-default,
|
|
.login-box button.btn-primary {
|
|
background-color: var(--color-disabled) !important;
|
|
color: var(--color-link);
|
|
padding: var(--gap50) var(--gap) var(--gap50) calc(var(--gap) * 3.5);
|
|
position: relative;
|
|
text-align: right;
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
}
|
|
|
|
.navbar-nav > .user-menu > .dropdown-menu > .user-footer .btn-link:hover,
|
|
.login-footer .btn-default:hover,
|
|
.login-box button.btn-primary:hover {
|
|
background-color: var(--color-primary) !important;
|
|
color: #fff;
|
|
}
|
|
|
|
.navbar-nav > .user-menu > .dropdown-menu > .user-footer .btn-link svg,
|
|
.login-footer .btn-default svg,
|
|
.login-box button.btn-primary svg {
|
|
position: absolute;
|
|
background-color: rgba(0, 0, 0, 0.35);
|
|
padding: calc(var(--gap75));
|
|
width: calc(var(--gap) * 3);
|
|
height: 36px !important;
|
|
inset: 0 auto 0 0;
|
|
border-right: calc(var(--border-width) * 2) solid var(--color-background);
|
|
border-radius: 18px 0 0 18px;
|
|
}
|
|
|
|
/* CHECKBOXES, RADIOS
|
|
========================================================== */
|
|
|
|
body[class*="lcars"] [class*="icheck-"] > label {
|
|
padding-left: calc(var(--gap) * 3.5) !important;
|
|
}
|
|
|
|
body[class*="lcars"] [class*="icheck-"] > input:first-child:checked + input[type="hidden"] + label,
|
|
body[class*="lcars"] [class*="icheck-"] > input:first-child:checked + label {
|
|
color: var(--color-tertiary-hover);
|
|
}
|
|
|
|
/* --- border */
|
|
body[class*="lcars"] [class*="icheck-"] > input:first-child + input[type="hidden"] + label:before,
|
|
body[class*="lcars"] [class*="icheck-"] > input:first-child + label:before {
|
|
content: "";
|
|
width: calc(var(--gap) * 2.5);
|
|
margin-left: calc(var(--gap) * -3.5) !important;
|
|
border: calc(var(--border-width) * 2) solid var(--color-primary);
|
|
border-bottom: 0;
|
|
transition:
|
|
border-color var(--transition-fast),
|
|
background-color var(--transition-fast);
|
|
}
|
|
|
|
body[class*="lcars"]
|
|
.icheck-primary
|
|
> input:first-child:checked
|
|
+ input[type="hidden"]
|
|
+ label:before,
|
|
body[class*="lcars"] .icheck-primary > input:first-child:checked + label:before {
|
|
background-color: transparent;
|
|
border-color: var(--color-success-dark);
|
|
}
|
|
|
|
body[class*="lcars"]
|
|
[class*="icheck-"]
|
|
> input:first-child:not(:checked):not(:disabled):hover
|
|
+ input[type="hidden"]
|
|
+ label:before,
|
|
body[class*="lcars"]
|
|
[class*="icheck-"]
|
|
> input:first-child:not(:checked):not(:disabled):hover
|
|
+ label:before {
|
|
border-width: calc(var(--border-width) * 2);
|
|
border-color: var(--color-secondary);
|
|
}
|
|
|
|
/* --- switch */
|
|
body[class*="lcars"] [class*="icheck-"] > input:first-child + input[type="hidden"] + label:after,
|
|
body[class*="lcars"] [class*="icheck-"] > input:first-child + label:after {
|
|
content: "";
|
|
background-color: var(--color-primary);
|
|
width: var(--gap75);
|
|
height: 1.4rem;
|
|
inset: var(--border-width-thick) auto 0 var(--border-width-thick);
|
|
position: absolute;
|
|
transition: inset var(--transition);
|
|
}
|
|
|
|
body[class*="lcars"]
|
|
[class*="icheck-"]
|
|
> input:first-child:checked
|
|
+ input[type="hidden"]
|
|
+ label:after,
|
|
body[class*="lcars"] [class*="icheck-"] > input:first-child:checked + label:after {
|
|
background-color: var(--color-success);
|
|
width: var(--gap75);
|
|
height: 1.4rem;
|
|
transform: none;
|
|
border: none;
|
|
inset: var(--border-width-thick) auto 0 calc(var(--border-width) * 10);
|
|
}
|
|
|
|
/* --- radios */
|
|
body[class*="lcars"]
|
|
[class*="icheck-"]
|
|
> input[type="radio"]:first-child
|
|
+ input[type="hidden"]
|
|
+ label:before,
|
|
body[class*="lcars"] [class*="icheck-"] > input[type="radio"]:first-child + label:before {
|
|
border-radius: 0;
|
|
}
|
|
|
|
body[class*="lcars"]
|
|
[class*="icheck-"]
|
|
> input[type="radio"]:first-child
|
|
+ input[type="hidden"]
|
|
+ label:after,
|
|
body[class*="lcars"] [class*="icheck-"] > input[type="radio"]:first-child + label:after {
|
|
background-color: var(--color-disabled);
|
|
width: calc(var(--gap) * 1.5);
|
|
inset: var(--border-width-thick) auto 0 var(--border-width-thick);
|
|
}
|
|
|
|
body[class*="lcars"]
|
|
[class*="icheck-"]
|
|
> input[type="radio"]:first-child:checked
|
|
+ input[type="hidden"]
|
|
+ label:after,
|
|
body[class*="lcars"] [class*="icheck-"] > input[type="radio"]:first-child:checked + label:after {
|
|
background-color: var(--color-success);
|
|
}
|
|
|
|
body[class*="lcars"] [class*="icheck-"] > input:first-child:focus + label:before {
|
|
outline-color: transparent;
|
|
}
|
|
|
|
/* FORMS
|
|
========================================================== */
|
|
|
|
.form-control,
|
|
td > .form-group,
|
|
.daterangepicker select.yearselect,
|
|
.daterangepicker select.monthselect,
|
|
.daterangepicker select.hourselect,
|
|
.daterangepicker select.minuteselect,
|
|
.select2-container--default .select2-search--dropdown .select2-search__field,
|
|
input[type="number"],
|
|
select[id="tempunit-selector"],
|
|
select[id="iCheckStyle"] {
|
|
border-color: var(--color-primary);
|
|
color: var(--color-tertiary-hover);
|
|
background-color: var(--color-disabled);
|
|
transition:
|
|
background-color var(--transition),
|
|
border-color var(--transition);
|
|
}
|
|
|
|
td > .form-group,
|
|
input[type="number"],
|
|
select[id="tempunit-selector"],
|
|
select[id="iCheckStyle"] {
|
|
border-width: 1px;
|
|
border-style: solid;
|
|
padding: 5px 10px; /* from form.less */
|
|
font-size: 12px; /* from form.less */
|
|
}
|
|
|
|
.form-control[disabled],
|
|
.form-control[readonly],
|
|
fieldset[disabled] .form-control {
|
|
border-color: var(--color-primary);
|
|
background-color: var(--color-disabled);
|
|
}
|
|
|
|
.form-control:focus,
|
|
td > .form-group:focus,
|
|
.select2-container--default .select2-search--dropdown .select2-search__field:focus,
|
|
input[type="number"]:focus,
|
|
select[id="tempunit-selector"]:focus,
|
|
select[id="iCheckStyle"]:focus {
|
|
border-color: var(--color-tertiary-hover);
|
|
background-color: var(--color-background);
|
|
outline: none;
|
|
}
|
|
|
|
.input-group .input-group-addon,
|
|
.input-group .input-group-btn .btn-file {
|
|
background-color: var(--color-secondary-hover);
|
|
border: none;
|
|
border-radius: var(--radius100) 0 0 var(--radius100);
|
|
color: var(--color-text-dark);
|
|
text-transform: uppercase;
|
|
font-size: 1.25rem;
|
|
font-weight: 600;
|
|
}
|
|
|
|
.input-group .input-group-btn .btn-default {
|
|
background-color: var(--color-secondary-hover);
|
|
border: none;
|
|
color: var(--color-text-dark);
|
|
text-transform: uppercase;
|
|
font-size: 1.25rem;
|
|
font-weight: 600;
|
|
}
|
|
|
|
.input-group .input-group-btn .btn-default:hover {
|
|
background-color: var(--color-tertiary);
|
|
}
|
|
|
|
.input-group .input-group-btn .btn-default + .btn-default {
|
|
margin-left: calc(var(--border-width) * 2);
|
|
}
|
|
|
|
textarea.form-control {
|
|
resize: vertical;
|
|
}
|
|
|
|
div.dataTables_wrapper div.dataTables_filter input,
|
|
div.dataTables_wrapper div.dataTables_length select {
|
|
height: var(--form-fields-height);
|
|
}
|
|
|
|
div.dataTables_wrapper div.dataTables_length select {
|
|
border-radius: var(--radius100);
|
|
margin-inline: var(--gap25);
|
|
}
|
|
|
|
.dataTables_length[id="all-queries_length"],
|
|
.dataTables_info[id="all-queries_info"] {
|
|
margin-top: var(--gap);
|
|
padding-top: 0;
|
|
}
|
|
|
|
/* -- select2 */
|
|
.select2-container--default .select2-selection--single {
|
|
height: var(--form-fields-height);
|
|
border-color: var(--color-tertiary);
|
|
color: var(--color-tertiary-hover);
|
|
background-color: var(--color-disabled);
|
|
border-radius: var(--radius100);
|
|
font-size: 14px;
|
|
}
|
|
|
|
.select2-container--default.select2-container--open.select2-container--below
|
|
.select2-selection--single,
|
|
.select2-container--default.select2-container--open.select2-container--below
|
|
.select2-selection--multiple {
|
|
background-color: var(--color-secondary);
|
|
border-color: var(--color-secondary);
|
|
}
|
|
|
|
.select2-container--default .select2-selection__placeholder {
|
|
text-transform: uppercase;
|
|
}
|
|
|
|
.select2-container--default.select2-container--open .select2-selection__placeholder {
|
|
color: var(--color-background);
|
|
}
|
|
|
|
.select2-container--default .select2-selection--single .select2-selection__rendered {
|
|
color: var(--color-tertiary-hover);
|
|
}
|
|
|
|
.select2-container--default .select2-selection--single .select2-selection__clear {
|
|
width: calc(var(--gap) * 2.25);
|
|
height: calc(var(--gap) * 1.75);
|
|
background-color: var(--color-danger);
|
|
overflow: hidden;
|
|
text-indent: -32px;
|
|
border: calc(var(--border-width) * 2) solid var(--color-danger);
|
|
border-radius: var(--radius100) 0 0 var(--radius100);
|
|
transition:
|
|
border-color var(--transition),
|
|
background-color var(--transition);
|
|
}
|
|
|
|
.select2-container--default .select2-selection--single .select2-selection__clear::before,
|
|
.select2-container--default .select2-selection--single .select2-selection__clear::after {
|
|
content: "";
|
|
position: absolute;
|
|
width: var(--border-width);
|
|
height: 100%;
|
|
background-color: var(--color-background);
|
|
top: 0;
|
|
}
|
|
|
|
.select2-container--default .select2-selection--single .select2-selection__clear::before {
|
|
left: calc(50% - (var(--border-width) / 2));
|
|
rotate: -45deg;
|
|
}
|
|
|
|
.select2-container--default .select2-selection--single .select2-selection__clear::after {
|
|
right: calc(50% - (var(--border-width) / 2));
|
|
rotate: 45deg;
|
|
}
|
|
|
|
.select2-container--default .select2-selection--single .select2-selection__clear:hover {
|
|
background-color: var(--color-danger-bright);
|
|
border-color: var(--color-danger-bright);
|
|
}
|
|
|
|
.select2-container--default .select2-selection--single .select2-selection__arrow {
|
|
top: 5px;
|
|
right: 10px;
|
|
}
|
|
|
|
.select2-dropdown {
|
|
background-color: var(--color-primary);
|
|
border-color: var(--color-primary);
|
|
translate: 0 2px;
|
|
}
|
|
|
|
.select2-search--dropdown {
|
|
padding: var(--gap) var(--gap) var(--gap) var(--gap);
|
|
background-color: var(--color-primary);
|
|
position: relative;
|
|
}
|
|
|
|
.select2-search--dropdown::after {
|
|
content: "";
|
|
height: var(--border-width);
|
|
background-color: var(--color-background);
|
|
position: absolute;
|
|
inset: auto calc((var(--gap25) + 1px) * -1) 0 calc((var(--gap25) + 1px) * -1);
|
|
}
|
|
|
|
.select2-results {
|
|
padding: var(--gap) var(--gap) 0 var(--gap);
|
|
background-color: var(--color-background);
|
|
}
|
|
|
|
.select2-container--open .select2-dropdown--below {
|
|
padding-inline: var(--gap25);
|
|
border-bottom-right-radius: var(--radius100);
|
|
border-bottom-left-radius: var(--radius100);
|
|
border-bottom-width: var(--gap);
|
|
}
|
|
|
|
.select2-container--default .select2-results > .select2-results__options {
|
|
padding-bottom: var(--gap);
|
|
}
|
|
|
|
.select2-results__option {
|
|
background-color: var(--color-disabled);
|
|
color: var(--color-link);
|
|
font-size: 1.4rem;
|
|
padding-inline: var(--gap);
|
|
position: relative;
|
|
transition:
|
|
background-color var(--transition),
|
|
color var(--transition);
|
|
}
|
|
|
|
.select2-results__option::before {
|
|
content: "";
|
|
width: var(--gap50);
|
|
background-color: var(--color-primary);
|
|
position: absolute;
|
|
inset: 0 auto 0 0;
|
|
border-right: var(--gap25) solid var(--color-background);
|
|
}
|
|
|
|
.select2-results__option + .select2-results__option {
|
|
border-top: var(--border-width-thick) solid var(--color-background);
|
|
}
|
|
|
|
.select2-container--default .select2-results__option--highlighted[aria-selected] {
|
|
background-color: var(--color-secondary);
|
|
color: var(--color-tertiary-hover);
|
|
}
|
|
|
|
.select2-container--default .select2-results__option--highlighted[aria-selected]::before {
|
|
background-color: var(--color-link);
|
|
}
|
|
|
|
/* PAGINATION
|
|
========================================================== */
|
|
|
|
.pagination {
|
|
font-size: 1.6rem;
|
|
margin: var(--gap) 0 !important;
|
|
}
|
|
|
|
.pagination > li > a {
|
|
margin: 0 calc(var(--gap) / 8);
|
|
min-width: calc(var(--gap) * 2);
|
|
background: var(--color-tertiary);
|
|
color: var(--color-text-dark);
|
|
text-align: center;
|
|
border: none;
|
|
}
|
|
|
|
.pagination > li > a:focus,
|
|
.pagination > li > a:hover,
|
|
.pagination > li > span:focus,
|
|
.pagination > li > span:hover {
|
|
color: var(--color-text-dark);
|
|
background-color: var(--color-tertiary-hover);
|
|
}
|
|
|
|
.pagination > .disabled > a,
|
|
.pagination > .disabled > a:focus,
|
|
.pagination > .disabled > a:hover,
|
|
.pagination > .disabled > span,
|
|
.pagination > .disabled > span:focus,
|
|
.pagination > .disabled > span:hover {
|
|
background-color: var(--color-disabled);
|
|
color: var(--color-text-dark);
|
|
cursor: default;
|
|
}
|
|
|
|
.pagination > .active > a,
|
|
.pagination > .active > a:focus,
|
|
.pagination > .active > a:hover,
|
|
.pagination > .active > span,
|
|
.pagination > .active > span:focus,
|
|
.pagination > .active > span:hover {
|
|
color: var(--color-text-dark);
|
|
background-color: var(--color-quaternary);
|
|
}
|
|
|
|
#all-queries_wrapper .pagination > li > a {
|
|
padding: calc(var(--gap) / 2) calc(var(--gap) / 2);
|
|
line-height: 1;
|
|
}
|
|
|
|
#all-queries_wrapper .pagination > li.previous > a,
|
|
.pagination > li:first-child > a {
|
|
padding-left: calc(var(--gap) * 0.75);
|
|
border-radius: var(--gap) 0 0 var(--gap);
|
|
min-width: calc(var(--gap) * 5);
|
|
text-transform: uppercase;
|
|
}
|
|
|
|
#all-queries_wrapper .pagination > li.next > a,
|
|
.pagination > li:last-child > a {
|
|
padding-right: calc(var(--gap) * 0.75);
|
|
border-radius: 0 var(--gap) var(--gap) 0;
|
|
min-width: calc(var(--gap) * 5);
|
|
text-transform: uppercase;
|
|
margin-right: 0;
|
|
}
|
|
|
|
#all-queries_filter {
|
|
margin: var(--gap) 0;
|
|
}
|
|
|
|
/* LOGIN
|
|
========================================================== */
|
|
|
|
.login-box {
|
|
width: 90vw;
|
|
max-width: calc(var(--gap) * 65);
|
|
padding: calc(var(--gap) * 3) var(--gap);
|
|
}
|
|
|
|
@media (min-width: 992px) {
|
|
.login-box {
|
|
padding: calc(var(--gap) * 3) calc(var(--gap) * 10);
|
|
}
|
|
}
|
|
|
|
.login-box::after,
|
|
.login-box::before {
|
|
content: "";
|
|
position: absolute;
|
|
}
|
|
|
|
/* --- login - main panels */
|
|
.login-box::after {
|
|
--_login-border-radius: calc(var(--radius100) * 3);
|
|
--_login-main-bg-color: var(--color-disabled);
|
|
inset: 0;
|
|
background: linear-gradient(
|
|
90deg,
|
|
var(--_login-main-bg-color) 50%,
|
|
var(--_login-main-bg-color) 50%
|
|
);
|
|
border-radius: var(--_login-border-radius);
|
|
transition: border-radius var(--transition);
|
|
z-index: 0;
|
|
}
|
|
|
|
/* --- login - panel lines */
|
|
.login-box::before {
|
|
--_login-lines-bg-color: var(--color-primary);
|
|
inset: 15% var(--gap50);
|
|
background-color: var(--_login-lines-bg-color);
|
|
border-radius: var(--radius100);
|
|
border: var(--border-width) solid var(--color-background);
|
|
z-index: 1;
|
|
}
|
|
|
|
@media (min-width: 992px) {
|
|
.login-box::after {
|
|
border-radius: calc(var(--radius100) * 4);
|
|
animation: loginPanel var(--transition) 0s forwards;
|
|
}
|
|
|
|
.login-box::before {
|
|
inset: calc(var(--gap) * 1.35) calc(var(--gap) * 6);
|
|
border-radius: calc(var(--radius100) * 2);
|
|
animation: loginLines var(--transition) 0s forwards;
|
|
}
|
|
}
|
|
|
|
.login-box section {
|
|
background-color: var(--color-background);
|
|
padding: calc(var(--gap) * 2) calc(var(--gap) * 2) !important;
|
|
border-radius: var(--radius100);
|
|
position: relative;
|
|
z-index: 1;
|
|
transition: border-radius var(--transition);
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
.login-box section {
|
|
display: flex;
|
|
padding: calc(var(--gap) * 3) calc(var(--gap) * 3) !important;
|
|
}
|
|
}
|
|
|
|
.login-box section::before,
|
|
.login-box section::after {
|
|
--_login-title-bg-color: var(--color-primary);
|
|
content: "";
|
|
position: absolute;
|
|
width: 75%;
|
|
height: calc(var(--gap) * 3);
|
|
background-color: var(--_login-title-bg-color);
|
|
outline: var(--border-width-thick) solid var(--color-background);
|
|
left: 50%;
|
|
text-align: right;
|
|
padding: var(--gap25);
|
|
display: flex;
|
|
justify-content: flex-end;
|
|
align-items: flex-end;
|
|
}
|
|
|
|
/* --- login - "title" */
|
|
.login-box section::before {
|
|
--_login-title-color: var(--color-text-dark);
|
|
content: "Authorized access only";
|
|
text-transform: uppercase;
|
|
color: var(--_login-title-color);
|
|
top: 0;
|
|
translate: -50% -100%;
|
|
}
|
|
|
|
/* --- login - "footer" */
|
|
.login-box section::after {
|
|
--_login-section-border-color: var(--color-primary);
|
|
--_login-color-grid: var(--color-supplement-01);
|
|
content: "Background neural net analysis: Awaiting input";
|
|
letter-spacing: 0.025rem;
|
|
text-transform: uppercase;
|
|
color: var(--color-danger);
|
|
font-size: 1.2rem;
|
|
justify-content: center;
|
|
bottom: 0;
|
|
translate: -50% 100%;
|
|
outline: var(--border-width) solid var(--color-background);
|
|
border: var(--border-width) solid var(--_login-section-border-color);
|
|
background-color: var(--color-background);
|
|
background-image: linear-gradient(var(--_login-color-grid) 1px, transparent 1px),
|
|
linear-gradient(90deg, var(--_login-color-grid) 1px, transparent 1px),
|
|
linear-gradient(var(--_login-color-grid) 0.5px, transparent 0.5px),
|
|
linear-gradient(90deg, var(--_login-color-grid) 0.5px, var(--color-background) 0.5px);
|
|
background-size:
|
|
var(--gap) var(--gap),
|
|
var(--gap) var(--gap),
|
|
var(--gap25) var(--gap25),
|
|
var(--gap25) var(--gap25);
|
|
background-position:
|
|
-1px -1px,
|
|
-1px -1px,
|
|
-0.5px -0.5px,
|
|
-0.5px -0.5px;
|
|
--pulse-font-color-01: var(--color-danger-bright);
|
|
--pulse-font-color-02: var(--color-red-alert);
|
|
}
|
|
|
|
@media (min-width: 992px) {
|
|
.login-box section::before {
|
|
width: calc(var(--gap) * 30);
|
|
background: var(--color-background);
|
|
justify-content: center;
|
|
align-items: center;
|
|
color: var(--color-background);
|
|
font-size: 4.5rem;
|
|
outline: none;
|
|
--pulse-font-color-01: var(--color-background);
|
|
--pulse-font-color-02: var(--color-primary);
|
|
animation: pulseFont var(--transition) 350ms forwards;
|
|
}
|
|
|
|
.login-box section::after {
|
|
width: calc(var(--gap) * 30);
|
|
opacity: 0;
|
|
animation:
|
|
pulseFont var(--transition-duration-slow) infinite,
|
|
topSmallScanner 2s linear reverse infinite,
|
|
fadeIn var(--transition) forwards;
|
|
}
|
|
}
|
|
|
|
/* --- login - logo */
|
|
.login-logo {
|
|
text-transform: uppercase;
|
|
position: relative;
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
.login-logo {
|
|
width: calc(var(--gap) * 10);
|
|
flex-shrink: 0;
|
|
padding-right: calc(var(--gap) * 2);
|
|
margin-bottom: 0;
|
|
}
|
|
}
|
|
|
|
@media (min-width: 992px) {
|
|
.login-logo::before {
|
|
--_login-logo-bg-color: var(--color-disabled);
|
|
content: "■ Login-74205A";
|
|
position: absolute;
|
|
width: calc(var(--gap) * 10);
|
|
inset: 0 auto 0 calc(var(--gap) * -13);
|
|
background-color: var(--_login-logo-bg-color);
|
|
display: flex;
|
|
justify-content: flex-end;
|
|
align-items: flex-end;
|
|
padding: var(--gap25) var(--gap25);
|
|
font-size: 1.2rem;
|
|
color: var(--color-text-dark);
|
|
border-top: calc(var(--border-width) * 2) solid var(--color-background);
|
|
border-bottom: calc(var(--border-width) * 2) solid var(--color-background);
|
|
}
|
|
|
|
.login-logo > div {
|
|
opacity: 0;
|
|
animation: fadeIn var(--transition) 1050ms forwards;
|
|
}
|
|
}
|
|
|
|
.loginpage-logo {
|
|
width: calc(var(--gap) * 5);
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
.loginpage-logo {
|
|
width: calc(var(--gap) * 8);
|
|
}
|
|
}
|
|
|
|
.login-footer {
|
|
flex-wrap: wrap;
|
|
gap: var(--gap);
|
|
}
|
|
|
|
.login-footer a {
|
|
width: 100%;
|
|
flex-grow: 1;
|
|
}
|
|
|
|
@media (min-width: 576px) and (max-width: 991px), (min-width: 1140px) {
|
|
.login-footer a {
|
|
width: calc((100% / 2) - var(--gap));
|
|
}
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
.login-box .card {
|
|
flex-grow: 1;
|
|
}
|
|
}
|
|
|
|
@media (min-width: 992px) {
|
|
.login-box .card {
|
|
opacity: 0;
|
|
animation: fadeIn var(--transition) 700ms forwards;
|
|
}
|
|
}
|
|
|
|
.login-box button.btn-primary {
|
|
background-color: var(--color-primary-text) !important;
|
|
color: var(--color-background);
|
|
}
|
|
|
|
.login-box button.btn-primary:hover {
|
|
background-color: var(--color-success) !important;
|
|
color: var(--color-background);
|
|
}
|
|
|
|
.login-box .card-body .box {
|
|
padding: 0;
|
|
border-radius: 0;
|
|
position: relative;
|
|
}
|
|
|
|
.login-box .card-body .box-header {
|
|
background: var(--color-supplement-01);
|
|
padding: var(--gap50);
|
|
transition:
|
|
background-color var(--transition),
|
|
color var(--transition);
|
|
}
|
|
|
|
.login-box .card-body .box-header:hover {
|
|
background: var(--color-danger);
|
|
color: var(--color-background);
|
|
}
|
|
|
|
.login-box .card-body .box-tools {
|
|
margin: 0;
|
|
}
|
|
|
|
.login-box .card-body .btn-box-tool {
|
|
width: calc(var(--gap) * 3);
|
|
min-width: auto;
|
|
position: absolute;
|
|
inset: 0 0 0 auto;
|
|
background-color: rgba(0, 0, 0, 0.35);
|
|
border-radius: 0;
|
|
color: var(--color-danger-bright);
|
|
border-left: calc(var(--border-width) * 2) solid var(--color-background);
|
|
}
|
|
|
|
.login-box .card-body .box-body {
|
|
padding: var(--gap) var(--gap);
|
|
border: calc(var(--border-width) * 2) solid var(--color-supplement-01);
|
|
border-radius: 0 0 var(--radius100) var(--radius100);
|
|
border-top: 0;
|
|
margin-right: calc(var(--gap) * 3);
|
|
font-weight: 100;
|
|
line-height: 1.5;
|
|
letter-spacing: 0.015rem;
|
|
}
|
|
|
|
/* --- login - error */
|
|
.login-box:has(.has-error)::after {
|
|
--_login-main-bg-color: var(--color-supplement-01);
|
|
animation: none;
|
|
}
|
|
|
|
.login-box:has(.has-error)::before {
|
|
--_login-lines-bg-color: var(--color-danger);
|
|
animation: none;
|
|
}
|
|
|
|
.login-box:has(.has-error) section::before {
|
|
content: "Encrypted access denied";
|
|
--pulse-font-color-01: #fff;
|
|
--pulse-font-color-02: var(--color-red-alert);
|
|
animation: pulseFont var(--transition-duration-slow) infinite;
|
|
}
|
|
|
|
.login-box:has(.has-error) section::after {
|
|
--_login-section-border-color: var(--color-danger);
|
|
--pulse-font-color-01: #fff;
|
|
content: "Background neural net analysis: Failed";
|
|
}
|
|
|
|
@media (max-width: 991px) {
|
|
.login-box:has(.has-error) section::before {
|
|
--_login-title-bg-color: var(--color-supplement-01);
|
|
}
|
|
}
|
|
|
|
@media (min-width: 992px) {
|
|
.login-box:has(.has-error) .card,
|
|
.login-box:has(.has-error) .login-logo {
|
|
opacity: 1;
|
|
animation: none;
|
|
}
|
|
|
|
.login-box:has(.has-error) .login-logo::before {
|
|
--_login-logo-bg-color: var(--color-supplement-01);
|
|
}
|
|
}
|
|
|
|
/* --- login - form error message */
|
|
.login-box-msg.has-error {
|
|
text-align: left;
|
|
padding: var(--gap50) var(--gap50) var(--gap50) calc(var(--gap) * 4);
|
|
border-top: var(--border-width) solid var(--color-red-alert);
|
|
position: relative;
|
|
border-radius: var(--radius100) 0 0 0;
|
|
overflow: hidden;
|
|
text-transform: uppercase;
|
|
}
|
|
|
|
.login-box-msg.has-error::after {
|
|
content: "■ ■ ■ ■ ■";
|
|
color: var(--color-danger);
|
|
position: absolute;
|
|
inset: calc(var(--gap25) * -1) 0 0 auto;
|
|
font-size: 1rem;
|
|
}
|
|
|
|
.login-box-msg.has-error label {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.login-box-msg.has-error svg {
|
|
position: absolute;
|
|
inset: 0 auto 0 0;
|
|
width: calc(var(--gap) * 3);
|
|
background-color: var(--color-red-alert);
|
|
color: var(--color-text-dark);
|
|
display: block;
|
|
height: calc(var(--gap) * 2.5);
|
|
padding: var(--gap75);
|
|
}
|
|
|
|
/* DONATION BAR (login + other pages)
|
|
========================================================== */
|
|
|
|
.login-donate {
|
|
text-transform: uppercase;
|
|
margin-top: calc(var(--gap) * 2);
|
|
padding: var(--gap) var(--gap) 0 var(--gap);
|
|
width: 90vw;
|
|
margin-inline: auto;
|
|
max-width: calc(var(--gap) * 35);
|
|
}
|
|
|
|
.login-donate .text-center,
|
|
.main-footer > .row:first-child > div {
|
|
position: relative;
|
|
border: var(--border-width) solid var(--color-success-dark);
|
|
border-bottom: var(--border-width-thick) solid var(--color-success-dark);
|
|
border-radius: calc(var(--radius100) * 2) calc(var(--radius100) * 2) calc(var(--radius100) * 2) 0;
|
|
padding: calc(var(--gap) * 2) var(--gap) calc(var(--gap) * 2) var(--gap);
|
|
color: var(--color-success-dark);
|
|
}
|
|
|
|
.login-donate .text-center::before,
|
|
.main-footer > .row:first-child > div::before {
|
|
content: "";
|
|
position: absolute;
|
|
inset: auto auto 0 0;
|
|
translate: calc(var(--gap25) * -1) 75%;
|
|
color: var(--color-red-alert);
|
|
font-size: 1rem;
|
|
text-align: left;
|
|
width: calc(var(--gap) * 6);
|
|
animation: runningDots 2.5s steps(10, end) infinite;
|
|
background: black;
|
|
height: var(--gap);
|
|
line-height: 1;
|
|
}
|
|
|
|
.login-donate .text-center::after,
|
|
.main-footer > .row:first-child > div::after {
|
|
content: "";
|
|
position: absolute;
|
|
border-top: calc(var(--border-width) * 2) solid var(--color-background);
|
|
border-bottom: var(--border-width-thick) solid var(--color-background);
|
|
height: calc(var(--gap) * 5);
|
|
inset: calc(var(--gap) * 2) calc(var(--gap50) * -1) auto calc(var(--gap50) * -1);
|
|
}
|
|
|
|
.login-donate strong,
|
|
.main-footer > .row:first-child > div strong {
|
|
display: block;
|
|
font-size: 3rem;
|
|
position: relative;
|
|
z-index: 1;
|
|
}
|
|
|
|
.login-donate strong::before,
|
|
.main-footer > .row:first-child > div strong::before {
|
|
content: "donation-bar_31911A ■";
|
|
font-size: 1.2rem;
|
|
position: absolute;
|
|
inset: calc(var(--gap) * -2) var(--gap) auto auto;
|
|
text-align: right;
|
|
color: var(--color-success-dark);
|
|
}
|
|
|
|
.main-footer > .row:first-child > div strong::before {
|
|
content: "donation-bar_1764A ■";
|
|
}
|
|
|
|
.login-donate strong::after,
|
|
.main-footer > .row:first-child > div strong::after {
|
|
content: "┅┅┅┅┅┄┄";
|
|
position: absolute;
|
|
font-size: 2.2rem;
|
|
left: calc(var(--gap25) * -4);
|
|
bottom: calc(var(--gap25) * -17);
|
|
color: var(--color-success-dark);
|
|
}
|
|
|
|
.login-donate a,
|
|
.main-footer > .row:first-child > div a {
|
|
color: var(--color-success);
|
|
transition: color var(--transition);
|
|
}
|
|
|
|
.login-donate a:hover,
|
|
.main-footer > .row:first-child > div a:hover {
|
|
color: var(--color-tertiary-hover);
|
|
}
|
|
|
|
.login-donate a svg,
|
|
.main-footer > .row:first-child > div a svg {
|
|
transition: scale var(--transition);
|
|
scale: 0.9;
|
|
}
|
|
|
|
.login-donate a:hover svg,
|
|
.main-footer > .row:first-child > div a:hover svg {
|
|
scale: 1.1;
|
|
}
|
|
|
|
.login-donate a::before,
|
|
.main-footer > .row:first-child > div a::before {
|
|
content: "please ";
|
|
}
|
|
|
|
.login-donate a::after,
|
|
.main-footer > .row:first-child > div a::after {
|
|
content: "";
|
|
position: absolute;
|
|
inset: 0;
|
|
}
|
|
|
|
/* MAIN HEADER
|
|
========================================================== */
|
|
|
|
.main-header {
|
|
background-color: var(--color-primary);
|
|
display: flex;
|
|
flex-direction: row;
|
|
justify-content: flex-end;
|
|
border-bottom: var(--border-width) solid var(--color-primary);
|
|
max-height: none;
|
|
border-radius: 0 0 0 var(--radius100);
|
|
transition: border-radius var(--transition);
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
.main-header {
|
|
border-radius: 0 0 0 calc(var(--gap) * 5);
|
|
}
|
|
}
|
|
|
|
.main-header .navbar {
|
|
background-color: var(--color-background);
|
|
border-radius: 0 0 0 var(--radius100);
|
|
padding-top: calc(var(--gap) * 2);
|
|
max-width: 70dvw;
|
|
flex-shrink: 0;
|
|
width: 100%;
|
|
transition: max-width var(--transition);
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
.main-header .navbar {
|
|
flex-grow: 1;
|
|
margin-left: 0;
|
|
max-width: calc(100% - var(--sidebar-width));
|
|
}
|
|
}
|
|
|
|
.main-header .logo {
|
|
padding-right: calc(var(--gap) * 1.6);
|
|
position: relative;
|
|
color: var(--color-primary-text);
|
|
font-family: var(--font-family);
|
|
line-height: calc(var(--gap) * 2.5);
|
|
text-transform: uppercase;
|
|
text-align: right;
|
|
flex-grow: 1;
|
|
width: auto;
|
|
min-width: var(--sidebar-width);
|
|
transition: min-width var(--transition);
|
|
}
|
|
|
|
.main-header .logo:hover {
|
|
color: #fff;
|
|
}
|
|
|
|
.main-header .logo:before {
|
|
content: "";
|
|
position: absolute;
|
|
right: var(--gap50);
|
|
top: calc(var(--gap) / 1.45);
|
|
width: calc(var(--gap) / 1.5);
|
|
height: calc(var(--gap) / 1.5);
|
|
background-color: var(--color-background);
|
|
border: var(--border-width) solid var(--color-background);
|
|
transition: background-color var(--transition-fast);
|
|
}
|
|
|
|
.main-header .logo:hover:before {
|
|
background-color: var(--color-quaternary);
|
|
}
|
|
|
|
.main-header .logo .logo-lg {
|
|
opacity: 1;
|
|
transition: opacity var(--transition);
|
|
}
|
|
|
|
/* --- top menu */
|
|
.navbar-nav > .user-menu {
|
|
width: auto;
|
|
}
|
|
|
|
@media (max-width: 575px) {
|
|
.navbar-custom-menu .navbar-nav li:nth-last-child(2) {
|
|
display: none;
|
|
}
|
|
}
|
|
|
|
.navbar-text {
|
|
margin-block: 0;
|
|
border: var(--border-width) solid var(--color-secondary-hover);
|
|
padding: calc((var(--gap) / 2) - var(--border-width)) var(--gap);
|
|
text-transform: uppercase;
|
|
letter-spacing: 0.025rem;
|
|
font-size: 1.4rem;
|
|
}
|
|
|
|
.navbar-text code {
|
|
font-family: var(--font-family);
|
|
background-color: transparent;
|
|
color: var(--color-text);
|
|
font-size: 1.4rem;
|
|
padding: 0;
|
|
}
|
|
|
|
.navbar-text .hidden-xs {
|
|
color: var(--color-secondary);
|
|
}
|
|
|
|
.main-header .nav {
|
|
display: flex;
|
|
align-items: center;
|
|
}
|
|
|
|
@media (max-width: 767px) {
|
|
.main-header .nav {
|
|
margin-right: var(--gap25);
|
|
}
|
|
}
|
|
|
|
/* --- sidebar toggle */
|
|
.sidebar-toggle-svg {
|
|
color: var(--color-tertiary-hover);
|
|
}
|
|
|
|
.sidebar-toggle-svg:hover {
|
|
background-color: transparent;
|
|
}
|
|
|
|
/* --- navbar collapsed */
|
|
.sidebar-mini.sidebar-collapse .main-header .logo {
|
|
position: relative;
|
|
width: auto;
|
|
}
|
|
|
|
.sidebar-mini.sidebar-collapse .main-header .logo .logo-lg {
|
|
display: block;
|
|
opacity: 0;
|
|
}
|
|
|
|
.sidebar-mini.sidebar-collapse .main-header {
|
|
border-radius: 0 0 0 var(--radius100);
|
|
}
|
|
|
|
/* --- "timer" */
|
|
#enableTimer {
|
|
display: block;
|
|
position: absolute;
|
|
right: var(--gap);
|
|
top: var(--gap50);
|
|
z-index: 1031;
|
|
font-size: 1.4rem;
|
|
color: var(--color-disabled);
|
|
}
|
|
|
|
@media (min-width: 1250px) {
|
|
/* --wrapper-max-width */
|
|
.layout-boxed #enableTimer {
|
|
right: calc(((100dvw - var(--wrapper-max-width)) / 2) + var(--gap75));
|
|
}
|
|
}
|
|
|
|
/* MAIN DROPDOWN MENU
|
|
========================================================== */
|
|
|
|
.navbar-custom-menu > .navbar-nav > li > .dropdown-menu {
|
|
background-color: var(--color-background);
|
|
width: 90vw;
|
|
max-width: calc(var(--gap) * 30);
|
|
box-shadow: 0 0 0 100vmax rgba(0, 0, 0, 0.75);
|
|
border: 0;
|
|
border-radius: 0 0 var(--radius25) 0;
|
|
}
|
|
|
|
@media (min-width: 576px) {
|
|
.navbar-custom-menu > .navbar-nav > li > .dropdown-menu {
|
|
position: fixed;
|
|
inset: 50% auto auto 50%;
|
|
translate: -50% -50%;
|
|
box-shadow: 0 0 0 100vmax rgba(0, 0, 0, 0.9);
|
|
}
|
|
}
|
|
|
|
/* --- header */
|
|
.navbar-nav > .user-menu > .dropdown-menu > li.user-header {
|
|
padding: 0 var(--gap) 0 0;
|
|
border: var(--border-width) solid var(--color-primary);
|
|
border-bottom: 0;
|
|
border-left: 0;
|
|
border-right-width: var(--border-panel-width);
|
|
border-top-right-radius: calc(var(--radius100) * 2);
|
|
display: flex;
|
|
position: relative;
|
|
min-height: calc(var(--gap) * 5);
|
|
gap: var(--gap);
|
|
align-items: center;
|
|
}
|
|
|
|
.navbar-nav > .user-menu > .dropdown-menu > li.user-header > img {
|
|
height: calc(var(--gap) * 5);
|
|
width: calc(var(--gap) * 4);
|
|
top: var(--gap);
|
|
padding: var(--gap50) var(--gap50);
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.navbar-nav > .user-menu > .dropdown-menu > li.user-header > p {
|
|
color: var(--color-red-alert);
|
|
font-size: 26px;
|
|
margin-top: 0;
|
|
text-transform: uppercase;
|
|
text-align: left;
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.navbar-nav > .user-menu > .dropdown-menu > li.user-header > p::after {
|
|
content: "A black hole for Internet advertisements";
|
|
display: block;
|
|
font-size: 1.5rem;
|
|
color: var(--color-quinternary);
|
|
}
|
|
|
|
/* --- footer */
|
|
.navbar-nav > .user-menu > .dropdown-menu > .user-footer {
|
|
display: flex;
|
|
flex-direction: column;
|
|
padding: var(--gap) var(--gap) calc(var(--gap) * 2) var(--gap);
|
|
background: var(--color-background);
|
|
border: var(--border-width) solid var(--color-secondary);
|
|
border-top: 0;
|
|
border-left: 0;
|
|
border-right-width: var(--border-panel-width);
|
|
border-bottom-right-radius: 0;
|
|
margin-top: var(--border-width);
|
|
position: relative;
|
|
}
|
|
|
|
@media (min-width: 576px) {
|
|
.navbar-nav > .user-menu > .dropdown-menu > .user-footer {
|
|
flex-direction: row;
|
|
flex-wrap: wrap;
|
|
justify-content: space-between;
|
|
}
|
|
}
|
|
|
|
.navbar-nav > .user-menu > .dropdown-menu > .user-footer hr {
|
|
width: 100%;
|
|
}
|
|
|
|
@media (min-width: 576px) {
|
|
.navbar-nav > .user-menu > .dropdown-menu > .user-footer .btn-link {
|
|
width: calc(50% - var(--gap50));
|
|
margin-block: var(--gap50);
|
|
}
|
|
}
|
|
|
|
.navbar-nav > .user-menu > .dropdown-menu > .user-footer .btn-link:first-child {
|
|
width: 100%;
|
|
background-color: var(--color-success-dark) !important;
|
|
color: var(--color-success);
|
|
}
|
|
|
|
.navbar-nav > .user-menu > .dropdown-menu > .user-footer .btn-link:first-child:hover {
|
|
background-color: var(--color-link) !important;
|
|
color: #fff;
|
|
}
|
|
|
|
.navbar-nav > .user-menu > .dropdown-menu > .user-footer .btn-link:last-child {
|
|
width: 100%;
|
|
background-color: var(--color-supplement-01) !important;
|
|
color: var(--color-danger-bright);
|
|
}
|
|
|
|
.navbar-nav > .user-menu > .dropdown-menu > .user-footer .btn-link:last-child:hover {
|
|
background-color: var(--color-danger) !important;
|
|
color: #fff;
|
|
}
|
|
|
|
@media (max-width: 768px) {
|
|
.navbar-nav > .user-menu > .dropdown-menu > .user-footer .btn-link + .btn-link {
|
|
margin-top: var(--gap50);
|
|
}
|
|
}
|
|
|
|
/* --- fake corners */
|
|
@media (min-width: 768px) {
|
|
.navbar-nav > .user-menu > .dropdown-menu > li.user-header::after,
|
|
.navbar-nav > .user-menu > .dropdown-menu > .user-footer::after {
|
|
display: block;
|
|
content: "";
|
|
background-color: var(--color-background);
|
|
width: var(--gap);
|
|
border-radius: 0 var(--radius50) 0 0;
|
|
position: absolute;
|
|
inset: 0 calc(var(--gap50) * -1) 0 auto;
|
|
z-index: 5;
|
|
}
|
|
|
|
.navbar-nav > .user-menu > .dropdown-menu > .user-footer::after {
|
|
border-radius: 0 0 var(--radius50) 0;
|
|
}
|
|
}
|
|
|
|
/* --- additional visual tweaks */
|
|
@media (min-width: 768px) {
|
|
.navbar-nav > .user-menu > .dropdown-menu > li.user-header::before {
|
|
content: "";
|
|
position: absolute;
|
|
width: var(--gap50);
|
|
height: var(--gap50);
|
|
right: calc(var(--gap) * -1.5);
|
|
bottom: var(--gap50);
|
|
background-color: var(--color-background);
|
|
z-index: 6;
|
|
}
|
|
|
|
.navbar-nav > .user-menu > .dropdown-menu > .user-footer::before {
|
|
display: block;
|
|
position: absolute;
|
|
right: calc(var(--gap) * -3);
|
|
top: var(--gap);
|
|
width: calc(var(--gap) * 2.5);
|
|
background-color: var(--color-secondary);
|
|
z-index: 6;
|
|
border-radius: 0 var(--radius100) var(--radius100) 0;
|
|
border: var(--border-width) solid var(--color-background);
|
|
bottom: calc(var(--gap) * 2);
|
|
border-left: 0;
|
|
transition: background-color var(--transition-duration-slow);
|
|
}
|
|
|
|
.navbar-nav > .user-menu > .dropdown-menu > .user-footer:hover::before {
|
|
background-color: var(--color-tertiary);
|
|
}
|
|
}
|
|
|
|
.navbar-nav > .user-menu.open > .dropdown-toggle {
|
|
background-color: var(--color-danger);
|
|
z-index: 1001;
|
|
position: relative;
|
|
}
|
|
|
|
.navbar-nav > .user-menu.open > .dropdown-toggle:hover {
|
|
background-color: var(--color-danger-bright);
|
|
}
|
|
|
|
.navbar-nav > .user-menu.open > .dropdown-toggle::after {
|
|
content: "Close";
|
|
font-size: 1.2rem;
|
|
transition: color var(--transition);
|
|
}
|
|
|
|
.navbar-nav > .user-menu.open > .dropdown-toggle:hover::after {
|
|
color: #fff;
|
|
}
|
|
|
|
.navbar-nav > .user-menu.open > .dropdown-toggle > svg {
|
|
display: none;
|
|
}
|
|
|
|
/* MAIN SIDEBAR
|
|
========================================================== */
|
|
|
|
.main-sidebar {
|
|
background: linear-gradient(0deg, var(--color-secondary) 80%, var(--color-background) 80%);
|
|
padding-top: calc(var(--gap) * 5.615);
|
|
padding-bottom: calc(var(--gap) * 10);
|
|
width: var(--sidebar-width);
|
|
border-radius: 0 0 0 var(--radius-main-lcars);
|
|
bottom: 0;
|
|
margin-bottom: calc(var(--gap) * 20.5);
|
|
min-height: auto;
|
|
transition:
|
|
border-radius var(--transition),
|
|
transform 0.3s ease-in-out,
|
|
width 0.3s ease-in-out; /* transform and width from AdminLTE.min */
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
.main-sidebar {
|
|
left: var(--gap25);
|
|
}
|
|
}
|
|
|
|
@media (min-width: 992px) {
|
|
.main-sidebar {
|
|
margin-bottom: calc(var(--gap) * 14);
|
|
}
|
|
}
|
|
|
|
.sidebar {
|
|
background-color: var(--color-secondary);
|
|
border-radius: var(--radius-main-lcars) 0 0 0;
|
|
position: relative;
|
|
transition: border-radius var(--transition);
|
|
}
|
|
|
|
/* --- lcars "lines" */
|
|
.sidebar:before,
|
|
.sidebar:after {
|
|
content: "";
|
|
position: absolute;
|
|
pointer-events: none;
|
|
opacity: 1;
|
|
transition:
|
|
opacity var(--transition),
|
|
inset var(--transition);
|
|
}
|
|
|
|
.sidebar:before {
|
|
border-radius: var(--radius100) 0 0 0;
|
|
border: var(--border-width) solid black;
|
|
border-right: 0;
|
|
border-bottom: 0;
|
|
inset: calc(var(--gap) * 16) 0 0 calc(var(--gap) * 4);
|
|
}
|
|
|
|
.sidebar:after {
|
|
background-color: var(--color-background);
|
|
height: var(--border-width);
|
|
inset: auto 0 0 calc(var(--gap) * 4);
|
|
}
|
|
|
|
.sidebar-menu {
|
|
padding-left: var(--gap);
|
|
}
|
|
|
|
/* --- headers */
|
|
.sidebar-menu > li.header {
|
|
display: flex;
|
|
justify-content: flex-end;
|
|
text-align: right;
|
|
font-size: 1.2rem;
|
|
color: var(--color-text-dark);
|
|
text-transform: uppercase;
|
|
padding: var(--gap75) var(--gap50) 0 0;
|
|
border-top: calc(var(--border-width) * 10) solid var(--color-background);
|
|
border-left: 0;
|
|
}
|
|
|
|
.sidebar-menu > li.header:first-child {
|
|
border: 0;
|
|
}
|
|
|
|
.sidebar-menu > li.header + li {
|
|
margin-top: calc(var(--gap) - (var(--border-width) * 2));
|
|
}
|
|
|
|
.sidebar-menu > li,
|
|
.treeview-menu > li {
|
|
border-left: var(--border-width-thick) solid var(--color-background);
|
|
border-top: var(--border-width-thick) solid var(--color-background);
|
|
}
|
|
|
|
.sidebar-menu > li svg {
|
|
display: none;
|
|
}
|
|
|
|
.sidebar-menu > li > a,
|
|
.treeview-menu > li > a {
|
|
padding: var(--gap50) var(--gap);
|
|
background-color: var(--color-primary);
|
|
color: var(--color-primary-text);
|
|
font-size: 1.4rem;
|
|
text-transform: uppercase;
|
|
transition: background-color var(--transition-fast);
|
|
}
|
|
|
|
.sidebar-menu > li > a:hover,
|
|
.treeview-menu > li > a:hover {
|
|
background-color: var(--color-tertiary);
|
|
color: var(--color-text-dark);
|
|
}
|
|
|
|
.sidebar-menu > li.active > a,
|
|
.treeview-menu > li.active a {
|
|
background-color: var(--color-quaternary);
|
|
color: var(--color-background);
|
|
}
|
|
|
|
.sidebar-menu > li.active.treeview {
|
|
background-color: var(--color-quaternary);
|
|
}
|
|
|
|
/* --- donate */
|
|
.sidebar-menu > li.menu-donate {
|
|
border-bottom: calc(var(--border-width) * 10) solid var(--color-background);
|
|
}
|
|
|
|
.sidebar-menu > li.menu-donate a {
|
|
--pulse-color: var(--color-danger-bright);
|
|
--pulse-color-background: var(--color-danger);
|
|
background-color: var(--color-danger);
|
|
color: var(--color-text-dark);
|
|
animation: pulseBg var(--transition-duration-slow) var(--transition-function) infinite;
|
|
}
|
|
|
|
.sidebar-menu > li.menu-donate a:hover {
|
|
--pulse-color: #fff;
|
|
}
|
|
|
|
/* --- submenus */
|
|
.treeview-menu > li {
|
|
background-color: var(--color-background);
|
|
}
|
|
|
|
.treeview.menu-open {
|
|
background-color: var(--color-primary);
|
|
}
|
|
|
|
.treeview-menu > li a {
|
|
border-radius: calc(var(--radius100) * 1.5);
|
|
}
|
|
|
|
.treeview-menu > li svg {
|
|
display: block;
|
|
position: absolute;
|
|
right: 0;
|
|
top: 50%;
|
|
translate: -50% -50%;
|
|
margin-right: 0;
|
|
z-index: 1;
|
|
}
|
|
|
|
.treeview-menu > li a:after {
|
|
content: "";
|
|
width: calc(var(--gap) * 2.5);
|
|
border-left: var(--border-width) solid var(--color-background);
|
|
position: absolute;
|
|
inset: 0 0 0 auto;
|
|
z-index: 0;
|
|
}
|
|
|
|
.sidebar-menu li > a > .pull-right-container {
|
|
right: 0;
|
|
}
|
|
|
|
.treeview .pull-right-container > svg {
|
|
display: block;
|
|
}
|
|
|
|
/* --- sidebar collapsed */
|
|
.sidebar-mini.sidebar-collapse .sidebar:before {
|
|
opacity: 0;
|
|
inset: calc(var(--gap) * 16) 0 0 100%;
|
|
}
|
|
|
|
.sidebar-mini.sidebar-collapse .sidebar-menu {
|
|
padding-left: 0;
|
|
}
|
|
|
|
.sidebar-mini.sidebar-collapse .sidebar-menu > li,
|
|
.sidebar-mini.sidebar-collapse .treeview-menu > li {
|
|
border-left: 0;
|
|
}
|
|
|
|
.sidebar-mini.sidebar-collapse .sidebar-menu > li a,
|
|
.sidebar-mini.sidebar-collapse .treeview-menu > li a {
|
|
min-height: calc(var(--gap) * 2.25);
|
|
}
|
|
|
|
.sidebar-mini.sidebar-collapse .sidebar-menu > li > a {
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
}
|
|
|
|
.sidebar-mini.sidebar-collapse .sidebar-menu > li svg {
|
|
display: block;
|
|
margin-right: 0;
|
|
}
|
|
|
|
.sidebar-mini:not(.sidebar-mini-expand-feature).sidebar-collapse
|
|
.sidebar-menu
|
|
> li:hover
|
|
> a
|
|
> span.pull-right-container {
|
|
display: none !important;
|
|
}
|
|
|
|
.sidebar-mini.sidebar-collapse .sidebar-menu > li.header + li {
|
|
margin-top: 0;
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
.sidebar-mini:not(.sidebar-mini-expand-feature).sidebar-collapse
|
|
.sidebar-menu
|
|
> li:hover
|
|
> a
|
|
> span:not(.pull-right),
|
|
.sidebar-mini:not(.sidebar-mini-expand-feature).sidebar-collapse
|
|
.sidebar-menu
|
|
> li:hover
|
|
> .treeview-menu {
|
|
left: var(--sidebar-width);
|
|
}
|
|
|
|
.sidebar-mini:not(.sidebar-mini-expand-feature).sidebar-collapse
|
|
.sidebar-menu
|
|
> li:hover
|
|
> .treeview-menu {
|
|
margin-top: calc(var(--border-width) * -4);
|
|
}
|
|
|
|
.sidebar-mini:not(.sidebar-mini-expand-feature).sidebar-collapse
|
|
.sidebar-menu
|
|
> li:hover
|
|
> a
|
|
> span:not(.pull-right) {
|
|
border-radius: 0;
|
|
}
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
.sidebar-mini:not(.sidebar-mini-expand-feature).sidebar-collapse
|
|
.sidebar-menu
|
|
> li:hover
|
|
> a
|
|
> span {
|
|
padding: var(--gap50) var(--gap);
|
|
}
|
|
}
|
|
|
|
/* USER PANEL (status)
|
|
========================================================== */
|
|
|
|
.user-panel {
|
|
color: var(--color-text-dark);
|
|
padding-top: calc(var(--gap) * 4);
|
|
padding-bottom: var(--gap);
|
|
margin-bottom: calc(var(--gap) * 2);
|
|
min-height: calc(var(--gap) * 7);
|
|
}
|
|
|
|
.user-panel > .info:after {
|
|
content: "";
|
|
position: absolute;
|
|
bottom: calc(var(--gap) * -1);
|
|
left: var(--border-width-thick);
|
|
width: calc(var(--gap) * 2);
|
|
padding: var(--gap50);
|
|
background-color: var(--color-background);
|
|
border-radius: 0 0 var(--radius50) var(--radius50);
|
|
}
|
|
|
|
.user-panel > .info > p {
|
|
margin: 0;
|
|
text-transform: uppercase;
|
|
padding: var(--gap50) var(--gap75);
|
|
text-align: right;
|
|
}
|
|
|
|
.user-panel > .info > p:after {
|
|
content: "_panel-47a";
|
|
}
|
|
|
|
.user-panel .image {
|
|
position: absolute;
|
|
top: calc(var(--gap) * 3.5);
|
|
left: calc(var(--border-width) * -1);
|
|
width: calc(var(--gap) * 2);
|
|
padding: var(--gap50);
|
|
background-color: var(--color-background);
|
|
border-radius: var(--radius50) var(--radius50) 0 0;
|
|
}
|
|
|
|
.user-panel .image img {
|
|
min-width: auto;
|
|
filter: grayscale(1);
|
|
transition: filter var(--transition);
|
|
}
|
|
|
|
.user-panel:hover .image img {
|
|
filter: grayscale(0);
|
|
}
|
|
|
|
.user-panel .info br {
|
|
display: none;
|
|
}
|
|
|
|
.user-panel .info > span {
|
|
display: block;
|
|
background-color: var(--color-primary);
|
|
padding: var(--gap50) var(--gap75);
|
|
margin: 0;
|
|
border: calc(var(--border-width) * 2) solid var(--color-background);
|
|
border-inline: 0;
|
|
text-transform: uppercase;
|
|
text-align: right;
|
|
position: relative;
|
|
color: var(--color-primary-text);
|
|
font-size: 1.2rem;
|
|
letter-spacing: 0.055rem;
|
|
}
|
|
|
|
.user-panel .info > span ~ span {
|
|
margin-top: calc(var(--border-width) * -2);
|
|
}
|
|
|
|
.user-panel .info > span:before {
|
|
content: "";
|
|
inset: 0 auto 0 0;
|
|
position: absolute;
|
|
width: calc(var(--gap) * 2.5);
|
|
background-color: var(--color-background);
|
|
border-left: var(--border-width-thick) solid var(--color-secondary);
|
|
}
|
|
|
|
.user-panel .info > span svg {
|
|
position: absolute;
|
|
left: calc(var(--gap) * 1.125);
|
|
top: 50%;
|
|
translate: 0 -50%;
|
|
}
|
|
|
|
/* --- user panel blocks variants */
|
|
.user-panel span[id="status"] {
|
|
background-color: var(--color-success-dark);
|
|
color: var(--color-success);
|
|
}
|
|
|
|
.user-panel span[id="status"]::before {
|
|
border-color: var(--color-success-dark);
|
|
}
|
|
|
|
.user-panel span[id="status"] svg path {
|
|
fill: var(--color-success);
|
|
}
|
|
|
|
.user-panel .info > span:has(.text-orange) {
|
|
background-color: var(--color-quinternary);
|
|
}
|
|
|
|
.user-panel .info > span:has(.text-red) {
|
|
--pulse-color: #fff;
|
|
--pulse-color-background: var(--color-danger);
|
|
background-color: var(--color-danger);
|
|
color: var(--color-text-dark);
|
|
animation: pulseBg var(--transition-duration-slow) var(--transition-function) infinite;
|
|
border-color: var(--color-background);
|
|
}
|
|
|
|
.user-panel .info > span:has(.text-red):before {
|
|
background-color: var(--color-text-dark);
|
|
border-color: var(--color-danger-bright);
|
|
}
|
|
|
|
.user-panel .info > span:has(.text-red) svg path {
|
|
fill: var(--color-red-alert);
|
|
}
|
|
|
|
/* --- collapsed */
|
|
.sidebar-mini.sidebar-collapse .user-panel .image {
|
|
border-radius: var(--radius50);
|
|
}
|
|
|
|
/* CONTENT
|
|
========================================================== */
|
|
|
|
.layout-boxed,
|
|
.content-wrapper {
|
|
background: var(--color-background);
|
|
}
|
|
|
|
@media (max-width: 767px) {
|
|
.sidebar-open .content-wrapper,
|
|
.sidebar-open .main-footer {
|
|
transform: translate(var(--sidebar-width), 0);
|
|
}
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
.content-wrapper,
|
|
.main-footer {
|
|
margin-left: var(--sidebar-width);
|
|
}
|
|
}
|
|
|
|
.content {
|
|
border-top: var(--border-width-thick) solid var(--color-secondary);
|
|
margin-top: calc(var(--border-width) * 1.5);
|
|
position: relative;
|
|
padding: calc(var(--gap) * 2) calc(var(--gap) * 1.5);
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
.content {
|
|
min-height: calc(var(--gap) * 85);
|
|
}
|
|
|
|
.sidebar-collapse .content {
|
|
min-height: calc(var(--gap) * 55);
|
|
}
|
|
}
|
|
|
|
@media (min-width: 1250px) {
|
|
/* --wrapper-max-width */
|
|
.content {
|
|
padding: calc(var(--gap) * 2) 0 calc(var(--gap) * 2) calc(var(--gap) * 2.5);
|
|
}
|
|
}
|
|
|
|
/* --- fake corners */
|
|
.content:before,
|
|
.content:after {
|
|
content: "";
|
|
position: absolute;
|
|
inset: 0 auto 0 0;
|
|
width: var(--gap);
|
|
}
|
|
|
|
.content:before {
|
|
background-color: var(--color-secondary);
|
|
}
|
|
|
|
.content:after {
|
|
border-radius: var(--radius100) 0 0 0;
|
|
background-color: var(--color-background);
|
|
}
|
|
|
|
/* STATS (4 small boxes on the homepage)
|
|
========================================================== */
|
|
|
|
.small-box[class*="bg-"] {
|
|
border-radius: 0;
|
|
background-color: var(--color-primary) !important;
|
|
font-weight: var(--font-light);
|
|
text-transform: uppercase;
|
|
color: var(--color-primary-text) !important;
|
|
overflow: visible;
|
|
}
|
|
|
|
/* --- on long term data / query log */
|
|
.col-xs-12:has(.small-box):first-child .small-box {
|
|
border-radius: var(--radius100) var(--radius100) 0 0;
|
|
}
|
|
|
|
.col-xs-12:has(.small-box):last-child .small-box {
|
|
border-radius: 0 0 var(--radius100) var(--radius100);
|
|
}
|
|
|
|
.col-xs-12:has(.small-box) .small-box .inner {
|
|
display: flex;
|
|
flex-direction: column-reverse;
|
|
}
|
|
|
|
.col-xs-12:has(.small-box) .small-box .inner:before {
|
|
bottom: 0;
|
|
}
|
|
|
|
@media (min-width: 1200px) {
|
|
/* --- on long term data / query log */
|
|
.col-xs-12:has(.small-box):first-child .small-box {
|
|
border-radius: var(--radius100) 0 0 var(--radius100);
|
|
}
|
|
|
|
.col-xs-12:has(.small-box):last-child .small-box {
|
|
border-radius: 0 var(--radius100) var(--radius100) 0;
|
|
}
|
|
|
|
/* --- on dashboard */
|
|
.col-sm-6:has(.small-box):first-child .small-box {
|
|
border-radius: var(--radius100) 0 0 0;
|
|
}
|
|
|
|
.col-sm-6:has(.small-box):last-child .small-box {
|
|
border-radius: 0 var(--radius100) 0 0;
|
|
}
|
|
}
|
|
|
|
.small-box.bg-red {
|
|
background-color: var(--color-danger) !important;
|
|
color: var(--color-text-dark) !important;
|
|
}
|
|
|
|
.small-box.bg-yellow {
|
|
background-color: var(--color-tertiary) !important;
|
|
color: var(--color-text-dark) !important;
|
|
}
|
|
|
|
.small-box .inner {
|
|
padding: var(--gap);
|
|
text-align: left;
|
|
}
|
|
|
|
.small-box h3 {
|
|
font-weight: var(--font-regular);
|
|
letter-spacing: -0.1rem;
|
|
}
|
|
|
|
/* --- vertical scanner animation */
|
|
.col-lg-3 + .col-lg-3 .small-box:before,
|
|
.col-lg-3 + .col-lg-3 .small-box:after {
|
|
content: "";
|
|
width: calc(30px - (var(--lcars-space) * 2));
|
|
height: 100%;
|
|
position: absolute;
|
|
left: 0;
|
|
top: 0;
|
|
bottom: 0;
|
|
translate: calc(-100% - var(--lcars-space)) 0;
|
|
}
|
|
|
|
.col-lg-3 + .col-lg-3 .small-box:before {
|
|
background-image: linear-gradient(
|
|
0deg,
|
|
transparent 40%,
|
|
var(--color-disabled) 40%,
|
|
var(--color-disabled) 50%,
|
|
transparent 50%,
|
|
transparent 90%,
|
|
var(--color-disabled) 90%,
|
|
var(--color-disabled) 100%
|
|
);
|
|
background-size: var(--gap) var(--gap);
|
|
z-index: 1;
|
|
border-top: calc(var(--border-width) * 2) solid var(--color-danger);
|
|
}
|
|
|
|
.col-lg-3 + .col-lg-3 .small-box:after {
|
|
background-image: linear-gradient(
|
|
0deg,
|
|
rgba(0, 0, 0, 1) 0%,
|
|
rgba(0, 0, 0, 0) 49%,
|
|
rgba(0, 0, 0, 1) 51%,
|
|
rgba(0, 0, 0, 1) 100%
|
|
);
|
|
background-position: 0 0;
|
|
z-index: 2;
|
|
animation: backgroundPositionAnimation 5s linear infinite;
|
|
}
|
|
|
|
@media (min-width: 768px) and (max-width: 1199px) {
|
|
.small-box.bg-yellow:after,
|
|
.small-box.bg-yellow:before {
|
|
display: none;
|
|
}
|
|
}
|
|
|
|
.small-box.bg-yellow:after {
|
|
animation-delay: 3s !important;
|
|
}
|
|
|
|
.small-box.bg-green:after {
|
|
animation-delay: 1.6s !important;
|
|
}
|
|
|
|
.small-box:has(.glow) .small-box-footer:after {
|
|
border-color: var(--color-danger-bright);
|
|
}
|
|
|
|
.small-box span.glow {
|
|
color: #fff;
|
|
text-shadow: 0 0 var(--gap25) var(--color-tertiary-hover);
|
|
}
|
|
|
|
/* --- icons */
|
|
.small-box .icon {
|
|
display: block !important;
|
|
font-size: 5rem;
|
|
width: calc(var(--gap) * 4);
|
|
color: var(--color-background);
|
|
position: absolute;
|
|
right: var(--gap50);
|
|
top: 0;
|
|
text-align: center;
|
|
opacity: 0.25;
|
|
translate: 0 0;
|
|
transition:
|
|
opacity var(--transition-slow),
|
|
translate var(--transition-slow);
|
|
}
|
|
|
|
.small-box[class*="bg-"]:hover .icon {
|
|
opacity: 1;
|
|
translate: 0 47%;
|
|
transform: scale(1);
|
|
font-size: 5rem;
|
|
}
|
|
|
|
.small-box .inner:before {
|
|
content: "";
|
|
width: calc(var(--gap) * 5);
|
|
border-left: var(--border-width) solid var(--color-background);
|
|
position: absolute;
|
|
inset: 0 0 calc(var(--gap) * 1.75) auto;
|
|
background-color: rgba(0 0 0 / 0.2);
|
|
transition: background-color var(--transition-slow);
|
|
}
|
|
|
|
.small-box[class*="bg-"]:hover .inner:before {
|
|
background-color: rgba(255 255 255 / 0.2);
|
|
}
|
|
|
|
/* --- small-box footer */
|
|
.small-box > .small-box-footer {
|
|
background-color: var(--color-background);
|
|
border-top: calc(var(--border-width) * 2) solid var(--color-background);
|
|
padding: var(--gap50) 0 0 0;
|
|
position: static;
|
|
font-size: 1.4rem;
|
|
letter-spacing: 0.055rem;
|
|
text-align: right;
|
|
}
|
|
|
|
.small-box > .small-box-footer:after,
|
|
.small-box > .small-box-footer:before {
|
|
content: "";
|
|
position: absolute;
|
|
}
|
|
|
|
.small-box > .small-box-footer:after {
|
|
height: calc(var(--gap) * 1.75);
|
|
inset: auto 0 0;
|
|
border: calc(var(--border-width) * 2) solid var(--color-primary);
|
|
border-right: 0;
|
|
border-bottom: 0;
|
|
}
|
|
|
|
.small-box > .small-box-footer:before {
|
|
position: absolute;
|
|
inset: 0;
|
|
}
|
|
|
|
.small-box > .small-box-footer:hover {
|
|
background-color: var(--color-background);
|
|
}
|
|
|
|
.small-box > .small-box-footer:hover:after {
|
|
border-color: var(--color-secondary-hover);
|
|
}
|
|
|
|
/* CUSTOM HEADERS - VARIOUS LCARS PANELS
|
|
========================================================== */
|
|
|
|
.page-header {
|
|
display: flex;
|
|
justify-content: flex-start;
|
|
background-color: var(--color-disabled);
|
|
position: relative;
|
|
border-bottom: 0;
|
|
padding: 0;
|
|
margin-bottom: calc(var(--gap) * 2);
|
|
}
|
|
|
|
.page-header::after {
|
|
background-color: var(--color-primary);
|
|
content: "";
|
|
position: absolute;
|
|
inset: auto 0 0;
|
|
height: var(--gap);
|
|
border-top: calc(var(--border-width) * 3) solid var(--color-background);
|
|
z-index: 0;
|
|
}
|
|
|
|
.page-header h1 {
|
|
font-weight: 400;
|
|
position: relative;
|
|
z-index: 1;
|
|
background-color: var(--color-background);
|
|
margin: 0 0 0 var(--gap);
|
|
padding: var(--gap25) var(--gap);
|
|
color: var(--color-tertiary-hover);
|
|
}
|
|
|
|
.page-header > small {
|
|
font-size: 1.5rem;
|
|
text-transform: uppercase;
|
|
padding-inline: var(--gap);
|
|
color: var(--color-link);
|
|
}
|
|
|
|
/* -- box "resets" - black backgrounds, borders ... */
|
|
.box,
|
|
.box-warning,
|
|
.login-box,
|
|
.nav-tabs-custom,
|
|
.nav-tabs-custom > .tab-content {
|
|
background-color: var(--color-background);
|
|
border: 0;
|
|
margin-bottom: 0;
|
|
box-shadow: none;
|
|
}
|
|
|
|
#queries-over-time,
|
|
#clients {
|
|
border: var(--border-width-thick) solid var(--color-primary);
|
|
border-radius: 0 var(--radius100) 0 0;
|
|
border-bottom: 0;
|
|
border-left: 0;
|
|
border-right-width: var(--border-panel-width);
|
|
margin-right: var(--gap25);
|
|
margin-top: var(--gap);
|
|
margin-bottom: 0;
|
|
width: auto;
|
|
}
|
|
|
|
#clients {
|
|
border-top: 0;
|
|
border-bottom: var(--border-width-thick) solid var(--color-primary);
|
|
border-color: var(--color-tertiary);
|
|
border-radius: 0 0 var(--radius100) 0;
|
|
margin-top: 0;
|
|
padding-top: var(--gap);
|
|
}
|
|
|
|
/* -- top bars + colored titles */
|
|
#queries-over-time:before,
|
|
#clients:before {
|
|
content: "";
|
|
background-color: var(--color-danger);
|
|
width: calc(var(--border-panel-width) + var(--border-width));
|
|
padding: var(--gap25) var(--gap25);
|
|
border-top: var(--border-width) solid var(--color-background);
|
|
position: absolute;
|
|
right: calc((var(--border-panel-width) + var(--border-width)) * -1);
|
|
bottom: 0;
|
|
font-size: 1rem;
|
|
color: var(--color-text-dark);
|
|
text-transform: uppercase;
|
|
text-align: right;
|
|
z-index: 1;
|
|
}
|
|
|
|
#clients:before {
|
|
bottom: auto;
|
|
top: 0;
|
|
background-color: var(--color-secondary);
|
|
border-bottom: var(--border-width) solid var(--color-background);
|
|
height: calc(var(--gap) * 5);
|
|
display: flex;
|
|
justify-content: flex-end;
|
|
align-items: flex-end;
|
|
width: var(--border-panel-width);
|
|
right: calc(var(--border-panel-width) * -1);
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
#queries-over-time:before,
|
|
#clients:before {
|
|
content: attr(id);
|
|
}
|
|
}
|
|
|
|
.box-header.with-border {
|
|
color: var(--color-danger-bright);
|
|
padding: var(--gap25) var(--gap25);
|
|
border-bottom: 0;
|
|
min-height: calc(var(--gap) * 2.125);
|
|
}
|
|
|
|
#clients .box-header {
|
|
color: var(--color-tertiary);
|
|
}
|
|
|
|
.box-header .box-title {
|
|
font-size: 2.25rem;
|
|
font-weight: var(--font-regular);
|
|
}
|
|
|
|
.box-body {
|
|
border-radius: 0;
|
|
padding: var(--gap) var(--gap) var(--gap) 0;
|
|
position: relative;
|
|
}
|
|
|
|
/* --- fake corners */
|
|
.box-body:after,
|
|
.box-body:before {
|
|
content: "";
|
|
display: block;
|
|
width: var(--gap);
|
|
position: absolute;
|
|
}
|
|
|
|
/* --- box footer */
|
|
.box-footer,
|
|
#add-group .btn-toolbar {
|
|
border-top: calc(var(--border-width) * 2) double var(--color-background);
|
|
background-color: var(--color-disabled);
|
|
padding: var(--gap) var(--gap);
|
|
border-radius: 0 0 var(--radius100) var(--radius100);
|
|
margin-bottom: calc(var(--gap) * 2);
|
|
}
|
|
|
|
.box-footer strong {
|
|
display: block;
|
|
margin-bottom: var(--gap);
|
|
color: var(--color-tertiary-hover);
|
|
text-transform: uppercase;
|
|
}
|
|
|
|
.box-footer code {
|
|
background-color: var(--color-background);
|
|
}
|
|
|
|
#teleporter .box-footer {
|
|
display: flex;
|
|
justify-content: flex-end;
|
|
}
|
|
|
|
#teleporter .box-footer .btn {
|
|
background-color: var(--color-success-dark);
|
|
color: var(--color-success);
|
|
}
|
|
|
|
#teleporter .box-footer .btn:hover {
|
|
background-color: var(--color-link);
|
|
color: #fff;
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
#queries-over-time .box-body:before,
|
|
#clients .box-body:before {
|
|
background-color: var(--color-primary);
|
|
inset: calc((var(--gap) * -2) - var(--border-width)) 0 0 auto;
|
|
}
|
|
|
|
#queries-over-time .box-body:after,
|
|
#clients .box-body:after {
|
|
background-color: var(--color-background);
|
|
inset: calc((var(--gap) * -2) - var(--border-width)) 0 0 auto;
|
|
border-radius: 0 var(--radius100) 0 0;
|
|
}
|
|
|
|
#clients .box-body:before {
|
|
background-color: var(--color-tertiary);
|
|
}
|
|
|
|
#clients .box-body:after {
|
|
border-radius: 0 0 var(--radius100) 0;
|
|
}
|
|
}
|
|
|
|
/* --- additional line on the side and top + animated box ("total queries" box) */
|
|
#queries-over-time:after {
|
|
content: "";
|
|
position: absolute;
|
|
inset: 0 calc((var(--border-panel-width) + (var(--border-width) * 2)) * -1) 0 auto;
|
|
width: calc(var(--border-width) * 2);
|
|
background-color: var(--color-danger);
|
|
border-left: var(--border-width) solid var(--color-background);
|
|
}
|
|
|
|
#queries-over-time .box-header:before {
|
|
content: "";
|
|
height: calc(var(--gap) + (var(--border-width) * 2));
|
|
border-top: var(--border-width) solid var(--color-danger);
|
|
position: absolute;
|
|
display: block;
|
|
top: calc(var(--border-width) * -10);
|
|
right: calc((var(--border-panel-width) + (var(--border-width) * 2)) * -1);
|
|
left: 0;
|
|
border-right: var(--border-width) solid var(--color-danger);
|
|
border-radius: 0 var(--radius100) 0 0;
|
|
}
|
|
|
|
#queries-over-time .box-header:after {
|
|
--scanner-animation-width: var(--gap25);
|
|
content: "";
|
|
position: absolute;
|
|
width: calc(var(--gap) * 2);
|
|
height: calc(var(--gap) * 0.75);
|
|
background-color: var(--color-danger);
|
|
border: var(--border-width) solid var(--color-background);
|
|
top: calc(var(--gap) * -1.6);
|
|
left: 50%;
|
|
display: block;
|
|
animation: scannerSlide 48s cubic-bezier(0.68, -0.6, 0.32, 1.6) infinite;
|
|
translate: 0 0;
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
#queries-over-time .box-header:after {
|
|
--scanner-animation-width: var(--gap50);
|
|
width: calc(var(--gap) * 3);
|
|
}
|
|
}
|
|
|
|
@media (min-width: 1250px) {
|
|
#queries-over-time .box-header:after {
|
|
--scanner-animation-width: var(--gap);
|
|
}
|
|
}
|
|
|
|
/* --- chart scanner */
|
|
.chart:before {
|
|
content: "";
|
|
background: linear-gradient(
|
|
90deg,
|
|
rgba(255, 255, 255, 0.2) 0%,
|
|
rgba(255, 255, 255, 1) 50%,
|
|
rgba(255, 255, 255, 0.2) 100%
|
|
);
|
|
width: calc(var(--gap) * 2);
|
|
margin-inline: var(--gap);
|
|
position: absolute;
|
|
left: 0;
|
|
top: var(--gap50);
|
|
bottom: calc(var(--gap) * 2 - var(--gap25));
|
|
animation: chartScanner 16s ease-in-out infinite;
|
|
transform: translate3d(0, 0, 0);
|
|
opacity: 0.2;
|
|
pointer-events: none;
|
|
}
|
|
|
|
#clients .chart:before {
|
|
animation-delay: 160ms;
|
|
animation-duration: 24s;
|
|
}
|
|
|
|
.box .overlay,
|
|
.overlay-wrapper .overlay {
|
|
background: rgb(0 0 0 / 70%);
|
|
border-radius: var(--radius100);
|
|
}
|
|
|
|
/* --- "TOP" tables */
|
|
#domain-frequency,
|
|
#ad-frequency,
|
|
#client-frequency,
|
|
#client-frequency-blocked {
|
|
--table-color: var(--color-secondary);
|
|
position: relative;
|
|
margin-top: calc(var(--gap) * 2);
|
|
border: var(--border-width-thick) solid var(--table-color);
|
|
border-right: 0;
|
|
border-top-width: calc(var(--gap) * 1.6);
|
|
border-radius: var(--radius100) 0 0 var(--radius100);
|
|
}
|
|
|
|
#ad-frequency,
|
|
#client-frequency-blocked {
|
|
--table-color: var(--color-quinternary);
|
|
}
|
|
|
|
#domain-frequency:before,
|
|
#ad-frequency:before,
|
|
#client-frequency:before,
|
|
#client-frequency-blocked:before {
|
|
content: attr(id) "-panel";
|
|
position: absolute;
|
|
inset: auto var(--gap) 0 auto;
|
|
text-transform: uppercase;
|
|
font-size: 1rem;
|
|
color: var(--table-color);
|
|
}
|
|
|
|
#domain-frequency .box-header,
|
|
#ad-frequency .box-header,
|
|
#client-frequency .box-header,
|
|
#client-frequency-blocked .box-header {
|
|
position: absolute;
|
|
right: 0;
|
|
top: calc(var(--gap) * -1.6);
|
|
background-color: var(--color-background);
|
|
padding: 0 var(--gap50);
|
|
z-index: 2;
|
|
min-height: calc(var(--gap) * 1.6);
|
|
}
|
|
|
|
#domain-frequency .box-body,
|
|
#ad-frequency .box-body,
|
|
#client-frequency .box-body,
|
|
#client-frequency-blocked .box-body {
|
|
padding-right: 0;
|
|
z-index: 5;
|
|
}
|
|
|
|
/* --- "TOP" tables animated scanners */
|
|
#domain-frequency .box-body:before,
|
|
#domain-frequency .box-body:after,
|
|
#ad-frequency .box-body:before,
|
|
#ad-frequency .box-body:after,
|
|
#client-frequency .box-body:before,
|
|
#client-frequency .box-body:after,
|
|
#client-frequency-blocked .box-body:before,
|
|
#client-frequency-blocked .box-body:after {
|
|
content: "";
|
|
position: absolute;
|
|
inset: 0 auto auto 0;
|
|
}
|
|
|
|
#ad-frequency .box-body:after,
|
|
#client-frequency .box-body:after,
|
|
#client-frequency-blocked .box-body:after,
|
|
#domain-frequency .box-body:after {
|
|
background-color: transparent;
|
|
width: calc(100% - var(--gap));
|
|
height: calc(var(--gap) * 1.5);
|
|
border: var(--border-width-thick) solid var(--color-background);
|
|
border-radius: 0 var(--radius100) var(--radius100) 0;
|
|
margin: var(--gap75);
|
|
}
|
|
|
|
#ad-frequency .box-body:before,
|
|
#client-frequency .box-body:before,
|
|
#client-frequency-blocked .box-body:before,
|
|
#domain-frequency .box-body:before {
|
|
opacity: 0.5;
|
|
background-image: repeating-linear-gradient(
|
|
to right,
|
|
var(--color-secondary),
|
|
var(--color-secondary) var(--border-width),
|
|
var(--color-background) var(--border-width),
|
|
var(--color-background)
|
|
);
|
|
background-size: var(--gap) var(--gap);
|
|
background-position: center center;
|
|
width: calc(100% - var(--gap50));
|
|
height: calc(var(--gap) * 2);
|
|
margin: var(--gap50);
|
|
border: var(--border-width-thick) solid var(--color-primary);
|
|
border-radius: 0 var(--radius100) var(--radius100) 0;
|
|
animation: topBoxesScanner 15s cubic-bezier(0.87, 0, 0.13, 1) infinite;
|
|
}
|
|
|
|
#ad-frequency .box-body:before {
|
|
animation-delay: 0.8s;
|
|
}
|
|
|
|
#client-frequency .box-body:before {
|
|
animation-delay: 1.2s;
|
|
}
|
|
|
|
#client-frequency-blocked .box-body:before {
|
|
animation-delay: 1.6s;
|
|
}
|
|
|
|
/* --- set same height */
|
|
@media (min-width: 992px) {
|
|
.row:has(#domain-frequency),
|
|
.row:has(#client-frequency) {
|
|
display: flex;
|
|
}
|
|
|
|
.row:has(#domain-frequency) > div,
|
|
.row:has(#client-frequency) > div {
|
|
display: flex;
|
|
}
|
|
}
|
|
|
|
/* PIE CHARTS BOXES
|
|
========================================================== */
|
|
|
|
#query-types-pie,
|
|
#forward-destinations-pie {
|
|
padding: var(--gap25) var(--gap25);
|
|
margin-top: calc(var(--gap) * 2);
|
|
border: var(--border-width-thick) solid var(--color-primary);
|
|
border-radius: var(--radius100);
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
#query-types-pie {
|
|
border-right-width: var(--pie-chart-border-width);
|
|
}
|
|
|
|
#forward-destinations-pie {
|
|
border-left-width: var(--pie-chart-border-width);
|
|
text-align: right;
|
|
}
|
|
|
|
#query-types-pie:before,
|
|
#forward-destinations-pie:before {
|
|
content: attr(id);
|
|
display: flex;
|
|
align-items: flex-end;
|
|
justify-content: flex-end;
|
|
width: calc(var(--gap) * 9);
|
|
min-height: calc(var(--gap) * 4);
|
|
background-color: var(--color-secondary-hover);
|
|
padding: var(--gap25) var(--gap75);
|
|
text-align: right;
|
|
position: absolute;
|
|
inset: var(--gap) calc(var(--gap) * -9) auto auto;
|
|
font-size: 1.2rem;
|
|
text-transform: uppercase;
|
|
color: var(--color-text-dark);
|
|
border-top: calc(var(--border-width) * 2) solid var(--color-background);
|
|
z-index: 1;
|
|
}
|
|
|
|
#forward-destinations-pie:before {
|
|
justify-content: flex-start;
|
|
inset: var(--gap) auto auto calc(var(--gap) * -9);
|
|
}
|
|
}
|
|
|
|
#query-types-pie:after,
|
|
#forward-destinations-pie:after {
|
|
content: "";
|
|
border: var(--border-width) solid var(--color-background);
|
|
border-radius: 0 var(--radius75) var(--radius75) 0;
|
|
background-color: transparent;
|
|
position: absolute;
|
|
inset: calc(var(--gap25) * -1) calc(var(--gap25) * -1) calc(var(--gap25) * -1)
|
|
calc(var(--gap25) * 32);
|
|
z-index: 0;
|
|
}
|
|
|
|
#forward-destinations-pie:after {
|
|
inset: calc(var(--gap25) * -1) calc(var(--gap25) * 32) calc(var(--gap25) * -1)
|
|
calc(var(--gap25) * -1);
|
|
border-radius: var(--radius75) 0 0 var(--radius75);
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
#query-types-pie:after {
|
|
inset: calc(var(--gap25) * -1) calc(var(--gap25) * -10) calc(var(--gap25) * -1)
|
|
calc(var(--gap25) * 32);
|
|
}
|
|
|
|
#forward-destinations-pie:after {
|
|
inset: calc(var(--gap25) * -1) calc(var(--gap25) * 32) calc(var(--gap25) * -1)
|
|
calc(var(--gap25) * -10);
|
|
}
|
|
}
|
|
|
|
#query-types-pie > div,
|
|
#forward-destinations-pie > div {
|
|
z-index: 5;
|
|
}
|
|
|
|
#query-types-pie .box-body,
|
|
#forward-destinations-pie .box-body {
|
|
background: var(--background-grid) repeat 0 0;
|
|
background-size: calc(var(--gap) * 2) calc(var(--gap) * 2);
|
|
padding: var(--gap25) var(--gap25);
|
|
margin: var(--gap) 0 0 0;
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
#query-types-pie .box-body,
|
|
#forward-destinations-pie .box-body {
|
|
justify-content: flex-end;
|
|
aspect-ratio: 1 / 1;
|
|
}
|
|
|
|
#query-types-pie .box-body {
|
|
margin-right: var(--gap);
|
|
}
|
|
|
|
#forward-destinations-pie .box-body {
|
|
margin-left: var(--gap);
|
|
}
|
|
}
|
|
|
|
/* --- fake corners */
|
|
@media (min-width: 768px) {
|
|
#forward-destinations-pie .box-body {
|
|
justify-content: flex-start;
|
|
}
|
|
|
|
#query-types-pie .box-body:before,
|
|
#query-types-pie .box-body:after {
|
|
inset: calc((var(--gap) * -2.125) - var(--gap) - var(--gap25))
|
|
calc((var(--gap) * -1) - var(--gap25)) calc(var(--gap25) * -1) auto;
|
|
}
|
|
|
|
#forward-destinations-pie .box-body:before,
|
|
#forward-destinations-pie .box-body:after {
|
|
inset: calc((var(--gap) * -2.125) - var(--gap) - var(--gap25)) auto calc(var(--gap25) * -1)
|
|
calc((var(--gap) * -1) - var(--gap25));
|
|
}
|
|
|
|
#query-types-pie .box-body:before,
|
|
#forward-destinations-pie .box-body:before {
|
|
background-color: var(--color-primary);
|
|
}
|
|
|
|
#query-types-pie .box-body:after,
|
|
#forward-destinations-pie .box-body:after {
|
|
background-color: var(--color-background);
|
|
border-radius: 0 var(--radius50) var(--radius50) 0;
|
|
}
|
|
|
|
#forward-destinations-pie .box-body:after {
|
|
border-radius: var(--radius50) 0 0 var(--radius50);
|
|
}
|
|
}
|
|
|
|
#query-types-pie .box-body div:first-child,
|
|
#forward-destinations-pie .box-body div:first-child {
|
|
padding: var(--gap) var(--gap);
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
#query-types-pie .box-body div:first-child,
|
|
#forward-destinations-pie .box-body div:first-child {
|
|
flex-grow: 1;
|
|
width: 100% !important;
|
|
aspect-ratio: 1 / 1;
|
|
position: absolute;
|
|
}
|
|
}
|
|
|
|
/* --- pie chart legend + "buttons" */
|
|
.chart-legend {
|
|
justify-content: flex-end;
|
|
translate: var(--gap) 0;
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
.chart-legend {
|
|
width: calc(var(--gap) * 12) !important;
|
|
margin-top: calc(var(--gap) * 1.4);
|
|
margin-bottom: var(--gap);
|
|
translate: calc(var(--gap) * 10.5) 0;
|
|
flex-shrink: 0;
|
|
align-self: flex-start;
|
|
}
|
|
|
|
#forward-destinations-pie .chart-legend {
|
|
justify-content: flex-start;
|
|
translate: calc(var(--gap) * -10.5) 0;
|
|
}
|
|
}
|
|
|
|
.chart-legend ul {
|
|
width: calc(var(--gap) * 9);
|
|
}
|
|
|
|
.chart-legend li {
|
|
margin: 0;
|
|
background-color: var(--color-disabled);
|
|
border-block: calc(var(--border-width) * 2) solid var(--color-background);
|
|
padding: var(--gap50) calc(var(--gap) * 3) var(--gap50) var(--gap75);
|
|
justify-content: flex-start !important;
|
|
flex-direction: row-reverse !important;
|
|
transition: background-color var(--transition-fast);
|
|
text-transform: uppercase;
|
|
font-weight: var(--font-regular);
|
|
font-size: 1.4rem;
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
#forward-destinations-pie .chart-legend li {
|
|
padding: var(--gap50) var(--gap75) var(--gap50) calc(var(--gap) * 3);
|
|
justify-content: flex-end !important;
|
|
}
|
|
}
|
|
|
|
.chart-legend li:hover {
|
|
background-color: var(--color-secondary);
|
|
}
|
|
|
|
.chart-legend li:hover p {
|
|
text-decoration: none !important;
|
|
}
|
|
|
|
.chart-legend li span {
|
|
background-color: var(--color-background);
|
|
display: flex !important;
|
|
justify-content: center;
|
|
align-items: center;
|
|
position: absolute;
|
|
inset: 0 var(--gap50) 0 auto;
|
|
width: calc(var(--gap) * 2);
|
|
margin: 0 !important;
|
|
}
|
|
|
|
@media (max-width: 767px) {
|
|
.chart-legend li span {
|
|
inset: 0 0 0 auto;
|
|
width: calc(var(--gap) * 2 + var(--border-width-thick));
|
|
margin: 0 !important;
|
|
border-right: var(--border-width-thick) solid var(--color-primary);
|
|
}
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
#forward-destinations-pie .chart-legend li span {
|
|
inset: 0 auto 0 var(--gap50);
|
|
}
|
|
}
|
|
|
|
.chart-legend li span svg {
|
|
transition: transform var(--transition-fast);
|
|
}
|
|
|
|
.chart-legend li span:hover svg {
|
|
transform: scale(1.5);
|
|
}
|
|
|
|
.chart-legend li + li {
|
|
margin-top: calc(var(--border-width) * -2);
|
|
}
|
|
|
|
@media (max-width: 767px) {
|
|
.chart-legend li:first-child {
|
|
border-radius: var(--radius100) 0 0 0;
|
|
}
|
|
|
|
.chart-legend li:last-child {
|
|
border-radius: 0 0 0 var(--radius100);
|
|
}
|
|
}
|
|
|
|
/* FOOTER
|
|
========================================================== */
|
|
|
|
.main-footer {
|
|
--footer-color: var(--color-tertiary-hover);
|
|
--footer-color-text: var(--color-red-alert);
|
|
background-color: transparent;
|
|
border: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
/* --- fake corner */
|
|
.main-footer > .row:first-child:before,
|
|
.main-footer > .row:first-child:after {
|
|
content: "";
|
|
display: block;
|
|
position: absolute;
|
|
inset: auto calc(var(--gap) * -2) calc(var(--gap) * -3.5) calc(var(--gap) * -2);
|
|
height: var(--gap);
|
|
}
|
|
|
|
@media (min-width: 1250px) {
|
|
.main-footer > .row:first-child:before,
|
|
.main-footer > .row:first-child:after {
|
|
inset: auto calc(var(--gap) * -6) calc(var(--gap) * -5.5) calc(var(--gap) * -6);
|
|
}
|
|
}
|
|
|
|
.main-footer > .row:first-child:before {
|
|
background-color: var(--color-secondary);
|
|
height: var(--gap);
|
|
}
|
|
|
|
.main-footer > .row:first-child:after {
|
|
background-color: var(--color-background);
|
|
border-radius: 0 0 0 var(--radius100);
|
|
bottom: calc(var(--gap) * -3.25);
|
|
}
|
|
|
|
@media (min-width: 1250px) {
|
|
.main-footer > .row:first-child:after {
|
|
bottom: calc(var(--gap) * -5.25);
|
|
}
|
|
}
|
|
|
|
/* --- donation bar tweaks */
|
|
.main-footer > .row:first-child {
|
|
padding: 0;
|
|
margin-inline: calc(var(--gap) * 2);
|
|
margin-bottom: calc(var(--gap) * 4);
|
|
margin-top: calc(var(--gap) * 4);
|
|
outline: calc(var(--gap) * 4) solid var(--color-background);
|
|
position: relative;
|
|
}
|
|
|
|
@media (min-width: 1250px) {
|
|
.main-footer > .row:first-child {
|
|
margin-inline: calc(var(--gap) * 6);
|
|
margin-bottom: calc(var(--gap) * 6);
|
|
margin-top: calc(var(--gap) * 4);
|
|
outline: calc(var(--gap) * 6) solid var(--color-background);
|
|
}
|
|
}
|
|
|
|
.main-footer > .row:first-child > div {
|
|
text-transform: uppercase;
|
|
font-size: 2rem;
|
|
width: 100%;
|
|
max-width: calc(var(--gap) * 35);
|
|
}
|
|
|
|
/* --- version info */
|
|
.version-info {
|
|
padding-left: var(--gap);
|
|
margin: 0;
|
|
position: relative;
|
|
}
|
|
|
|
.version-info:before {
|
|
background-color: var(--color-supplement-01);
|
|
content: "version-info-panel \00000a snglrt-23 \00000a vlct-88 \00000a lcars-47 \00000a □ □ □ □ ■";
|
|
white-space: pre;
|
|
display: flex;
|
|
justify-content: flex-end;
|
|
align-items: flex-start;
|
|
width: calc(var(--gap) * 10);
|
|
padding: var(--gap50) var(--gap50);
|
|
border-left: var(--border-width) solid var(--color-background);
|
|
border-top: var(--border-width) solid var(--color-background);
|
|
border-radius: var(--radius-main-lcars-inner) 0 0 0;
|
|
color: var(--color-text-dark);
|
|
text-transform: uppercase;
|
|
text-align: right;
|
|
font-size: 1rem;
|
|
position: absolute;
|
|
inset: var(--gap50) auto 0 calc(var(--gap) * -10);
|
|
transition: border-radius var(--transition);
|
|
z-index: 1;
|
|
}
|
|
|
|
.sidebar-mini.sidebar-collapse .version-info:before {
|
|
--radius-main-lcars-inner: var(--radius75);
|
|
content: "VIP \00000a 23 \00000a 88 \00000a 47 \00000a □ ■";
|
|
white-space: pre;
|
|
width: calc(var(--gap) * 2);
|
|
left: calc(var(--gap) * -2);
|
|
}
|
|
|
|
.version-info::after {
|
|
content: "";
|
|
position: absolute;
|
|
left: calc(var(--sidebar-width) * -1);
|
|
height: calc(var(--gap) * 20);
|
|
width: var(--sidebar-width);
|
|
top: 0;
|
|
background: var(--color-primary);
|
|
border-radius: var(--radius-main-lcars) 0 0 0;
|
|
z-index: 0;
|
|
}
|
|
|
|
@media (min-width: 992px) {
|
|
.version-info::after {
|
|
height: calc(var(--gap) * 13.5);
|
|
}
|
|
}
|
|
|
|
.version-info > div {
|
|
width: 100%;
|
|
padding: 0;
|
|
height: calc(var(--gap) * 20);
|
|
}
|
|
|
|
@media (min-width: 992px) {
|
|
.version-info > div {
|
|
height: calc(var(--gap) * 13.5);
|
|
}
|
|
}
|
|
|
|
/* --- footer scanner */
|
|
.version-info > div:before,
|
|
.version-info > div:after {
|
|
content: "";
|
|
background-color: var(--color-supplement-01);
|
|
height: var(--gap25);
|
|
position: absolute;
|
|
inset: 0 0 auto calc(var(--gap) * -1);
|
|
}
|
|
|
|
.version-info > div:before {
|
|
background-color: var(--color-supplement-01);
|
|
height: var(--gap);
|
|
top: calc(var(--gap) * 0.5 + var(--border-width));
|
|
}
|
|
|
|
.version-info > div:after {
|
|
background-color: var(--color-primary);
|
|
height: var(--gap50);
|
|
}
|
|
|
|
.version-info ul[class*="list-"] {
|
|
display: flex;
|
|
flex-direction: column;
|
|
margin: 0;
|
|
text-align: left;
|
|
position: relative;
|
|
padding-top: calc(var(--gap) * 2);
|
|
padding-right: var(--gap);
|
|
}
|
|
|
|
@media (min-width: 992px) {
|
|
.version-info ul[class*="list-"] {
|
|
flex-direction: row;
|
|
flex-wrap: wrap;
|
|
justify-content: space-between;
|
|
padding-right: 0;
|
|
}
|
|
}
|
|
|
|
.version-info ul[class*="list-"] > li,
|
|
.version-info ul[class*="list-"]::after {
|
|
padding: var(--gap25) calc(var(--gap) * 8) var(--gap25) var(--gap);
|
|
text-transform: uppercase;
|
|
color: var(--color-primary-text);
|
|
font-weight: var(--font-regular);
|
|
position: relative;
|
|
margin-bottom: var(--gap);
|
|
padding-block: var(--gap50);
|
|
}
|
|
|
|
@media (min-width: 992px) {
|
|
.version-info ul[class*="list-"] > li,
|
|
.version-info ul[class*="list-"]::after {
|
|
width: calc(50% - var(--gap25));
|
|
}
|
|
}
|
|
|
|
.version-info ul[class*="list-"] > li::after,
|
|
.version-info ul[class*="list-"] > li::before {
|
|
content: "";
|
|
position: absolute;
|
|
inset: 0;
|
|
pointer-events: none;
|
|
}
|
|
|
|
.version-info ul[class*="list-"] > li::before {
|
|
border: var(--border-width) solid var(--color-disabled);
|
|
border-right-width: calc(var(--border-width) * 25);
|
|
border-bottom: 0;
|
|
border-radius: var(--radius100) 0 0 0;
|
|
z-index: 1;
|
|
}
|
|
|
|
.version-info ul[class*="list-"] > li::after {
|
|
--color-footer-scanner: var(--color-primary);
|
|
display: block;
|
|
height: calc(var(--gap25));
|
|
width: calc(var(--gap) * 16);
|
|
background-image: linear-gradient(
|
|
90deg,
|
|
var(--color-footer-scanner) 16.67%,
|
|
var(--color-background) 16.67%,
|
|
var(--color-background) 50%,
|
|
var(--color-footer-scanner) 50%,
|
|
var(--color-footer-scanner) 66.67%,
|
|
var(--color-background) 66.67%,
|
|
var(--color-background) 100%
|
|
);
|
|
background-size: var(--gap50) var(--gap50);
|
|
inset: auto auto 0 var(--gap);
|
|
z-index: 1;
|
|
animation: footerScanner 20s var(--transition-function) infinite;
|
|
}
|
|
|
|
.version-info ul[class*="list-"] > li:nth-child(2)::after {
|
|
animation-delay: 2s;
|
|
animation-duration: 16s;
|
|
}
|
|
|
|
.version-info ul[class*="list-"] > li:nth-child(3)::after {
|
|
animation-delay: 1s;
|
|
animation-duration: 12s;
|
|
}
|
|
|
|
.version-info ul[class*="list-"] > li:nth-child(4)::after {
|
|
animation-delay: 0.75s;
|
|
animation-duration: 18s;
|
|
}
|
|
|
|
@keyframes footerScanner {
|
|
0%,
|
|
100% {
|
|
width: calc(var(--gap) * 16);
|
|
}
|
|
|
|
5%,
|
|
75% {
|
|
width: calc(var(--gap) * 8);
|
|
}
|
|
|
|
25%,
|
|
95% {
|
|
width: calc(var(--gap) * 12);
|
|
}
|
|
|
|
50%,
|
|
65% {
|
|
width: calc(var(--gap) * 4);
|
|
}
|
|
}
|
|
|
|
/* --- fake corner */
|
|
.version-info ul[class*="list-"]::before {
|
|
content: "";
|
|
height: var(--gap);
|
|
background-color: var(--color-background);
|
|
position: absolute;
|
|
inset: var(--gap) 0 auto calc(var(--gap) * -1);
|
|
border-radius: var(--radius100) 0 0 0;
|
|
}
|
|
|
|
.version-info ul[class*="list-"] strong {
|
|
font-weight: var(--font-regular);
|
|
}
|
|
|
|
.version-info a:not(.lookatme) {
|
|
color: var(--color-quaternary);
|
|
transition: color var(--transition);
|
|
}
|
|
|
|
.version-info a:not(.lookatme):hover {
|
|
color: var(--color-danger-bright);
|
|
}
|
|
|
|
/* --- update button */
|
|
.version-info .lookatme {
|
|
--pulse-color: var(--color-red-alert);
|
|
--pulse-color-background: var(--color-disabled);
|
|
padding: var(--gap25) var(--gap50);
|
|
border: var(--border-width) solid var(--color-background);
|
|
border-bottom: 0;
|
|
color: #fff;
|
|
position: absolute;
|
|
inset: var(--border-width) var(--border-width) 0 auto;
|
|
animation: pulseBg var(--transition-duration-slow) var(--transition-function) infinite;
|
|
z-index: 1;
|
|
}
|
|
|
|
.version-info .lookatme::after {
|
|
content: "";
|
|
display: block;
|
|
inset: 0 auto 0 calc(var(--gap25) * -1);
|
|
width: var(--border-width);
|
|
padding: 0;
|
|
background-color: var(--color-supplement-01);
|
|
animation: none;
|
|
opacity: 1;
|
|
text-shadow: none;
|
|
}
|
|
|
|
/* --- installation panel */
|
|
.version-info p {
|
|
--color-installation-panel: var(--color-danger);
|
|
display: flex;
|
|
align-items: center;
|
|
background-color: var(--color-background);
|
|
padding: var(--gap) var(--gap);
|
|
margin-top: var(--border-width) !important;
|
|
border: var(--border-width) solid var(--color-installation-panel);
|
|
border-bottom: 0;
|
|
border-right: 0;
|
|
color: var(--color-danger-bright);
|
|
text-align: left;
|
|
text-transform: uppercase;
|
|
font-size: 2rem;
|
|
position: relative;
|
|
height: calc(var(--gap) * 3.5);
|
|
}
|
|
|
|
.version-info p::before {
|
|
content: "";
|
|
background: var(--color-installation-panel);
|
|
width: var(--gap);
|
|
padding: var(--gap50) var(--gap50);
|
|
border: var(--border-width) solid var(--color-background);
|
|
border-right: 0;
|
|
position: absolute;
|
|
inset: auto auto calc(var(--border-width) * -1) calc(var(--border-width) * -1);
|
|
translate: -100% 0;
|
|
z-index: 2;
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
.sidebar-mini.sidebar-collapse .version-info p::before {
|
|
content: "■";
|
|
}
|
|
}
|
|
|
|
@media (min-width: 992px) {
|
|
.version-info p::before {
|
|
content: "installation instructions";
|
|
width: auto;
|
|
padding-left: var(--gap);
|
|
padding-right: var(--gap50);
|
|
color: var(--color-text-dark);
|
|
text-transform: uppercase;
|
|
text-align: right;
|
|
font-size: 1rem;
|
|
}
|
|
}
|
|
|
|
.version-info p::after {
|
|
content: "";
|
|
background-color: rgba(222, 222, 222, 20%);
|
|
border-top: var(--border-width) solid var(--color-background);
|
|
position: absolute;
|
|
inset: calc(var(--border-width) * -2) 0 auto calc(var(--border-width) * -4);
|
|
}
|
|
|
|
.version-info p code {
|
|
text-transform: none;
|
|
background-color: transparent;
|
|
padding: 0;
|
|
border-radius: 0;
|
|
margin-left: var(--gap50);
|
|
border: var(--border-width) solid var(--color-disabled);
|
|
font-family: var(--font-family-mono);
|
|
font-size: 1.5rem;
|
|
}
|
|
|
|
.version-info p code:hover {
|
|
border-color: var(--color-red-alert);
|
|
}
|
|
|
|
.version-info p code a {
|
|
display: block;
|
|
padding: var(--gap25) var(--gap);
|
|
color: var(--color-danger-bright) !important;
|
|
}
|
|
|
|
.version-info p code:hover a {
|
|
background-color: var(--color-disabled);
|
|
color: #fff !important;
|
|
}
|
|
|
|
/* NAV CUSTOM TABS (settings page)
|
|
========================================================== */
|
|
|
|
.nav-tabs-custom {
|
|
border-radius: 0;
|
|
}
|
|
|
|
.nav-tabs-custom > .nav-tabs {
|
|
border: 0;
|
|
border-radius: 0;
|
|
}
|
|
|
|
@media (min-width: 1250px) {
|
|
.nav-tabs-custom > .nav-tabs {
|
|
display: flex;
|
|
}
|
|
}
|
|
|
|
.nav-tabs-custom > .nav-tabs > li {
|
|
border: 0;
|
|
margin: 0;
|
|
}
|
|
|
|
@media (min-width: 1250px) {
|
|
.nav-tabs-custom > .nav-tabs > li {
|
|
flex-grow: 1;
|
|
}
|
|
}
|
|
|
|
.nav-tabs-custom > .nav-tabs > li > a {
|
|
background-color: var(--color-primary);
|
|
border-radius: 0;
|
|
border: 0 !important;
|
|
min-width: calc(var(--gap) * 8);
|
|
margin: var(--gap25) var(--gap25) 0 0;
|
|
font-size: 1.4rem;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.nav-tabs-custom > .nav-tabs > li.active > a,
|
|
.nav-tabs-custom > .nav-tabs > li.active:hover > a,
|
|
.nav-tabs-custom > .nav-tabs > li > a:hover {
|
|
background-color: var(--color-tertiary-hover);
|
|
color: var(--color-text-dark);
|
|
margin: var(--gap25) var(--gap25) 0 0;
|
|
}
|
|
|
|
.nav-tabs-custom > .nav-tabs > li > a:hover {
|
|
background-color: var(--color-danger-bright);
|
|
}
|
|
|
|
.nav-tabs-custom > .tab-content {
|
|
padding: 0;
|
|
margin-top: var(--gap);
|
|
}
|
|
|
|
/* SYSTEM (settings page)
|
|
========================================================== */
|
|
|
|
#sysadmin .table-striped {
|
|
margin-top: 0;
|
|
}
|
|
|
|
#sysadmin .table-striped > tbody > tr:nth-of-type(odd) {
|
|
background-color: transparent;
|
|
}
|
|
|
|
#sysadmin .table-striped > tbody > tr:nth-child(2n + 1) th {
|
|
background-color: var(--color-secondary);
|
|
}
|
|
|
|
#sysadmin .table-striped > tbody > tr:nth-child(3n + 1) th {
|
|
background-color: var(--color-tertiary);
|
|
}
|
|
|
|
#sysadmin .table-striped > tbody > tr:hover th {
|
|
background-color: var(--color-danger-bright);
|
|
transition: background-color var(--transition-fast);
|
|
}
|
|
|
|
#sysadmin .table-striped > tbody > tr:hover td:after,
|
|
#sysadmin .table-striped > tbody > tr:hover td:before {
|
|
--sysadmin-border-color: var(--color-danger-bright);
|
|
transition: background-color var(--transition-fast);
|
|
}
|
|
|
|
@media (max-width: 767px) {
|
|
#sysadmin .table-bordered > tbody > tr {
|
|
display: flex;
|
|
flex-direction: column;
|
|
}
|
|
}
|
|
|
|
#sysadmin .table > tbody > tr > th,
|
|
#sysadmin .table > tbody > tr > td {
|
|
padding: var(--gap) var(--gap75) var(--gap50) var(--gap75);
|
|
text-transform: uppercase;
|
|
border: var(--border-width-thick) solid var(--color-background);
|
|
position: relative;
|
|
font-size: inherit;
|
|
}
|
|
|
|
#sysadmin .table-bordered > tbody > tr > th {
|
|
border-left: 0;
|
|
background-color: var(--color-tertiary-hover);
|
|
color: var(--color-text-dark);
|
|
vertical-align: bottom;
|
|
text-align: right;
|
|
font-weight: var(--font-regular);
|
|
}
|
|
|
|
#sysadmin .table-bordered > tbody > tr > th:before {
|
|
content: "";
|
|
background-color: var(--color-background);
|
|
width: calc(var(--gap50));
|
|
height: calc(var(--gap50));
|
|
position: absolute;
|
|
inset: var(--gap25) auto auto var(--gap25);
|
|
}
|
|
|
|
#sysadmin .table-bordered > tbody > tr > td {
|
|
padding-left: var(--gap);
|
|
}
|
|
|
|
@media (max-width: 767px) {
|
|
#sysadmin .table-bordered > tbody > tr > td {
|
|
border-top: 0;
|
|
border-left: 0;
|
|
}
|
|
}
|
|
|
|
#sysadmin .table-bordered > tbody > tr > td:before,
|
|
#sysadmin .table-bordered > tbody > tr > td:after {
|
|
--sysadmin-border-color: var(--color-secondary);
|
|
content: "";
|
|
position: absolute;
|
|
background-color: var(--sysadmin-border-color);
|
|
}
|
|
|
|
#sysadmin .table-bordered > tbody > tr > td:before {
|
|
height: var(--border-width-thick);
|
|
inset: 0 0 auto;
|
|
}
|
|
|
|
#sysadmin .table-bordered > tbody > tr > td:after {
|
|
width: var(--border-width-thick);
|
|
inset: 0 auto 0 0;
|
|
}
|
|
|
|
#sysadmin .row:first-child .box {
|
|
position: relative;
|
|
margin-top: calc(var(--gap) * 2);
|
|
border-top: calc(var(--gap) * 1.6) solid var(--color-secondary);
|
|
border-radius: var(--radius100) 0 0 var(--radius100);
|
|
}
|
|
|
|
#sysadmin .box-header {
|
|
border-left: calc(var(--border-panel-width)) solid var(--color-secondary);
|
|
min-height: calc(var(--gap) * 3);
|
|
}
|
|
|
|
#sysadmin .box-title {
|
|
position: absolute;
|
|
inset: calc(var(--gap) * -1.6) 0 auto auto;
|
|
background-color: var(--color-background);
|
|
padding: 0 var(--gap50);
|
|
min-height: calc(var(--gap) * 1.6);
|
|
}
|
|
|
|
#sysadmin .box-body {
|
|
padding-right: 0;
|
|
padding-top: 0;
|
|
}
|
|
|
|
/* --- fake corner */
|
|
#sysadmin .box-header:before,
|
|
#sysadmin .box-header:after {
|
|
content: "";
|
|
position: absolute;
|
|
width: var(--gap);
|
|
height: var(--gap);
|
|
inset: 0 auto auto 0;
|
|
}
|
|
|
|
#sysadmin .box-header:before {
|
|
background-color: var(--color-secondary);
|
|
}
|
|
|
|
#sysadmin .box-header:after {
|
|
background-color: var(--color-background);
|
|
border-radius: var(--radius50) 0 0 0;
|
|
}
|
|
|
|
/* --- danger area buttons */
|
|
#sysadmin .box-warning {
|
|
padding: var(--gap25) var(--gap25);
|
|
margin-top: calc(var(--gap) * 2);
|
|
border: var(--border-width-thick) solid var(--color-supplement-01);
|
|
border-radius: var(--radius100);
|
|
transition:
|
|
border-color var(--transition-slow),
|
|
padding var(--transition-slow);
|
|
}
|
|
|
|
#sysadmin .box-warning:hover {
|
|
border-color: var(--color-quinternary);
|
|
padding: calc(var(--gap) * 1.5) var(--gap25);
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
#sysadmin .box-warning {
|
|
border-left-width: var(--pie-chart-border-width);
|
|
text-align: right;
|
|
}
|
|
|
|
#sysadmin .box-warning::before {
|
|
content: "danger.area.74656";
|
|
display: flex;
|
|
align-items: flex-end;
|
|
width: calc(var(--gap) * 9);
|
|
min-height: calc(var(--gap) * 4);
|
|
background-color: var(--color-danger);
|
|
padding: var(--gap25) var(--gap75);
|
|
text-align: right;
|
|
position: absolute;
|
|
font-size: 1.2rem;
|
|
text-transform: uppercase;
|
|
color: var(--color-text-dark);
|
|
border-top: calc(var(--border-width) * 2) solid var(--color-background);
|
|
border-bottom: calc(var(--border-width) * 2) solid var(--color-background);
|
|
z-index: 1;
|
|
justify-content: flex-end;
|
|
inset: var(--gap) auto auto calc(var(--gap) * -9);
|
|
transition: background-color var(--transition-slow);
|
|
}
|
|
|
|
#sysadmin .box-warning:hover::before {
|
|
--pulse-color: #fff;
|
|
--pulse-color-background: var(--color-danger-bright);
|
|
animation: pulseBg 2s var(--transition-fast) infinite;
|
|
}
|
|
}
|
|
|
|
#sysadmin .box-warning::after {
|
|
content: "";
|
|
border: var(--border-width) solid var(--color-background);
|
|
border-radius: var(--radius75) 0 0 var(--radius75);
|
|
background-color: transparent;
|
|
position: absolute;
|
|
inset: calc(var(--gap25) * -1) calc(var(--gap25) * 32) calc(var(--gap25) * -1)
|
|
calc(var(--gap25) * -1);
|
|
z-index: 0;
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
#sysadmin .box-warning::after {
|
|
inset: calc(var(--gap25) * -1) calc(var(--gap25) * 32) calc(var(--gap25) * -1)
|
|
calc(var(--gap25) * -10);
|
|
}
|
|
}
|
|
|
|
#sysadmin .box-warning .box-body {
|
|
padding: var(--gap) var(--gap);
|
|
z-index: 1;
|
|
}
|
|
|
|
#sysadmin .box-warning .box-body::after {
|
|
content: "";
|
|
width: calc(var(--gap) * 7);
|
|
font-size: 1rem;
|
|
color: var(--color-quinternary);
|
|
position: absolute;
|
|
inset: calc(var(--gap) * -1) var(--gap) auto auto;
|
|
transition: opacity var(--transition-slow);
|
|
opacity: 0;
|
|
}
|
|
|
|
#sysadmin .box-warning:hover .box-body::after {
|
|
opacity: 1;
|
|
animation: runningDots 1s steps(10, end) infinite alternate;
|
|
}
|
|
|
|
/* DNS (settings page)
|
|
========================================================== */
|
|
|
|
#dns {
|
|
margin-top: calc(var(--gap) * 2);
|
|
}
|
|
|
|
#dns .table {
|
|
margin-top: 0;
|
|
}
|
|
|
|
#dns .table th {
|
|
color: var(--color-primary-text);
|
|
padding-bottom: var(--gap);
|
|
}
|
|
|
|
#dns .table-bordered td[title] {
|
|
position: relative;
|
|
}
|
|
|
|
#dns .table-bordered td[title]:hover:before,
|
|
#dns .table-bordered td[title]:hover:after {
|
|
opacity: 1;
|
|
translate: 0;
|
|
}
|
|
|
|
#dns .table-bordered td[title]:before,
|
|
#dns .table-bordered td[title]:after {
|
|
opacity: 0;
|
|
pointer-events: none;
|
|
transition:
|
|
opacity var(--transition),
|
|
translate var(--transition);
|
|
}
|
|
|
|
/* --- lines */
|
|
#dns .table-bordered td[title]:before {
|
|
content: "";
|
|
position: absolute;
|
|
inset: calc(var(--gap50) * -1) auto auto 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
border-top: var(--border-width) solid var(--color-disabled);
|
|
border-left: calc(var(--border-width) * 2) solid var(--color-disabled);
|
|
border-radius: var(--radius50) 0 0 0;
|
|
translate: calc(var(--gap25) * -1) 0;
|
|
}
|
|
|
|
/* --- ip address */
|
|
#dns .table-bordered td[title]:after {
|
|
content: attr(title);
|
|
position: absolute;
|
|
inset: calc(var(--gap25) * -1) auto auto var(--gap50);
|
|
font-size: 1rem;
|
|
color: var(--color-success);
|
|
translate: var(--gap25) 0;
|
|
}
|
|
|
|
/* --- UPSTREAM DNS SERVERS */
|
|
#dns .row:first-child div:first-child .box {
|
|
border: var(--border-width) solid var(--color-disabled);
|
|
border-radius: 0 var(--radius100) var(--radius100) 0;
|
|
border-left: 0;
|
|
}
|
|
|
|
#dns .row:first-child div:nth-child(2) .box {
|
|
border: var(--border-width) solid var(--color-primary);
|
|
border-radius: var(--radius100) 0 0 var(--radius100);
|
|
border-right: 0;
|
|
padding-left: var(--gap);
|
|
}
|
|
|
|
@media (max-width: 1199px) {
|
|
#dns .row:first-child div:nth-child(2) .box {
|
|
margin-top: var(--gap50);
|
|
}
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
#dns .row:first-child div:first-child .box {
|
|
border-right-width: calc(var(--border-panel-width) / 2);
|
|
}
|
|
|
|
#dns .row:first-child div:nth-child(2) .box {
|
|
border-left-width: calc(var(--border-panel-width) / 2);
|
|
}
|
|
}
|
|
|
|
/* --- fake corners */
|
|
@media (min-width: 768px) {
|
|
#dns .row:first-child div:first-child .box:before,
|
|
#dns .row:first-child div:nth-child(2) .box:before {
|
|
content: "";
|
|
position: absolute;
|
|
background-color: var(--color-background);
|
|
border-radius: var(--radius50);
|
|
inset: 0 calc(var(--gap50) * -1) 0 auto;
|
|
width: var(--gap);
|
|
z-index: 1;
|
|
}
|
|
|
|
#dns .row:first-child div:nth-child(2) .box:before {
|
|
inset: 0 auto 0 calc(var(--gap50) * -1);
|
|
}
|
|
}
|
|
|
|
/* --- fake panel */
|
|
@media (min-width: 768px) {
|
|
#dns .row:first-child div:first-child .box:after {
|
|
content: "UDS 498 691";
|
|
position: absolute;
|
|
inset: calc(var(--gap) * 2) calc(var(--gap) * -2) calc(var(--gap) * 10.5) auto;
|
|
background-color: var(--color-primary);
|
|
width: calc(var(--gap) * 2);
|
|
border-radius: 0 var(--radius50) var(--radius50) 0;
|
|
border: var(--border-width) solid black;
|
|
text-align: right;
|
|
font-size: 1rem;
|
|
padding: var(--gap) var(--gap25);
|
|
color: var(--color-text-dark);
|
|
}
|
|
}
|
|
|
|
/* --- SAFE/DANGER AREA */
|
|
#dns .row:first-child div:nth-child(3) .box {
|
|
margin-top: var(--gap);
|
|
}
|
|
|
|
#dns .row:first-child div:nth-child(3) .box-body {
|
|
padding-right: 0;
|
|
}
|
|
|
|
.no-danger-area,
|
|
.danger-area {
|
|
border-width: calc(var(--border-width) * 2);
|
|
border-style: double;
|
|
box-shadow: none;
|
|
margin-block: 0;
|
|
position: relative;
|
|
}
|
|
|
|
.no-danger-area h4,
|
|
.danger-area h4 {
|
|
margin-top: var(--gap);
|
|
margin-bottom: calc(var(--gap) * 1.5);
|
|
}
|
|
|
|
/* --- top / bottom panel + text */
|
|
.no-danger-area:before,
|
|
.danger-area:before {
|
|
content: "panel-" attr(class);
|
|
height: calc(var(--border-width) * 8);
|
|
padding-left: var(--gap50);
|
|
position: absolute;
|
|
inset: auto 0 calc(var(--border-width) * -8) calc(var(--border-width) * -2);
|
|
background-color: var(--color-success-dark);
|
|
text-transform: uppercase;
|
|
color: var(--color-background);
|
|
font-size: 1rem;
|
|
}
|
|
|
|
.danger-area:before {
|
|
inset: calc(var(--border-width) * -8) 0 auto calc(var(--border-width) * -2);
|
|
background-color: var(--color-danger);
|
|
}
|
|
|
|
.no-danger-area:after,
|
|
.danger-area:after {
|
|
content: "";
|
|
position: absolute;
|
|
width: var(--gap);
|
|
height: calc(var(--gap) + (var(--border-width) * 2));
|
|
background-color: var(--color-background);
|
|
bottom: calc(var(--gap) * -1);
|
|
right: calc(var(--gap) / -4);
|
|
}
|
|
|
|
.danger-area:after {
|
|
top: calc(var(--gap) * -1);
|
|
bottom: auto;
|
|
}
|
|
|
|
.no-danger-area h4:before,
|
|
.danger-area h4:before {
|
|
content: "";
|
|
position: absolute;
|
|
inset: auto calc(var(--gap) * -0.25) calc(var(--border-width) * -8) auto;
|
|
width: var(--gap);
|
|
height: calc(var(--border-width) * 8);
|
|
background-color: var(--color-success-dark);
|
|
border-radius: 0 var(--radius100) var(--radius100) 0;
|
|
z-index: 1;
|
|
}
|
|
|
|
.danger-area h4:before {
|
|
inset: calc(var(--border-width) * -17 + 1px) calc(var(--gap) * -1.25) auto auto; /* 1px default padding compensation */
|
|
background-color: var(--color-danger);
|
|
}
|
|
|
|
/* --- "scanner" */
|
|
.no-danger-area h4:after,
|
|
.danger-area h4:after {
|
|
content: "";
|
|
background-image: repeating-linear-gradient(
|
|
to right,
|
|
var(--color-primary),
|
|
var(--color-primary) var(--border-width),
|
|
var(--color-background) var(--border-width),
|
|
var(--color-background)
|
|
);
|
|
background-size: var(--gap) var(--gap);
|
|
background-position: 0 0;
|
|
width: calc(var(--gap) * 10);
|
|
height: var(--gap50);
|
|
border-block: var(--border-width) solid var(--color-background);
|
|
position: absolute;
|
|
inset: auto var(--gap) calc(var(--gap) * -0.75) auto;
|
|
animation: topSmallScanner 1s linear infinite;
|
|
}
|
|
|
|
.danger-area h4:after {
|
|
inset: calc(var(--gap) * -1.8) 0 auto auto;
|
|
}
|
|
|
|
.no-danger-area + .danger-area {
|
|
margin-top: calc(var(--gap) * 2.5);
|
|
}
|
|
|
|
/* --- variants */
|
|
.no-danger-area {
|
|
border-color: var(--color-success-dark);
|
|
border-bottom: 0;
|
|
border-radius: var(--radius100) var(--radius100) 0 0;
|
|
}
|
|
|
|
.no-danger-area h4 {
|
|
color: var(--color-success);
|
|
}
|
|
|
|
.danger-area {
|
|
border-color: var(--color-danger);
|
|
border-top: 0;
|
|
border-radius: 0 0 var(--radius100) var(--radius100);
|
|
}
|
|
|
|
.danger-area h4 {
|
|
color: var(--color-danger-bright);
|
|
position: relative;
|
|
}
|
|
|
|
/* --- headers + lcars panels (advanced settings, privacy) */
|
|
#dns form > .row:nth-child(2) h4,
|
|
#privacy .box-header h3,
|
|
#web > .row > div:first-child .box-header h3 {
|
|
color: var(--color-danger-bright);
|
|
padding-left: var(--gap);
|
|
padding-top: var(--gap25);
|
|
margin-top: calc(var(--gap) * 2);
|
|
margin-bottom: 0;
|
|
border: var(--border-width) solid var(--color-primary);
|
|
border-radius: var(--radius100) 0 0 0;
|
|
border-bottom: 0;
|
|
border-right: 0;
|
|
position: relative;
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
#dns form > .row:nth-child(2) h4::before,
|
|
#dns form > .row:nth-child(2) h4::after,
|
|
#privacy .box-header h3::before,
|
|
#privacy .box-header h3::after,
|
|
#web > .row > div:first-child .box-header h3::before,
|
|
#web > .row > div:first-child .box-header h3::after {
|
|
content: "";
|
|
position: absolute;
|
|
inset: 0 auto auto 0;
|
|
width: var(--gap);
|
|
height: var(--gap);
|
|
background-color: hotpink;
|
|
}
|
|
|
|
#dns form > .row:nth-child(2) h4::before,
|
|
#privacy .box-header h3::before,
|
|
#web > .row > div:first-child .box-header h3::before {
|
|
background-color: var(--color-primary);
|
|
}
|
|
|
|
#dns form > .row:nth-child(2) h4::after,
|
|
#privacy .box-header h3::after,
|
|
#web > .row > div:first-child .box-header h3::after {
|
|
background-color: var(--color-background);
|
|
border-radius: var(--radius50) 0 0 0;
|
|
}
|
|
}
|
|
|
|
#dns form > .row:nth-child(2) h4 ~ p,
|
|
#privacy .box-body,
|
|
#web > .row > div:first-child .box-body {
|
|
margin-top: 0;
|
|
padding-top: var(--gap);
|
|
padding-left: var(--gap);
|
|
}
|
|
|
|
#dns form > .row:nth-child(2) h4:nth-of-type(1) ~ p:nth-of-type(1),
|
|
#dns form > .row:nth-child(2) h4:nth-of-type(1) ~ p:nth-of-type(2),
|
|
#dns form > .row:nth-child(2) h4:nth-of-type(1) ~ p:nth-of-type(3),
|
|
#dns form > .row:nth-child(2) h4:nth-of-type(2) ~ p:nth-of-type(4),
|
|
#dns form > .row:nth-child(2) h4:nth-of-type(2) ~ p:nth-of-type(5),
|
|
#dns form > .row:nth-child(2) h4:nth-of-type(2) ~ p:nth-of-type(6),
|
|
#dns form > .row:nth-child(2) h4:nth-of-type(2) ~ p:nth-of-type(7),
|
|
#dns form > .row:nth-child(2) h4:nth-of-type(2) ~ p:nth-of-type(8),
|
|
#dns form > .row:nth-child(2) .form-group,
|
|
#privacy .box-header h3,
|
|
#privacy .box-body,
|
|
#web > .row > div:first-child .box-header h3,
|
|
#web > .row > div:first-child .box-body {
|
|
border-left: var(--border-width) solid var(--color-primary);
|
|
}
|
|
|
|
#dns form > .row:nth-child(2) h4:nth-of-type(1) ~ p:nth-of-type(3) {
|
|
border-bottom: var(--border-width) solid var(--color-primary);
|
|
padding-bottom: var(--gap50);
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
#dns form > .row:nth-child(2) h4,
|
|
#dns form > .row:nth-child(2) h4:nth-of-type(1) ~ p:nth-of-type(1),
|
|
#dns form > .row:nth-child(2) h4:nth-of-type(1) ~ p:nth-of-type(2),
|
|
#dns form > .row:nth-child(2) h4:nth-of-type(1) ~ p:nth-of-type(3),
|
|
#dns form > .row:nth-child(2) h4:nth-of-type(2) ~ p:nth-of-type(4),
|
|
#dns form > .row:nth-child(2) h4:nth-of-type(2) ~ p:nth-of-type(5),
|
|
#dns form > .row:nth-child(2) h4:nth-of-type(2) ~ p:nth-of-type(6),
|
|
#dns form > .row:nth-child(2) h4:nth-of-type(2) ~ p:nth-of-type(7),
|
|
#dns form > .row:nth-child(2) h4:nth-of-type(2) ~ p:nth-of-type(8),
|
|
#dns form > .row:nth-child(2) .form-group,
|
|
#privacy .box-header h3,
|
|
#privacy .box-body,
|
|
#web > .row > div:first-child .box-header h3,
|
|
#web > .row > div:first-child .box-body {
|
|
border-left-width: calc(var(--border-panel-width) / 2);
|
|
}
|
|
}
|
|
|
|
#dns form > .row:nth-child(2) .form-group {
|
|
margin-top: calc(var(--border-width) * 2);
|
|
margin-bottom: 0;
|
|
padding: var(--gap50) 0 var(--gap50) var(--gap);
|
|
border-color: var(--color-disabled);
|
|
border-bottom: var(--border-width) solid var(--color-disabled);
|
|
}
|
|
|
|
#dns form > .row:nth-child(2) .form-group .input-group {
|
|
display: block;
|
|
}
|
|
|
|
#dns .col-lg-12 > .icheck-primary + br,
|
|
#dns .col-lg-12 > p + br {
|
|
display: none;
|
|
}
|
|
|
|
#privacy .box-header,
|
|
#web > .row > div:first-child .box-header {
|
|
padding: 0;
|
|
}
|
|
|
|
#privacy .box-header h3,
|
|
#web > .row > div:first-child .box-header h3 {
|
|
display: block;
|
|
}
|
|
|
|
/* Double border text areas
|
|
========================================================== */
|
|
|
|
#dns p,
|
|
#dns .icheck-primary,
|
|
#all-queries_wrapper ~ p,
|
|
#web > .row > div:nth-child(2) .box {
|
|
font-weight: 100;
|
|
line-height: 1.5;
|
|
letter-spacing: 0.015rem;
|
|
margin-top: var(--gap);
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
#dns .table + p,
|
|
#dns .col-lg-12 > .icheck-primary,
|
|
#all-queries_wrapper ~ p,
|
|
#all-queries_wrapper ~ p + ul,
|
|
#web > .row > div:nth-child(2) .box {
|
|
padding: var(--gap);
|
|
border: calc(var(--border-width) * 2) double var(--color-disabled);
|
|
border-radius: var(--radius100);
|
|
}
|
|
|
|
#all-queries_wrapper ~ p + p {
|
|
border-bottom: 0;
|
|
border-bottom-left-radius: 0;
|
|
border-bottom-right-radius: 0;
|
|
}
|
|
|
|
#all-queries_wrapper ~ p + ul {
|
|
border-top: 0;
|
|
border-top-left-radius: 0;
|
|
border-top-right-radius: 0;
|
|
padding-left: calc(var(--gap) * 2);
|
|
}
|
|
|
|
#web > .row > div:nth-child(2) .box {
|
|
margin-top: calc(var(--gap) * 2);
|
|
}
|
|
|
|
@media (min-width: 992px) {
|
|
#web > .row > div:nth-child(2) .box {
|
|
border-left: 0;
|
|
border-radius: 0 var(--radius100) var(--radius100) 0;
|
|
}
|
|
}
|
|
|
|
#web > .row > div:nth-child(2) .box-body {
|
|
padding: 0;
|
|
}
|
|
|
|
/* --- notification "dot" */
|
|
.warning-count {
|
|
background-color: var(--color-danger);
|
|
border-radius: 0;
|
|
font-size: 1rem;
|
|
border: var(--border-width) solid var(--color-background);
|
|
}
|
|
|
|
#top-warning-count {
|
|
top: calc(var(--gap) * 1.05);
|
|
right: calc(var(--gap) * 3);
|
|
left: auto;
|
|
}
|
|
|
|
.sidebar-menu .warning-count {
|
|
height: auto;
|
|
margin: 0;
|
|
top: 0;
|
|
bottom: 0;
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
border-block: 0;
|
|
}
|
|
|
|
.sidebar-menu .treeview-menu li > a > .warning-count {
|
|
right: calc(var(--gap) * 2.5 - var(--border-width));
|
|
top: 0;
|
|
margin: 0;
|
|
}
|
|
|
|
/* DATEPICKER
|
|
========================================================== */
|
|
|
|
.daterangepicker {
|
|
background-color: var(--color-background);
|
|
padding: calc(var(--gap) * 1.5) var(--gap);
|
|
border: var(--border-width) solid var(--color-primary);
|
|
border-right: 0;
|
|
border-left-width: var(--border-panel-width);
|
|
border-radius: var(--radius100) 0 0 var(--radius100);
|
|
box-shadow: 0 0 0 100vmax rgb(0 0 0 / 80%);
|
|
}
|
|
|
|
.daterangepicker[style*="display: block"] {
|
|
display: flex !important;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
max-width: calc(var(--gap) * 60);
|
|
translate: 0 calc(var(--gap) * -3.5);
|
|
}
|
|
|
|
@media (min-width: 992px) {
|
|
.daterangepicker[style*="display: block"] {
|
|
flex-direction: row;
|
|
flex-wrap: wrap;
|
|
align-items: flex-start;
|
|
padding-block: calc(var(--gap) * 2.5);
|
|
padding-right: 0;
|
|
}
|
|
}
|
|
|
|
.daterangepicker.openscenter::before,
|
|
.daterangepicker.openscenter::after {
|
|
display: none;
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
.daterangepicker.openscenter::after {
|
|
display: block;
|
|
position: absolute;
|
|
inset: 0 auto 0 calc(var(--gap) * -1);
|
|
width: var(--gap);
|
|
border: 0;
|
|
background: var(--color-background);
|
|
border-radius: var(--radius50) 0 0 var(--radius50);
|
|
}
|
|
|
|
.daterangepicker.openscenter::before {
|
|
content: "DTPCKR_36525";
|
|
border: calc(var(--border-width) * 2) solid var(--color-background);
|
|
inset: 10% auto 10% calc(var(--border-panel-width) * -1);
|
|
width: calc(var(--border-panel-width) - var(--gap));
|
|
background-color: var(--color-quinternary);
|
|
border-inline: 0;
|
|
text-transform: uppercase;
|
|
font-size: 1rem;
|
|
color: var(--color-text-dark);
|
|
padding: var(--gap25) var(--gap25);
|
|
text-align: right;
|
|
display: flex;
|
|
align-items: flex-end;
|
|
justify-content: flex-end;
|
|
}
|
|
}
|
|
|
|
.daterangepicker .ranges {
|
|
min-width: calc(var(--gap) * 13);
|
|
}
|
|
|
|
@media (min-width: 992px) {
|
|
.daterangepicker .ranges {
|
|
flex: 0 0 20%;
|
|
padding-right: var(--gap);
|
|
min-width: calc(var(--gap) * 10);
|
|
}
|
|
}
|
|
|
|
.daterangepicker .ranges ul {
|
|
width: auto;
|
|
}
|
|
|
|
.daterangepicker .ranges li {
|
|
font-size: 1.5rem;
|
|
padding: calc(var(--gap) / 2) var(--gap);
|
|
text-transform: uppercase;
|
|
position: relative;
|
|
}
|
|
|
|
.daterangepicker .ranges li:hover {
|
|
background-color: transparent;
|
|
color: var(--color-link);
|
|
}
|
|
|
|
.daterangepicker .ranges li.active {
|
|
border-radius: var(--radius100);
|
|
background-color: var(--color-link);
|
|
color: var(--color-text-dark);
|
|
}
|
|
|
|
.daterangepicker .ranges li:before {
|
|
background-color: rgb(0 0 0 / 40%);
|
|
width: calc(var(--gap) * 2);
|
|
content: "";
|
|
position: absolute;
|
|
inset: 0 0 0 auto;
|
|
opacity: 0;
|
|
transition: opacity var(--transition);
|
|
border-left: calc(var(--border-width) * 2) solid var(--color-background);
|
|
}
|
|
|
|
.daterangepicker .ranges li.active:before {
|
|
opacity: 1;
|
|
}
|
|
|
|
.daterangepicker.show-ranges.ltr .drp-calendar {
|
|
--_dtpckr-border: var(--border-width) solid var(--color-primary);
|
|
border: var(--_dtpckr-border);
|
|
margin-left: calc(var(--gap) * -1);
|
|
padding: var(--gap) var(--gap50) var(--gap50) var(--gap50);
|
|
}
|
|
|
|
.daterangepicker.show-ranges.ltr .drp-calendar.left::after,
|
|
.daterangepicker.show-ranges.ltr .drp-calendar.right::after {
|
|
display: none;
|
|
content: "MTH-PNL_31";
|
|
text-transform: uppercase;
|
|
color: var(--color-secondary);
|
|
position: absolute;
|
|
inset: 0 var(--gap25) auto auto;
|
|
font-size: 1rem;
|
|
}
|
|
|
|
@media (max-width: 991px) {
|
|
.daterangepicker.show-ranges.ltr .drp-calendar.left {
|
|
border-bottom: 0;
|
|
border-left: var(--_dtpckr-border); /* rewrite for datepicker.min.css */
|
|
border-radius: var(--radius50) var(--radius50) 0 0;
|
|
position: relative;
|
|
margin-top: var(--gap);
|
|
}
|
|
|
|
.daterangepicker.show-ranges.ltr .drp-calendar.left::after {
|
|
display: block;
|
|
}
|
|
|
|
.daterangepicker.show-ranges.ltr .drp-calendar.right {
|
|
border-top: 0;
|
|
border-radius: 0 0 var(--radius50) var(--radius50);
|
|
}
|
|
}
|
|
|
|
@media (min-width: 992px) {
|
|
.daterangepicker.show-ranges.ltr .drp-calendar.left,
|
|
.daterangepicker.show-ranges.ltr .drp-calendar.right {
|
|
flex: 1 0 40%;
|
|
margin-left: 0;
|
|
position: relative;
|
|
max-width: none;
|
|
margin-top: var(--gap);
|
|
padding-top: calc(var(--gap) * 1.5);
|
|
padding-bottom: var(--gap);
|
|
}
|
|
|
|
.daterangepicker.show-ranges.ltr .drp-calendar.left {
|
|
border-block: var(--_dtpckr-border);
|
|
border-inline: 0;
|
|
}
|
|
|
|
.daterangepicker.show-ranges.ltr .drp-calendar.right {
|
|
border: var(--_dtpckr-border);
|
|
border-left: 0;
|
|
border-radius: 0 vaR(--radius100) var(--radius100) 0;
|
|
}
|
|
|
|
.daterangepicker.show-ranges.ltr .drp-calendar.right::after {
|
|
display: block;
|
|
right: var(--gap75);
|
|
}
|
|
}
|
|
|
|
.daterangepicker .prev.available,
|
|
.daterangepicker .next.available {
|
|
background-color: var(--color-secondary);
|
|
padding: 0;
|
|
}
|
|
|
|
.daterangepicker .prev.available {
|
|
border-radius: var(--radius100) 0 0 0;
|
|
}
|
|
|
|
.daterangepicker .next.available {
|
|
border-radius: 0 var(--radius100) 0 0;
|
|
}
|
|
|
|
/* --- "arrows" */
|
|
.daterangepicker .prev.available span,
|
|
.daterangepicker .next.available span {
|
|
padding: 0;
|
|
border: 6px solid transparent;
|
|
transform: rotate(0);
|
|
}
|
|
|
|
.daterangepicker .prev.available span {
|
|
border-right-color: var(--color-background);
|
|
translate: -3px 0;
|
|
}
|
|
|
|
.daterangepicker .next.available span {
|
|
border-left-color: var(--color-background);
|
|
translate: 3px 0;
|
|
}
|
|
|
|
.daterangepicker .calendar-table td,
|
|
.daterangepicker .calendar-table th {
|
|
border-radius: 0;
|
|
}
|
|
|
|
@media (min-width: 992px) {
|
|
.daterangepicker .calendar-table td,
|
|
.daterangepicker .calendar-table th {
|
|
min-width: var(--gap);
|
|
width: var(--gap);
|
|
font-size: 1.5rem;
|
|
border: 0;
|
|
}
|
|
}
|
|
|
|
.daterangepicker th.month {
|
|
padding: 0;
|
|
}
|
|
|
|
.daterangepicker.show-ranges .left tr:first-child th.month + th,
|
|
.daterangepicker.show-ranges .right tr:first-child th:first-child {
|
|
padding-block: 0;
|
|
background: var(--color-supplement-02);
|
|
border-radius: 0 var(--radius100) 0 0;
|
|
}
|
|
|
|
.daterangepicker.show-ranges .right tr:first-child th:first-child {
|
|
border-radius: var(--radius100) 0 0 0;
|
|
}
|
|
|
|
.daterangepicker .drp-calendar tr:nth-child(2) th {
|
|
background-color: var(--color-disabled);
|
|
text-transform: uppercase;
|
|
}
|
|
|
|
.daterangepicker .calendar-table {
|
|
background-color: transparent;
|
|
border: 0;
|
|
}
|
|
|
|
.daterangepicker .calendar-table table {
|
|
border-spacing: calc(var(--gap) / 8);
|
|
border-collapse: separate;
|
|
}
|
|
|
|
.daterangepicker .left .calendar-time {
|
|
position: relative;
|
|
}
|
|
|
|
@media (min-width: 576px) {
|
|
.daterangepicker .calendar-table table {
|
|
border-spacing: calc(var(--gap) / 4);
|
|
}
|
|
}
|
|
|
|
.daterangepicker .drp-buttons {
|
|
border-top: 0;
|
|
}
|
|
|
|
.daterangepicker.show-calendar .drp-buttons {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
flex-direction: column;
|
|
gap: var(--gap);
|
|
}
|
|
|
|
@media (min-width: 992px) {
|
|
.daterangepicker .drp-buttons {
|
|
margin-left: 20%;
|
|
padding-bottom: var(--gap);
|
|
flex-grow: 1;
|
|
position: relative;
|
|
}
|
|
|
|
.daterangepicker.show-calendar .drp-buttons {
|
|
flex-direction: row;
|
|
align-items: stretch;
|
|
}
|
|
}
|
|
|
|
.daterangepicker .drp-buttons .btn {
|
|
padding: var(--gap) var(--gap) var(--gap50) var(--gap);
|
|
margin-left: 0;
|
|
}
|
|
|
|
.daterangepicker .drp-selected {
|
|
font-size: 1.6rem;
|
|
line-height: 1.5;
|
|
color: var(--color-danger-bright);
|
|
}
|
|
|
|
@media (max-width: 991px) {
|
|
.daterangepicker .drp-selected {
|
|
padding-right: 0;
|
|
text-align: center;
|
|
}
|
|
}
|
|
|
|
@media (min-width: 992px) {
|
|
.daterangepicker .drp-selected {
|
|
flex-grow: 1;
|
|
display: inline-flex;
|
|
align-items: center;
|
|
justify-content: flex-end;
|
|
}
|
|
}
|
|
|
|
.daterangepicker select.yearselect,
|
|
.daterangepicker select.monthselect,
|
|
.daterangepicker select.hourselect,
|
|
.daterangepicker select.minuteselect {
|
|
font-size: 1.5rem;
|
|
padding: var(--gap25) var(--gap50);
|
|
min-width: calc(var(--gap) * 4.5);
|
|
}
|
|
|
|
.daterangepicker td {
|
|
transition: background-color var(--transition);
|
|
}
|
|
|
|
.daterangepicker td.off,
|
|
.daterangepicker td.off.end-date,
|
|
.daterangepicker td.off.in-range,
|
|
.daterangepicker td.off.start-date {
|
|
background-color: var(--color-supplement-02);
|
|
}
|
|
|
|
.daterangepicker td.active,
|
|
.daterangepicker td.active:hover,
|
|
.daterangepicker td.active.end-date {
|
|
background-color: var(--color-danger-bright);
|
|
color: var(--color-text-dark);
|
|
}
|
|
|
|
.daterangepicker td.active {
|
|
border-radius: var(--radius100) 0 0 var(--radius100);
|
|
}
|
|
|
|
.daterangepicker td.active.end-date {
|
|
border-radius: 0 var(--radius100) var(--radius100) 0;
|
|
}
|
|
|
|
.daterangepicker td.in-range {
|
|
background-color: var(--color-danger);
|
|
}
|
|
|
|
.daterangepicker td.available:hover,
|
|
.daterangepicker th.available:hover {
|
|
background-color: var(--color-primary);
|
|
color: var(--color-text-dark);
|
|
}
|
|
|
|
/* DOMAIN MANAGEMENT
|
|
========================================================== */
|
|
|
|
#add-group .nav-tabs-custom + div {
|
|
border-top: calc(var(--border-width) * 2) double var(--color-background);
|
|
background-color: var(--color-disabled);
|
|
padding: var(--gap) var(--gap) var(--gap) var(--gap);
|
|
margin-top: var(--gap);
|
|
}
|
|
|
|
#add-group .nav-tabs-custom + div strong {
|
|
margin-bottom: var(--gap);
|
|
color: var(--color-tertiary-hover);
|
|
text-transform: uppercase;
|
|
}
|
|
|
|
#add-group .btn-toolbar {
|
|
float: none !important;
|
|
display: flex;
|
|
justify-content: flex-end;
|
|
margin: 0;
|
|
border: 0;
|
|
}
|
|
|
|
#add-group .btn-toolbar #add2black {
|
|
background-color: var(--color-quinternary); /* adjusted color for better readability */
|
|
}
|
|
|
|
#domains-list {
|
|
margin-top: calc(var(--gap) * 2);
|
|
}
|
|
|
|
.filter_types span {
|
|
width: auto;
|
|
min-width: calc(var(--gap) * 7.5);
|
|
}
|
|
|
|
/* MODAL (currently only "custom disable timeout"?)
|
|
========================================================== */
|
|
|
|
div.modal {
|
|
background-color: rgba(0, 0, 0, 0.6);
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
div.modal-sm {
|
|
width: 100%;
|
|
max-width: calc(var(--gap) * 30);
|
|
}
|
|
}
|
|
|
|
div.modal-content {
|
|
--_modal-border-color: var(--color-primary); /* ready for variants */
|
|
display: flex;
|
|
flex-direction: column;
|
|
padding: calc(var(--gap) * 1.5) calc(var(--gap) * 1.5) var(--gap) var(--gap50);
|
|
border-radius: var(--radius100) var(--radius100) var(--radius100) 0;
|
|
background-color: var(--color-background);
|
|
border: var(--border-width) solid var(--_modal-border-color);
|
|
border-width: calc(var(--border-width) * 2) calc(var(--border-width) * 2)
|
|
calc(var(--border-width) * 28) calc(var(--border-width) * 14);
|
|
}
|
|
|
|
div.modal-content > div {
|
|
z-index: 1;
|
|
}
|
|
|
|
/* --- fake corners + horizontal lines */
|
|
div.modal-content::before,
|
|
div.modal-content::after {
|
|
content: "";
|
|
position: absolute;
|
|
z-index: 0;
|
|
}
|
|
|
|
div.modal-content::before {
|
|
background-color: var(--color-background);
|
|
inset: 0 0 calc(var(--gap) * -1) calc(var(--gap) * -1);
|
|
border-radius: var(--radius75) var(--radius75) var(--radius75) 0;
|
|
}
|
|
|
|
div.modal-content::after {
|
|
inset: calc(var(--gap) * 3) calc(var(--gap) * -0.25) 0 calc(var(--gap) * -1.75);
|
|
border-block: calc(var(--border-width) * 2) solid var(--color-background);
|
|
}
|
|
|
|
div.modal-header {
|
|
padding: 0;
|
|
border: 0;
|
|
color: var(--color-danger-bright);
|
|
font-size: 2.25rem;
|
|
font-weight: var(--font-regular);
|
|
position: relative;
|
|
}
|
|
|
|
/* --- top lcars line */
|
|
div.modal-header::before {
|
|
content: "";
|
|
position: absolute;
|
|
background-color: var(--color-quinternary);
|
|
inset: calc(var(--gap) * -2) calc(var(--gap) * 5) auto 0;
|
|
border: calc(var(--border-width) * 2) solid var(--color-background);
|
|
display: block;
|
|
height: var(--gap75);
|
|
}
|
|
|
|
div.modal-title {
|
|
border-top: calc(var(--border-width) * 2) solid var(--color-primary);
|
|
}
|
|
|
|
/* --- close button */
|
|
div.modal-header .close {
|
|
margin-top: 0;
|
|
width: calc(var(--gap) * 4);
|
|
height: calc(var(--gap) * 2);
|
|
opacity: 1;
|
|
border: var(--border-width) solid var(--_modal-border-color);
|
|
border-top: 0;
|
|
border-right: 0;
|
|
border-radius: 0 0 0 var(--radius75);
|
|
color: var(--color-danger);
|
|
font-size: 1.25rem;
|
|
text-shadow: none;
|
|
transition: color var(--transition-fast);
|
|
position: absolute;
|
|
inset: calc(var(--gap) * -1.5) calc(var(--gap) * -1.5) auto auto;
|
|
}
|
|
|
|
div.modal-header .close:hover {
|
|
color: #fff;
|
|
}
|
|
|
|
div.modal-header .close::before {
|
|
content: attr(aria-label);
|
|
text-transform: uppercase;
|
|
}
|
|
|
|
div.modal-header .close span {
|
|
display: none;
|
|
}
|
|
|
|
div.modal-body {
|
|
padding: 0;
|
|
margin-top: calc(var(--gap) * 2);
|
|
}
|
|
|
|
div.modal-footer {
|
|
border: 0;
|
|
padding: 0;
|
|
margin-top: calc(var(--gap) * 2);
|
|
position: relative;
|
|
}
|
|
|
|
/* --- bottom numbers and pattern */
|
|
div.modal-footer::before,
|
|
div.modal-footer::after {
|
|
display: block;
|
|
position: absolute;
|
|
}
|
|
|
|
div.modal-footer::before {
|
|
background-color: var(--color-background);
|
|
content: "365•24•60";
|
|
inset: auto auto calc(var(--gap) * -4.5) calc(var(--gap) * -2.25);
|
|
font-size: 2.25rem;
|
|
height: calc(var(--gap) * 2.5);
|
|
overflow: hidden;
|
|
color: var(--color-supplement-01);
|
|
padding-left: var(--gap25);
|
|
padding-right: var(--gap50);
|
|
border: calc(var(--border-width) * 2) solid var(--_modal-border-color);
|
|
border-left: 0;
|
|
}
|
|
|
|
div.modal-footer::after {
|
|
content: "╿╿╽╿╿╿╿╿╿╿╿╽╽╿╿╿";
|
|
inset: auto auto calc(var(--gap) * -4) calc(var(--gap) * 4);
|
|
color: var(--color-text-dark);
|
|
font-size: 2rem;
|
|
letter-spacing: calc(var(--gap25) * -1);
|
|
}
|
|
|
|
input[id="customTimeout"] {
|
|
border-radius: var(--radius100) 0 0 var(--radius100);
|
|
}
|
|
|
|
input[id="customTimeout"] + .input-group-btn label.btn-default {
|
|
background-color: var(--color-primary);
|
|
}
|
|
|
|
input[id="customTimeout"] + .input-group-btn label.active {
|
|
outline: 0;
|
|
background-color: var(--color-danger-bright);
|
|
}
|
|
|
|
input[id="customTimeout"] + .input-group-btn label.active:hover {
|
|
background-color: var(--color-danger);
|
|
}
|
|
|
|
/* COLORS FOR GRAPHS, TABLES, ETC.
|
|
========================================================== */
|
|
|
|
.not-used {
|
|
background-color: var(--color-supplement-02);
|
|
}
|
|
|
|
.not-used:hover {
|
|
background-color: var(--color-disabled);
|
|
}
|
|
|
|
.used {
|
|
background-color: #fff;
|
|
}
|
|
|
|
.used:hover {
|
|
background-color: var(--color-tertiary-hover);
|
|
}
|
|
|
|
.graphs-grid {
|
|
background-color: var(--color-supplement-01);
|
|
}
|
|
|
|
.graphs-ticks {
|
|
color: var(--color-tertiary-hover);
|
|
}
|
|
|
|
.progress-bar {
|
|
background-color: var(--color-danger-bright);
|
|
}
|
|
|
|
.queries-permitted {
|
|
background-color: var(--color-success);
|
|
}
|
|
|
|
.queries-blocked {
|
|
background-color: var(--color-danger);
|
|
}
|
|
|
|
/*--- Query Log table */
|
|
.text-black {
|
|
color: var(--color-background) !important;
|
|
}
|
|
|
|
.text-green-light {
|
|
color: var(--color-tertiary-hover) !important;
|
|
}
|
|
|
|
.text-green {
|
|
color: var(--color-success) !important;
|
|
}
|
|
|
|
.text-orange {
|
|
color: var(--color-danger) !important;
|
|
}
|
|
|
|
.text-red {
|
|
color: var(--color-red-alert) !important;
|
|
}
|
|
|
|
.text-vivid-blue {
|
|
color: var(--color-quinternary) !important;
|
|
}
|
|
|
|
/*** Network table colors ***/
|
|
.network-never {
|
|
background-color: var(--color-background);
|
|
}
|
|
|
|
.network-recent {
|
|
background-color: var(--color-quaternary);
|
|
}
|
|
|
|
.network-old {
|
|
background-color: var(--color-supplement-01);
|
|
}
|
|
|
|
.network-older {
|
|
background-color: var(--color-disabled);
|
|
}
|
|
|
|
.network-gradient {
|
|
background-image: linear-gradient(
|
|
to right,
|
|
var(--color-quaternary) 0%,
|
|
var(--color-supplement-01) 100%
|
|
);
|
|
}
|
|
|
|
/* TABLES
|
|
========================================================== */
|
|
|
|
.table tr th,
|
|
.table > tbody > tr > th,
|
|
.table > tfoot > tr > th,
|
|
.table > thead > tr > th {
|
|
width: auto !important;
|
|
color: #fff;
|
|
padding: var(--gap50) var(--gap25);
|
|
}
|
|
|
|
.table tr td,
|
|
.table > tbody > tr > td,
|
|
.table > tfoot > tr > td,
|
|
.table > thead > tr > td {
|
|
padding: var(--gap50) var(--gap25);
|
|
font-size: 1.6rem;
|
|
font-weight: var(--font-regular);
|
|
text-transform: none;
|
|
}
|
|
|
|
table.dataTable {
|
|
margin: var(--gap) 0 !important;
|
|
}
|
|
|
|
.table.table-bordered.dataTable > tbody > tr + tr > td {
|
|
border-top: var(--gap25) solid var(--color-text-dark) !important;
|
|
}
|
|
|
|
.table.table-bordered.dataTable > tbody > tr > td {
|
|
vertical-align: middle;
|
|
}
|
|
|
|
table.dataTable thead .sorting::before {
|
|
content: "\25B3";
|
|
position: absolute;
|
|
bottom: var(--gap);
|
|
right: var(--gap50);
|
|
display: block;
|
|
font-family: "Glyphicons Halflings", sans-serif;
|
|
opacity: 0.3;
|
|
font-size: 0.6em;
|
|
}
|
|
|
|
table.dataTable thead .sorting:after,
|
|
table.dataTable thead .sorting_asc:after,
|
|
table.dataTable thead .sorting_desc:after,
|
|
table.dataTable thead .sorting_asc_disabled:after,
|
|
table.dataTable thead .sorting_desc_disabled:after {
|
|
opacity: 0.6;
|
|
}
|
|
|
|
table.dataTable thead .sorting:after {
|
|
opacity: 0.3;
|
|
content: "\25BD";
|
|
font-size: 0.6em;
|
|
}
|
|
|
|
table.dataTable thead .sorting_asc::after {
|
|
content: "\25B2";
|
|
}
|
|
|
|
table.dataTable thead .sorting_desc::after {
|
|
content: "\25BC";
|
|
}
|
|
|
|
table.dataTable thead .sorting_asc_disabled:after,
|
|
table.dataTable thead .sorting_desc_disabled:after {
|
|
color: #eee;
|
|
}
|
|
|
|
.table-responsive {
|
|
border: 0;
|
|
}
|
|
|
|
.table-bordered {
|
|
border: 0;
|
|
margin-bottom: 0;
|
|
margin-top: calc(var(--gap) * 2);
|
|
border-top: var(--border-width) solid var(--color-disabled);
|
|
border-bottom: var(--border-width) solid var(--color-disabled);
|
|
}
|
|
|
|
.table-bordered > thead > tr > th,
|
|
.table-bordered > tfoot > tr > th,
|
|
.table-bordered > tbody > tr > td {
|
|
border: 0;
|
|
}
|
|
|
|
.table-bordered > thead > tr > th,
|
|
.table-bordered > tfoot > tr > th {
|
|
text-transform: uppercase;
|
|
font-weight: var(--font-regular);
|
|
background-color: var(--table-color);
|
|
color: var(--color-text-dark);
|
|
}
|
|
|
|
.table-bordered > thead > tr > th:last-child {
|
|
border-radius: 0 calc(var(--radius100) * 1.25) calc(var(--radius100) * 1.25) 0;
|
|
}
|
|
|
|
.table-bordered > tbody > tr > td {
|
|
text-transform: uppercase;
|
|
font-size: 1.4rem;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.table-bordered:not(#network-entries) > tbody > tr > td:first-child a {
|
|
display: block;
|
|
background-color: var(--color-disabled);
|
|
padding: var(--gap25) var(--gap50) var(--gap25) var(--gap);
|
|
position: relative;
|
|
transition: background-color var(--transition-fast);
|
|
white-space: normal;
|
|
word-break: break-all;
|
|
text-overflow: ellipsis;
|
|
}
|
|
|
|
.table-bordered > tbody > tr > td:first-child a:hover {
|
|
background-color: var(--table-color);
|
|
color: var(--color-tertiary-hover);
|
|
}
|
|
|
|
.table-bordered:not(#network-entries) > tbody > tr > td:first-child a:before,
|
|
.table-bordered:not(#network-entries) > tbody > tr > td:first-child a:after {
|
|
content: "";
|
|
position: absolute;
|
|
inset: calc(var(--border-width) * -4) auto calc(var(--border-width) * -4) calc(var(--gap) * -0.75);
|
|
width: var(--gap50);
|
|
background-color: var(--color-background);
|
|
z-index: 5;
|
|
}
|
|
|
|
.table-bordered:not(#network-entries) > tbody > tr > td:first-child a:after {
|
|
inset: 0 auto 0 calc(var(--gap) * -0.75);
|
|
background-color: var(--table-color);
|
|
}
|
|
|
|
.table-bordered:not(#network-entries) > tbody > tr > td:first-child a:hover:after {
|
|
background-color: var(--color-secondary-hover);
|
|
}
|
|
|
|
.table-bordered > thead > tr > th:last-child,
|
|
.table-bordered > thead > tr > td:last-child,
|
|
.table-bordered > tbody > tr > td:last-child,
|
|
.table-bordered > tfoot > tr > td {
|
|
border: 0;
|
|
}
|
|
|
|
.table-bordered > tfoot > tr > td {
|
|
background-color: var(--color-supplement-02);
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.table-striped > tbody > tr:nth-of-type(odd),
|
|
.table-striped > tbody > tr:nth-of-type(2n + 1) {
|
|
background-color: var(--color-background);
|
|
}
|
|
|
|
.allowed-row td:last-child,
|
|
.blocked-row td:last-child {
|
|
background-color: transparent;
|
|
}
|
|
|
|
.blocked-row td {
|
|
background-color: var(--color-danger);
|
|
color: #fff;
|
|
}
|
|
|
|
.blocked-row td:last-child {
|
|
background-color: transparent;
|
|
}
|
|
|
|
.blocked-row td:nth-child(5) span {
|
|
color: #fff !important;
|
|
position: relative;
|
|
padding-left: calc(var(--gap) * 2.5);
|
|
}
|
|
|
|
.blocked-row td:nth-child(5) span::before {
|
|
content: "⚠";
|
|
position: absolute;
|
|
inset: calc(var(--gap) * -1) auto calc(var(--gap) * -1) 0;
|
|
width: calc(var(--gap) * 2);
|
|
background-color: var(--color-background);
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
line-height: 1;
|
|
font-size: 1.8rem;
|
|
color: var(--color-danger);
|
|
border-left: calc(var(--border-width) * 2) solid var(--color-danger-bright);
|
|
border-right: calc(var(--border-width) * 2) solid var(--color-danger-bright);
|
|
--pulse-font-color-02: var(--color-red-alert);
|
|
--pulse-font-color-01: #fff;
|
|
animation: pulseFont var(--transition-slow) infinite;
|
|
}
|
|
|
|
#all-queries {
|
|
margin-bottom: calc(var(--gap) * 2) !important;
|
|
}
|
|
|
|
#all-queries td:nth-of-type(3) {
|
|
font-family: var(--font-family-mono);
|
|
font-weight: var(--font-light);
|
|
color: var(--color-success);
|
|
text-transform: none;
|
|
}
|
|
|
|
@media (max-width: 660px), (min-width: 767px) and (max-width: 960px) {
|
|
/* --- Group tables */
|
|
#groupsTable thead,
|
|
#clientsTable thead,
|
|
#adlistsTable thead {
|
|
display: none;
|
|
}
|
|
|
|
#groupsTable tr,
|
|
#clientsTable tr,
|
|
#adlistsTable tr {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
padding-block: var(--gap25);
|
|
margin-block: var(--gap50);
|
|
border: var(--border-width) solid var(--color-disabled);
|
|
border-radius: var(--gap50);
|
|
}
|
|
|
|
#groupsTable tr td:nth-child(1),
|
|
#groupsTable tr td:nth-child(3) {
|
|
order: 0;
|
|
flex-grow: 1;
|
|
text-align: right;
|
|
}
|
|
|
|
#groupsTable tr td:nth-child(2) {
|
|
padding-left: var(--gap25);
|
|
width: 100%;
|
|
order: 1;
|
|
}
|
|
|
|
#groupsTable tr td:nth-child(4) {
|
|
width: 100%;
|
|
order: 2;
|
|
}
|
|
|
|
#groupsTable .btn-danger {
|
|
height: calc(var(--gap) * 2.15);
|
|
}
|
|
|
|
#clientsTable .btn-danger {
|
|
height: calc(var(--gap) * 2.3);
|
|
}
|
|
|
|
#clientsTable td:last-child,
|
|
#adlistsTable td:last-child,
|
|
#adlistsTable td:nth-child(5) {
|
|
flex-grow: 1;
|
|
}
|
|
|
|
#adlistsTable td:nth-child(3) {
|
|
width: 100%;
|
|
}
|
|
|
|
#domainsTable td:nth-child(1),
|
|
#domainsTable td:nth-child(2) {
|
|
border-bottom: 0;
|
|
}
|
|
|
|
#domainsTable td:nth-child(2) {
|
|
padding-bottom: var(--gap25);
|
|
}
|
|
|
|
#domainsTable td:nth-last-child(3) {
|
|
text-align: left;
|
|
width: 100%;
|
|
}
|
|
|
|
#domainsTable td:nth-last-child(2) {
|
|
text-align: left;
|
|
}
|
|
|
|
#domainsTable td:last-child {
|
|
width: calc(var(--gap) * 6);
|
|
order: 6;
|
|
padding-bottom: var(--gap25);
|
|
border-bottom: 0;
|
|
margin-bottom: 0;
|
|
flex-grow: 0;
|
|
}
|
|
|
|
#domainsTable tr.selected td.select-checkbox::after,
|
|
#domainsTable tr.selected th.select-checkbox::after {
|
|
transform: translate(0);
|
|
}
|
|
}
|
|
|
|
table.dataTable thead .sorting:after,
|
|
table.dataTable thead .sorting_asc:after,
|
|
table.dataTable thead .sorting_desc:after,
|
|
table.dataTable thead .sorting_asc_disabled:after,
|
|
table.dataTable thead .sorting_desc_disabled:after,
|
|
table.dataTable thead .sorting::before {
|
|
color: var(--color-link);
|
|
}
|
|
|
|
.dataTables_wrapper table.dataTable th {
|
|
color: var(--color-tertiary-hover);
|
|
}
|
|
|
|
table[id="network-entries"] td:first-child a {
|
|
background-color: var(--color-background);
|
|
color: var(--color-success);
|
|
font-family: var(--font-family-mono);
|
|
display: inline-block;
|
|
font-size: 1.2rem;
|
|
padding: var(--gap25) var(--gap50);
|
|
border-radius: var(--radius100);
|
|
line-height: 1.2;
|
|
}
|
|
|
|
table[id="network-entries"] tbody td:first-child a:hover {
|
|
background-color: var(--color-background);
|
|
color: #fff;
|
|
}
|
|
|
|
table[id="network-entries"] td:nth-child(4) a:not(:hover) {
|
|
color: #fff;
|
|
}
|
|
|
|
/* --- progress bar in the dashboard tables (frequency) */
|
|
.progress {
|
|
border: calc(var(--border-width) * 2) solid var(--color-secondary);
|
|
border-bottom: 0;
|
|
padding: var(--gap25);
|
|
background: var(--color-background);
|
|
border-radius: 0;
|
|
margin: var(--gap25) !important;
|
|
flex-grow: 1;
|
|
}
|
|
|
|
.progress-sm {
|
|
height: var(--gap);
|
|
}
|
|
|
|
.progress-sm .progress-bar {
|
|
border-radius: 0;
|
|
background-color: var(--color-secondary-hover);
|
|
}
|
|
|
|
#ad-frequency .progress-bar,
|
|
#client-frequency-blocked .progress-bar {
|
|
background-color: var(--color-danger);
|
|
}
|
|
|
|
#domain-frequency .table-responsive,
|
|
#ad-frequency .table-responsive,
|
|
#client-frequency .table-responsive,
|
|
#client-frequency-blocked .table-responsive {
|
|
overflow: visible;
|
|
}
|
|
|
|
#domain-frequency .table-responsive .table-bordered,
|
|
#ad-frequency .table-responsive .table-bordered,
|
|
#client-frequency .table-responsive .table-bordered,
|
|
#client-frequency-blocked .table-responsive .table-bordered {
|
|
border: 0;
|
|
}
|
|
|
|
@media (min-width: 992px) {
|
|
/* --- fix for tables in TOOLS/AUDIT LOG */
|
|
.page-header + .row:has(#domain-frequency),
|
|
.page-header + .row:has(#client-frequency) {
|
|
flex-wrap: wrap;
|
|
}
|
|
|
|
.page-header + .row #domain-frequency .table-responsive .table-bordered tr td:nth-child(1),
|
|
.page-header + .row #ad-frequency .table-responsive .table-bordered tr td:nth-child(1) {
|
|
width: 70%;
|
|
}
|
|
|
|
.page-header + .row #domain-frequency .table-responsive .table-bordered tr td:nth-child(3),
|
|
.page-header + .row #ad-frequency .table-responsive .table-bordered tr td:nth-child(3) {
|
|
white-space: nowrap;
|
|
}
|
|
}
|
|
|
|
/* --- table "processing..." loader */
|
|
.content div.dataTables_wrapper div.dataTables_processing {
|
|
background-color: var(--color-disabled);
|
|
border-color: var(--color-disabled);
|
|
padding: var(--gap) 0;
|
|
border-radius: var(--radius100);
|
|
}
|
|
|
|
/* --- Table selected rows + checkboxes */
|
|
table.dataTable tbody > tr.selected,
|
|
table.dataTable tbody > tr > .selected,
|
|
table.dataTable tbody > tr:hover {
|
|
background-image: none;
|
|
background-color: var(--color-supplement-02);
|
|
}
|
|
|
|
table.dataTable tbody td.select-checkbox,
|
|
table.dataTable tbody th.select-checkbox {
|
|
min-width: var(--gap);
|
|
}
|
|
|
|
table.dataTable tbody td.select-checkbox + td,
|
|
table.dataTable tbody th.select-checkbox + th {
|
|
padding-left: var(--gap);
|
|
}
|
|
|
|
table.dataTable tbody .dropdown {
|
|
min-width: calc(var(--gap) * 9);
|
|
}
|
|
|
|
table.dataTable tbody .dropdown .btn-default {
|
|
background-color: var(--color-link);
|
|
color: var(--color-text-dark);
|
|
border-radius: calc(var(--radius100) * 1.5) 0 0 calc(var(--radius100) * 1.5);
|
|
}
|
|
|
|
table.dataTable tbody .dropdown .btn-default:hover,
|
|
table.dataTable tbody .dropdown .btn-default:focus-within {
|
|
color: var(--color-text-dark);
|
|
background-color: var(--color-tertiary-hover);
|
|
}
|
|
|
|
table.dataTable .btn-xs {
|
|
padding: calc(var(--gap50) + var(--border-width)) calc(var(--gap) + var(--border-width));
|
|
border-radius: 0 calc(var(--radius100) * 1.5) calc(var(--radius100) * 1.5) 0;
|
|
min-width: calc(var(--gap) * 5);
|
|
}
|
|
|
|
table.dataTable .btn-xs.btn-danger {
|
|
background-color: var(--color-quinternary);
|
|
}
|
|
|
|
.dataTable[id="network-entries"] .btn-xs,
|
|
.dataTable[id="DHCPStaticLeasesTable"] .btn-xs {
|
|
border-radius: calc(var(--radius100) * 1.5);
|
|
}
|
|
|
|
table.table-bordered.dataTable th:last-child,
|
|
table.table-bordered.dataTable td:last-child:not(.dataTables_empty) {
|
|
text-align: right;
|
|
}
|
|
|
|
/* --- "Checkbox" */
|
|
table.dataTable tbody td.select-checkbox::before,
|
|
table.dataTable tbody th.select-checkbox::before,
|
|
table.dataTable tr.selected td.select-checkbox::after,
|
|
table.dataTable tr.selected th.select-checkbox::after {
|
|
height: calc(var(--gap) * 2 + var(--border-width));
|
|
border: 0;
|
|
border-radius: 0;
|
|
cursor: pointer;
|
|
margin: 0;
|
|
top: 50%;
|
|
translate: 0 -50%;
|
|
}
|
|
|
|
table.dataTable tbody td.select-checkbox::before,
|
|
table.dataTable tbody th.select-checkbox::before {
|
|
width: var(--gap);
|
|
background: var(--color-disabled);
|
|
left: var(--gap25);
|
|
}
|
|
|
|
table.dataTable tr.selected td.select-checkbox::after,
|
|
table.dataTable tr.selected th.select-checkbox::after {
|
|
width: calc(var(--gap) / 3);
|
|
background-color: var(--color-success-dark);
|
|
transform: translate(0);
|
|
left: calc(var(--gap) * 1.5);
|
|
}
|
|
|
|
table.dataTable tbody .selected td.select-checkbox::before,
|
|
table.dataTable tbody .selected th.select-checkbox::before {
|
|
background-color: var(--color-success);
|
|
}
|
|
|
|
/* --- Dropdown menu */
|
|
.open > .dropdown-menu {
|
|
overflow: visible !important;
|
|
}
|
|
|
|
.dropdown-menu.open {
|
|
background-color: var(--color-background);
|
|
min-width: calc(var(--gap) * 14);
|
|
padding: calc(var(--gap) * 1.5) var(--gap);
|
|
border: var(--border-width) solid var(--color-secondary);
|
|
border-left-width: var(--border-width-thick);
|
|
border-radius: var(--radius100);
|
|
box-shadow: 0 0 0 100vmax rgb(0 0 0 / 60%);
|
|
}
|
|
|
|
.dropdown-menu.open::before,
|
|
.dropdown-menu.open::after {
|
|
--_horizontal-offset: calc(var(--gap25) - (var(--border-width) / 2));
|
|
width: var(--gap50);
|
|
display: block;
|
|
content: "";
|
|
position: absolute;
|
|
top: 50%;
|
|
}
|
|
|
|
.dropdown-menu.open::before {
|
|
left: 0;
|
|
background-color: var(--color-background);
|
|
transform: translateX(-100%) translateY(-50%);
|
|
border: var(--border-width) solid var(--color-secondary);
|
|
height: 75%;
|
|
}
|
|
|
|
.dropdown-menu.open::after {
|
|
right: var(--_horizontal-offset);
|
|
background: var(--color-secondary);
|
|
transform: translateX(100%) translateY(50%);
|
|
height: 20%;
|
|
}
|
|
|
|
.dropdown-menu.open .dropdown-menu.inner {
|
|
background-color: transparent;
|
|
}
|
|
|
|
.dropdown-menu.open .dropdown-menu li a {
|
|
padding: calc(var(--gap) / 2) var(--gap);
|
|
text-transform: uppercase;
|
|
position: relative;
|
|
border-left: calc(var(--gap) / 2) solid var(--color-background);
|
|
}
|
|
|
|
.dropdown-menu.open .dropdown-menu li a::before {
|
|
background-color: var(--color-primary);
|
|
width: calc(var(--gap) / 4);
|
|
height: 100%;
|
|
content: "";
|
|
position: absolute;
|
|
left: 0;
|
|
top: 0;
|
|
translate: -200% 0;
|
|
opacity: 0;
|
|
transition: opacity var(--transition);
|
|
}
|
|
|
|
.dropdown-menu.open .dropdown-menu li a:hover {
|
|
background-color: transparent;
|
|
color: var(--color-link);
|
|
}
|
|
|
|
.dropdown-menu.open .dropdown-menu li a.selected {
|
|
border-radius: 0 calc(var(--gap) * 2) calc(var(--gap) * 2) 0;
|
|
background-color: var(--color-link);
|
|
color: var(--color-text-dark);
|
|
}
|
|
|
|
.dropdown-menu.open .dropdown-menu li a:hover::before,
|
|
.dropdown-menu.open .dropdown-menu li a.selected::before {
|
|
opacity: 1;
|
|
}
|
|
|
|
.bootstrap-select.show-tick .dropdown-menu .selected span.check-mark {
|
|
top: calc(var(--gap) * 0.75);
|
|
right: 0;
|
|
}
|
|
|
|
.bs-actionsbox {
|
|
padding: 0;
|
|
}
|
|
|
|
.bs-actionsbox button.btn:not(.btn-success) {
|
|
background-color: var(--color-secondary);
|
|
color: var(--color-background);
|
|
font-weight: bold;
|
|
}
|
|
|
|
.bs-actionsbox button.btn:hover {
|
|
background-color: var(--color-secondary-hover);
|
|
}
|
|
|
|
.bs-actionsbox > button.btn[disabled] {
|
|
background-color: var(--color-disabled);
|
|
pointer-events: none;
|
|
}
|
|
|
|
.dropdown-menu.open .dropdown-menu li a span.text {
|
|
margin-right: 0;
|
|
}
|
|
|
|
.bs-actionsbox .btn-group {
|
|
display: flex;
|
|
flex-wrap: nowrap;
|
|
gap: var(--gap25);
|
|
padding-bottom: var(--gap);
|
|
}
|
|
|
|
/* --- Toggle button */
|
|
.toggle.btn-sm {
|
|
border-radius: 0;
|
|
min-height: calc(var(--gap) * 2 + var(--border-width));
|
|
min-width: calc(var(--gap) * 6) !important;
|
|
}
|
|
|
|
.toggle .toggle-group .btn {
|
|
padding-right: var(--gap);
|
|
border-radius: 0;
|
|
}
|
|
|
|
.toggle .toggle-group .btn.active {
|
|
color: var(--color-danger);
|
|
background-color: var(--color-supplement-01);
|
|
}
|
|
|
|
.toggle .toggle-handle {
|
|
display: none;
|
|
}
|
|
|
|
/* --- Table related buttons (select all, select more, delete) */
|
|
div.dt-buttons {
|
|
margin: var(--gap) 0;
|
|
}
|
|
|
|
.dt-buttons .datatable-bt span {
|
|
font-size: inherit;
|
|
}
|
|
|
|
.dt-buttons .selectAll,
|
|
.dt-buttons .removeAll,
|
|
.dt-buttons .selectMore {
|
|
background-color: var(--color-secondary);
|
|
color: var(--color-text-dark);
|
|
}
|
|
|
|
.dt-buttons .selectAll:hover,
|
|
.dt-buttons .removeAll:hover,
|
|
.dt-buttons .selectMore:hover {
|
|
background-color: var(--color-secondary-hover);
|
|
}
|
|
|
|
.dt-buttons .deleteSelected {
|
|
background-color: var(--color-supplement-01);
|
|
color: #fff;
|
|
}
|
|
|
|
.dt-buttons .deleteSelected:hover {
|
|
background-color: var(--color-danger);
|
|
}
|
|
|
|
/* ALERTS
|
|
========================================================== */
|
|
|
|
div[class*="alert-"][role="alert"] {
|
|
border-radius: var(--radius50);
|
|
color: var(--color-text-dark) !important;
|
|
padding-right: calc(var(--gap) * 4);
|
|
position: relative;
|
|
border: 0;
|
|
}
|
|
|
|
div[class*="alert-"][role="alert"]::before,
|
|
div[class*="alert-"][role="alert"]::after {
|
|
content: "";
|
|
position: absolute;
|
|
}
|
|
|
|
div[class*="alert-"][role="alert"]::before {
|
|
inset: 0 0 0 auto;
|
|
width: calc(var(--gap) * 4);
|
|
background-color: var(--color-background);
|
|
opacity: 0.5;
|
|
}
|
|
|
|
div[class*="alert-"][role="alert"]::after {
|
|
inset: 0 calc(var(--gap) * 4) 0 auto;
|
|
width: var(--border-width);
|
|
background-color: var(--color-background);
|
|
}
|
|
|
|
div[class*="alert-"][role="alert"] button {
|
|
width: calc(var(--gap) * 2);
|
|
height: calc(var(--gap) * 2);
|
|
overflow: hidden;
|
|
position: relative;
|
|
right: calc(var(--gap) * -3);
|
|
font-size: 4rem;
|
|
line-height: 0;
|
|
text-shadow: none;
|
|
opacity: 1;
|
|
}
|
|
|
|
div[class*="alert-"][role="alert"] h4 {
|
|
font-size: 2.25rem;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
/* --- color variants */
|
|
.bg-aqua,
|
|
.callout.callout-info,
|
|
.alert-info,
|
|
.label-info,
|
|
.modal-info .modal-body {
|
|
background-color: var(--color-link) !important;
|
|
}
|
|
|
|
.bg-red,
|
|
.callout.callout-danger,
|
|
.alert-danger,
|
|
.alert-error,
|
|
.label-danger,
|
|
.modal-danger .modal-body {
|
|
background-color: var(--color-danger) !important;
|
|
}
|
|
|
|
.bg-green,
|
|
.callout.callout-success,
|
|
.alert-success,
|
|
.label-success,
|
|
.modal-success .modal-body {
|
|
background-color: var(--color-success) !important;
|
|
}
|
|
|
|
.bg-yellow,
|
|
.callout.callout-warning,
|
|
.alert-warning,
|
|
.label-warning,
|
|
.modal-warning .modal-body {
|
|
background-color: var(--color-supplement-03) !important;
|
|
}
|
|
|
|
/* CODE
|
|
========================================================== */
|
|
|
|
section pre {
|
|
background-color: var(--color-background);
|
|
color: var(--color-success);
|
|
border-color: var(--color-disabled);
|
|
border-radius: var(--radius100);
|
|
min-height: calc(var(--gap) * 6) !important;
|
|
}
|
|
|
|
#output {
|
|
color: var(--color-primary-text);
|
|
}
|
|
|
|
.log-red {
|
|
color: var(--color-red-alert);
|
|
}
|
|
|
|
.log-green {
|
|
color: var(--color-success);
|
|
}
|
|
|
|
.log-yellow {
|
|
color: var(--color-supplement-03);
|
|
}
|
|
|
|
.log-blue {
|
|
color: var(--color-link);
|
|
}
|
|
|
|
.log-purple {
|
|
color: var(--color-supplement-04);
|
|
}
|
|
|
|
.log-cyan {
|
|
color: var(--color-tertiary-hover);
|
|
}
|
|
|
|
.log-gray {
|
|
color: var(--color-primary-text);
|
|
}
|
|
|
|
.text-muted {
|
|
color: var(--color-primary);
|
|
}
|
|
|
|
td pre {
|
|
min-height: auto !important;
|
|
}
|
|
|
|
section code {
|
|
background-color: var(--color-disabled);
|
|
color: var(--color-success);
|
|
border-radius: var(--radius75);
|
|
padding-inline: var(--gap75);
|
|
font-family: var(--font-family-mono);
|
|
}
|
|
|
|
/* ANIMATIONS
|
|
========================================================== */
|
|
|
|
@-webkit-keyframes pulseBg {
|
|
0% {
|
|
background-color: var(--pulse-color);
|
|
}
|
|
100% {
|
|
background-color: var(--pulse-color-background);
|
|
}
|
|
}
|
|
|
|
@keyframes pulseBg {
|
|
0% {
|
|
background-color: var(--pulse-color);
|
|
}
|
|
100% {
|
|
background-color: var(--pulse-color-background);
|
|
}
|
|
}
|
|
|
|
@-webkit-keyframes pulseFont {
|
|
0% {
|
|
color: var(--pulse-font-color-01);
|
|
}
|
|
100% {
|
|
color: var(--pulse-font-color-02);
|
|
}
|
|
}
|
|
|
|
@keyframes pulseFont {
|
|
0% {
|
|
color: var(--pulse-font-color-01);
|
|
}
|
|
100% {
|
|
color: var(--pulse-font-color-02);
|
|
}
|
|
}
|
|
|
|
@-webkit-keyframes backgroundPositionAnimation {
|
|
0% {
|
|
background-position: 0 0;
|
|
}
|
|
100% {
|
|
background-position: 0 calc(var(--gap) * -18.125);
|
|
}
|
|
}
|
|
|
|
@keyframes backgroundPositionAnimation {
|
|
0% {
|
|
background-position: 0 0;
|
|
}
|
|
100% {
|
|
background-position: 0 calc(var(--gap) * -18.125);
|
|
}
|
|
}
|
|
|
|
@-webkit-keyframes scannerSlide {
|
|
0%,
|
|
100% {
|
|
translate: 0 0;
|
|
}
|
|
|
|
10% {
|
|
translate: calc(var(--scanner-animation-width) * 8) 0;
|
|
}
|
|
|
|
25% {
|
|
translate: calc(var(--scanner-animation-width) * -24) 0;
|
|
}
|
|
|
|
35% {
|
|
translate: calc(var(--scanner-animation-width) * 12) 0;
|
|
}
|
|
|
|
60% {
|
|
translate: calc(var(--scanner-animation-width) * 6) 0;
|
|
}
|
|
|
|
70% {
|
|
translate: calc(var(--scanner-animation-width) * 12) 0;
|
|
}
|
|
|
|
95% {
|
|
translate: calc(var(--scanner-animation-width) * -24) 0;
|
|
}
|
|
}
|
|
|
|
@keyframes scannerSlide {
|
|
0%,
|
|
100% {
|
|
translate: 0 0;
|
|
}
|
|
|
|
10% {
|
|
translate: calc(var(--scanner-animation-width) * 8) 0;
|
|
}
|
|
|
|
25% {
|
|
translate: calc(var(--scanner-animation-width) * -24) 0;
|
|
}
|
|
|
|
35% {
|
|
translate: calc(var(--scanner-animation-width) * 12) 0;
|
|
}
|
|
|
|
60% {
|
|
translate: calc(var(--scanner-animation-width) * 6) 0;
|
|
}
|
|
|
|
70% {
|
|
translate: calc(var(--scanner-animation-width) * 12) 0;
|
|
}
|
|
|
|
95% {
|
|
translate: calc(var(--scanner-animation-width) * -24) 0;
|
|
}
|
|
}
|
|
|
|
@-webkit-keyframes chartScanner {
|
|
0%,
|
|
100% {
|
|
left: 0;
|
|
}
|
|
50% {
|
|
left: calc(100% - (var(--gap) * 3));
|
|
}
|
|
}
|
|
|
|
@keyframes chartScanner {
|
|
0%,
|
|
100% {
|
|
left: 0;
|
|
}
|
|
50% {
|
|
left: calc(100% - (var(--gap) * 3));
|
|
}
|
|
}
|
|
|
|
@-webkit-keyframes topBoxesScanner {
|
|
0%,
|
|
100% {
|
|
background-size: var(--gap) var(--gap);
|
|
}
|
|
|
|
50% {
|
|
background-size: calc(var(--gap) * 2) var(--gap);
|
|
}
|
|
}
|
|
|
|
@keyframes topBoxesScanner {
|
|
0%,
|
|
100% {
|
|
background-size: var(--gap) var(--gap);
|
|
}
|
|
|
|
50% {
|
|
background-size: calc(var(--gap) * 2) var(--gap);
|
|
}
|
|
}
|
|
|
|
@-webkit-keyframes topSmallScanner {
|
|
0% {
|
|
background-position: 0 0;
|
|
}
|
|
|
|
100% {
|
|
background-position: var(--gap) 0;
|
|
}
|
|
}
|
|
|
|
@keyframes topSmallScanner {
|
|
0% {
|
|
background-position: 0 0;
|
|
}
|
|
|
|
100% {
|
|
background-position: var(--gap) 0;
|
|
}
|
|
}
|
|
|
|
@-webkit-keyframes loginLines {
|
|
0% {
|
|
inset: 40% calc(var(--gap) * 6);
|
|
}
|
|
|
|
100% {
|
|
inset: calc(var(--gap) * 1.35) calc(var(--gap) * 6);
|
|
}
|
|
}
|
|
|
|
@keyframes loginLines {
|
|
0% {
|
|
inset: 40% calc(var(--gap) * 6);
|
|
}
|
|
|
|
100% {
|
|
inset: calc(var(--gap) * 1.35) calc(var(--gap) * 6);
|
|
}
|
|
}
|
|
|
|
@-webkit-keyframes loginPanel {
|
|
0% {
|
|
inset: 40% 0;
|
|
}
|
|
|
|
100% {
|
|
inset: 0;
|
|
}
|
|
}
|
|
|
|
@keyframes loginPanel {
|
|
0% {
|
|
inset: 40% 0;
|
|
}
|
|
|
|
100% {
|
|
inset: 0;
|
|
}
|
|
}
|
|
|
|
@-webkit-keyframes fadeIn {
|
|
0% {
|
|
opacity: 0;
|
|
}
|
|
|
|
100% {
|
|
opacity: 1;
|
|
}
|
|
}
|
|
|
|
@keyframes fadeIn {
|
|
0% {
|
|
opacity: 0;
|
|
}
|
|
|
|
100% {
|
|
opacity: 1;
|
|
}
|
|
}
|
|
|
|
@keyframes runningDots {
|
|
0% {
|
|
content: "■ □ □ □ □ □ □ □ □ □ □";
|
|
}
|
|
10% {
|
|
content: "□ ■ □ □ □ □ □ □ □ □ □";
|
|
}
|
|
20% {
|
|
content: "□ □ ■ □ □ □ □ □ □ □ □";
|
|
}
|
|
30% {
|
|
content: "□ □ □ ■ □ □ □ □ □ □ □";
|
|
}
|
|
40% {
|
|
content: "□ □ □ □ ■ □ □ □ □ □ □";
|
|
}
|
|
50% {
|
|
content: "□ □ □ □ □ ■ □ □ □ □ □";
|
|
}
|
|
60% {
|
|
content: "□ □ □ □ □ □ ■ □ □ □ □";
|
|
}
|
|
70% {
|
|
content: "□ □ □ □ □ □ □ ■ □ □ □";
|
|
}
|
|
80% {
|
|
content: "□ □ □ □ □ □ □ □ ■ □ □";
|
|
}
|
|
90% {
|
|
content: "□ □ □ □ □ □ □ □ □ ■ □";
|
|
}
|
|
100% {
|
|
content: "□ □ □ □ □ □ □ □ □ □ ■";
|
|
}
|
|
}
|
|
|
|
@-webkit-keyframes runningDots {
|
|
0% {
|
|
content: "■ □ □ □ □ □ □ □ □ □ □";
|
|
}
|
|
10% {
|
|
content: "□ ■ □ □ □ □ □ □ □ □ □";
|
|
}
|
|
20% {
|
|
content: "□ □ ■ □ □ □ □ □ □ □ □";
|
|
}
|
|
30% {
|
|
content: "□ □ □ ■ □ □ □ □ □ □ □";
|
|
}
|
|
40% {
|
|
content: "□ □ □ □ ■ □ □ □ □ □ □";
|
|
}
|
|
50% {
|
|
content: "□ □ □ □ □ ■ □ □ □ □ □";
|
|
}
|
|
60% {
|
|
content: "□ □ □ □ □ □ ■ □ □ □ □";
|
|
}
|
|
70% {
|
|
content: "□ □ □ □ □ □ □ ■ □ □ □";
|
|
}
|
|
80% {
|
|
content: "□ □ □ □ □ □ □ □ ■ □ □";
|
|
}
|
|
90% {
|
|
content: "□ □ □ □ □ □ □ □ □ ■ □";
|
|
}
|
|
100% {
|
|
content: "□ □ □ □ □ □ □ □ □ □ ■";
|
|
}
|
|
}
|