dashboard.dashboard.css Maven / Gradle / Ivy
:root {
--nav-bar-initial-width: 720px;
--nav-bar-min-width: 500px;
--nav-bar-max-width: 2500px;
--nav-bar-margin: 30px;
--main-table-vertical: 116px;
--fly-in-sidebar-width: 230px;
--max-right-sheet-width: 3500px;
--min-right-sheet-width: 720px;
--top-right-badges-padding: 8px;
}
html, body {
margin: 0;
padding: 0;
font-size: 14px;
font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
font-weight: 400;
line-height: 1.5;
-webkit-text-size-adjust: 100%;
background-color: var(--background-color);
color: var(--text-color);
overflow-x: hidden;
}
/* bootstrap replacement classes */
.primary-header {
font-size: 32px;
}
.primary-header {
margin-top: 0;
margin-bottom: .5rem;
font-weight: 500;
line-height: 1.2;
}
*, ::after, ::before {
box-sizing: border-box;
}
hr {
margin: 1rem 0;
color: inherit;
background-color: currentColor;
opacity: 0.12;
}
table {
caption-side: bottom;
border-collapse: collapse;
}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
margin-top: 0;
margin-bottom: .5rem;
font-weight: 500;
line-height: 1.2;
}
.badge {
display: inline-block;
padding: .35em .65em;
font-size: .75em;
font-weight: 700;
line-height: 1;
color: var(--text-color-white);
text-align: center;
white-space: nowrap;
vertical-align: baseline;
border-radius: .25rem;
margin-right: 4px;
width: fit-content;
width: -moz-fit-content;
}
.h4, h4 {
font-size: min(1.5rem, calc(1.275rem + .3vw))
}
.h5, h5 {
font-size: 1.25rem;
}
tbody, td, tfoot, th, thead, tr {
border-color: inherit;
border-style: solid;
border-width: 0;
}
th {
text-align: inherit;
text-align: -webkit-match-parent;
}
.navigation-tile.active {
color: var(--text-color-white);
background-color: var(--strong-dark-blue);
border-radius: .25rem;
}
.navigation-tile.active.special-highlighted {
background-color: var(--strong-light-orange);
font-style: normal;
}
a.special-highlighted {
color: var(--strong-light-orange);
font-style: italic;
}
.nav-pills .nav-link {
background: rgba(0, 0, 0, 0) 0 0;
border: 0;
border-radius: .25rem;
}
.nav-link {
display: block;
padding: .5rem 1rem;
text-decoration: none;
transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out;
}
dl, ol, ul {
margin-top: 0;
margin-bottom: 1rem;
}
ol, ul {
padding-left: 2rem;
}
.spinner-grow {
display: inline-block;
width: 2rem;
height: 2rem;
vertical-align: text-bottom;
background-color: currentColor;
border-radius: 50%;
opacity: 0;
-webkit-animation: .75s linear infinite spinner-grow;
animation: .75s linear infinite spinner-grow;
}
@-webkit-keyframes spinner-grow {
0% {
transform: scale(0)
}
50% {
opacity: 1;
transform: none
}
}
@keyframes spinner-grow {
0% {
transform: scale(0)
}
50% {
opacity: 1;
transform: none
}
}
.spinner-grow-sm {
width: 1rem;
height: 1rem
}
@media (prefers-reduced-motion: reduce) {
.spinner-border, .spinner-grow {
-webkit-animation-duration: 1.5s;
animation-duration: 1.5s
}
}
button {
cursor: pointer;
}
.btn {
display: inline-block;
font-weight: 400;
line-height: 1.5;
color: #212529;
text-align: center;
text-decoration: none;
vertical-align: middle;
cursor: pointer;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
background-color: transparent;
border: 1px solid transparent;
padding: .375rem .75rem;
font-size: 1rem;
border-radius: .25rem;
margin-right: 3px;
margin-top: 3px;
transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
.btn-group-sm > .btn, .btn-sm {
padding: .25rem .5rem;
font-size: .875rem;
border-radius: .2rem;
}
.btn-primary {
color: var(--text-color-white);
background-color: var(--strong-dark-blue);
border-color: var(--strong-dark-blue);
}
.btn-primary:hover {
background-color: #0b5ed7;
border-color: #0949a6;
box-shadow: var(--strong-blue) 0 0 0 2px;
}
.btn-secondary {
color: var(--strong-dark);
background-color: var(--pastel-white);
border-color: var(--strong-gray);
}
.ae-dark .btn-secondary {
color: var(--background-color);
background-color: var(--text-color);
}
.btn-secondary:hover {
color: var(--text-color);
background-color: var(--strong-dark-blue);
border-color: var(--strong-dark);
box-shadow: var(--pastel-gray) 0 0 0 2px;
}
.btn-success {
color: var(--text-color-white);
background-color: var(--strong-dark-green);
border-color: var(--strong-dark-green);
}
.btn-success:hover {
background-color: #3c8808;
border-color: #2c6206;
box-shadow: var(--pastel-green) 0 0 0 2px;
}
.btn-danger {
color: var(--text-color-white);
background-color: var(--strong-red);
border-color: var(--strong-red);
}
.btn-danger:hover {
background-color: #b90d0d;
border-color: #a80c0c;
box-shadow: var(--pastel-red) 0 0 0 2px;
}
button, input, optgroup, select, textarea {
margin: 0;
font-family: inherit;
font-size: inherit;
line-height: inherit;
}
code, kbd, pre, samp {
font-family: monospace;
font-size: 1em;
direction: ltr;
unicode-bidi: bidi-override;
color: var(--pastel-red)
}
.monospace {
font-family: monospace;
}
.left-bracket-container {
padding-left: 13px;
margin-top: 10px;
margin-bottom: 10px;
border-left: var(--strong-gray) 3px solid;
border-radius: 4px;
}
/* sliders replacement */
button, input, optgroup, select, textarea {
margin: 0;
font-family: inherit;
font-size: inherit;
line-height: inherit;
}
.form-check {
display: block;
min-height: 1.5rem;
margin-bottom: .125rem;
}
.form-check-input {
width: 1em;
height: 1em;
margin-top: .25em;
vertical-align: top;
background-color: #fff;
background-repeat: no-repeat;
background-position: center;
background-size: contain;
border: 1px solid rgba(0, 0, 0, 0.25);
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
-webkit-print-color-adjust: exact;
color-adjust: exact;
transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out, background-position .15s ease-in-out;
}
.form-check-input:hover, .form-check-input:active {
box-shadow: var(--pastel-gray) 0 0 0 2px;
}
.form-check-input:hover:checked, .form-check-input:active:checked {
box-shadow: var(--strong-blue) 0 0 0 2px;
}
.form-check-input:checked, .form-check-input:checked {
background-color: var(--strong-dark-blue);
}
.form-check .form-check-input {
float: left;
}
.form-check-input[type="checkbox"] {
border-radius: .25em;
}
.form-switch .form-check-input {
width: 2em;
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");
background-position: left center;
border-radius: 2em;
}
.form-check-input:checked[type="checkbox"] {
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
}
.form-switch .form-check-input:checked {
background-position: right center;
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}
.form-check-label {
padding-left: 8px;
}
.select-input-field {
padding: .25rem .5rem;
margin: 3px 5px 2px 0;
font-size: .875rem;
border-radius: 0.2rem .2rem .2rem 0.2rem;
border: 1px solid var(--pastel-gray);
box-shadow: transparent 0 0 0 0;
transition: box-shadow .15s ease-in-out;
background-color: var(--pastel-white);
}
.ae-dark .select-input-field {
background-color: var(--text-color);
}
.text-input-field {
padding: .25rem .5rem;
margin: 3px 5px 2px 0;
font-size: .875rem;
border-radius: 0.2rem .2rem .2rem 0.2rem;
border: 1px solid var(--pastel-gray);
box-shadow: transparent 0 0 0 0;
transition: box-shadow .15s ease-in-out;
}
.text-input-field:active {
box-shadow: var(--strong-blue) 0 0 0 2px;
}
.alert {
margin-bottom: 8px;
padding: 10px;
border-radius: 5px;
display: flex;
}
.alert-success {
background-color: rgba(var(--strong-dark-green-rgb), 0.2);
border: 1px solid var(--strong-dark-green);
color: var(--background-color-rgb);
}
.alert-danger {
background-color: rgba(var(--pastel-red-rgb), 0.2);
border: 1px solid var(--strong-red);
color: var(--text-color);
}
.alert-warning {
background-color: rgba(var(--pastel-yellow-rgb), 0.2);
border: 1px solid var(--strong-yellow);
color: #443400;
}
.card {
position: relative;
min-width: 0;
word-wrap: break-word;
background-clip: border-box;
border: 1px solid rgba(var(--text-color-rgb), .25);
border-radius: .25rem;
padding: 8px 15px;
}
.card:not(.card-noflex) {
display: flex;
flex-direction: column;
flex: 1 1 auto;
}
.card-margin {
margin-right: 4px;
margin-bottom: 4px;
}
/* that was all for the bootstrap replacement, now our own css */
.card-design {
border-radius: .25rem;
box-shadow: 0 3px 6px rgba(var(--text-color-rgb), 0.16), 0 3px 6px rgba(var(--text-color-rgb), 0.23);
background-color: var(--background-color);
}
.ae-dark .card-design {
box-shadow: 0 0 0 3px rgba(var(--text-color-rgb), 0.16);
}
.card {
background-color: transparent;
}
a {
cursor: pointer;
text-decoration: none;
}
a:not(.preserve-color) {
color: var(--strong-dark-blue);
}
a.preserve-color {
color: inherit;
text-decoration: underline;
}
.content-sheet {
padding: 20px;
height: calc(100vh - var(--main-table-vertical));
position: relative;
}
.navigation-type li {
width: min(100%, 250px);
}
.cvssChart-container.modified {
/*height: 264px;*/
}
.cvssChart-container-container {
display: flex;
flex-direction: row;
justify-content: center;
align-items: center;
gap: 10px;
}
.cpe-timeline-chart-wrapper {
}
.cpe-not-in-vulnerability {
color: var(--pastel-gray);
}
.ae-dark .cpe-not-in-vulnerability {
color: var(--strong-gray);
}
.cpe-missing-data {
color: var(--strong-red);
}
.cpe-wrong-data {
color: var(--strong-red);
}
.cvss2-text {
color: var(--cvss-2);
}
.cvss3-text {
color: var(--cvss-3);
}
.cvss4-text {
color: var(--cvss-4);
}
.badge-navigation {
margin-right: 5px;
padding: 3px 6px;
background-color: #7fbeff2e;
box-shadow: inset 0 0 3px 1px #008aff2b;
border-radius: 4px;
}
.badge-navigation-unmatched {
margin-right: 5px;
padding: 3px 6px;
background-color: #5597ff2e;
box-shadow: inset 0 0 3px 1px #0028ff2b;
border-radius: 4px;
color: #484848cc;
}
.badge {
margin-right: 4px;
width: fit-content;
width: -moz-fit-content;
}
.badge-danger {
background-color: var(--strong-red);
}
.badge-warning {
background-color: var(--strong-dark-orange);
}
.badge-success {
background-color: var(--strong-dark-green);
}
.badge-secondary {
background-color: var(--strong-gray);
}
.badge-void {
background-color: var(--pastel-white);
color: var(--strong-dark);
}
.badge-pastel-gray {
background-color: var(--pastel-gray);
color: var(--strong-dark);
}
.badge-primary {
background-color: var(--strong-dark-blue);
}
.badge-cvss2 {
background-color: var(--cvss-2);
}
.badge-cvss3 {
background-color: var(--cvss-3);
}
.badge-artifact {
background-color: var(--strong-aqua);
}
.badge-underline {
text-decoration: underline;
text-decoration-color: #ffffffbd;
}
.scrollbox {
overflow: scroll;
overflow-x: hidden;
background: /* Shadow covers */ linear-gradient(var(--background-color) 30%, rgba(255, 255, 255, 0)),
linear-gradient(rgba(255, 255, 255, 0), var(--background-color) 70%) 0 100%,
/* Shadows */ radial-gradient(50% 0, farthest-side, rgba(0, 0, 0, .2), rgba(0, 0, 0, 0)),
radial-gradient(50% 100%, farthest-side, rgba(0, 0, 0, .2), rgba(0, 0, 0, 0)) 0 100%;
background: /* Shadow covers */ linear-gradient(var(--background-color) 30%, rgba(255, 255, 255, 0)),
linear-gradient(rgba(255, 255, 255, 0), var(--background-color) 70%) 0 100%,
/* Shadows */ radial-gradient(farthest-side at 50% 0, rgba(0, 0, 0, .2), rgba(0, 0, 0, 0)),
radial-gradient(farthest-side at 50% 100%, rgba(0, 0, 0, .2), rgba(0, 0, 0, 0)) 0 100%;
background-repeat: no-repeat;
background-color: var(--background-color);
background-size: 100% 40px, 100% 40px, 100% 14px, 100% 14px;
/* Opera doesn't support this in the shorthand */
background-attachment: local, local, scroll, scroll;
}
.status-field {
border-left: 3px solid var(--strong-gray);
margin-top: 0;
margin-left: 6px;
padding-left: 6px;
padding-top: 4px;
}
.black-underline {
color: var(--text-color);
text-decoration: underline;
font-weight: 500;
}
.data-sheet-content-card {
border-left: #6d7979 solid 4px;
margin-bottom: 10px;
padding: 10px;
background-color: #9b9b9b1a;
border-radius: 4px;
box-shadow: #0000002b 0 0 4px 0;
transition: all ease 0.1s;
}
.data-sheet-content-card:hover {
box-shadow: 0 0 0 4px #2d2d2d0f;
}
.data-sheet-content-card p:last-of-type {
margin-bottom: 0;
}
.data-sheet-content-card ul:last-of-type {
margin-bottom: 0;
}
.data-sheet-content-card.red {
border-left-color: var(--strong-red);
background-color: #c4747433;
}
.data-sheet-content-card.green {
border-left-color: var(--strong-dark-green);
background-color: #58aa3a29;
}
.data-sheet-content-card.light-gray {
border-left-color: var(--pastel-gray);
background-color: #a6a6a60f;
}
.data-sheet-content-card.gray {
border-left-color: var(--strong-gray);
}
.data-sheet-content-card.pastel-blue {
border-left-color: var(--pastel-blue);
background-color: rgba(86, 162, 162, 0.1);
}
/* tooltips */
#tooltip {
position: absolute;
z-index: 10;
min-width: 100px;
max-width: 600px;
width: fit-content;
width: -moz-fit-content;
background-color: rgba(0, 0, 0, 0.82);
color: var(--text-color-white);
text-align: center;
border-radius: 6px;
padding: 5px;
}
#tooltip code {
color: var(--pastel-red);
}
#tooltip hr {
margin-bottom: 3px;
}
#tooltip h1 {
font-size: 12px;
margin-top: 2px;
margin-bottom: 2px;
}
.tooltip-reveal {
border-bottom: 1px dotted black;
width: fit-content;
width: -moz-fit-content;
}
.navigation-table-container {
align-content: flex-start;
align-items: flex-start;
display: flex;
margin-right: 30px;
padding: 20px !important;
max-width: calc(var(--nav-bar-max-width) - var(--nav-bar-margin));
min-width: var(--nav-bar-min-width);
width: var(--nav-bar-initial-width);
height: calc(100vh - var(--main-table-vertical));
overflow-x: scroll;
white-space: nowrap;
}
.navigation-table-container.full-screen {
max-width: calc(100vw - calc(var(--nav-bar-margin) * 2));
width: calc(100vw - calc(var(--nav-bar-margin) * 2));
}
.navigation-header-tile {
padding-left: 7px;
padding-bottom: 10px;
}
.navigation-entry.active {
background-color: rgba(var(--pastel-gray-rgb), 0.15);
box-shadow: 0 0 3px 1px var(--pastel-gray);
border-radius: 5px;
}
.ae-dark .navigation-entry.active {
box-shadow: 0 0 3px 1px var(--strong-gray);
}
#sheet-container {
vertical-align: top;
}
.content-sheet {
width: max(min(calc(100% - 30px), var(--max-right-sheet-width)), var(--min-right-sheet-width));
transition: width ease 0.1s;
}
.slight-text-highlight {
font-weight: 550;
}
.slightBorder td {
border-top: 1px solid #00000012;
}
.ae-dark .slightBorder td {
border-top: 1px solid #ffffff12;
}
/* table designs */
.navigation-table {
width: 100%;
}
.header-table {
float: right;
margin-right: 30px;
margin-bottom: 6px;
margin-top: 6px;
}
.header-table td {
padding-left: 10px;
text-align: left;
}
.cve-scoring-table {
position: absolute;
right: 20px;
top: 20px;
}
.cve-scoring-table th, .cve-scoring-table td {
border: 1px solid #b1b1b1;
text-align: center;
padding: 2px 6px;
}
.basic-table td {
border-top: solid #00000066 1px;
}
.basic-table th, .basic-table td {
padding-right: 6px;
padding-left: 4px;
}
.basic-table td:not(:last-child) {
border-right: solid #0000001f 1px;
}
.basic-table th:not(:last-child) {
border-right: solid #0000001f 1px;
}
.ae-dark .basic-table td {
border-top: solid #ffffff66 1px;
}
.ae-dark .basic-table td:not(:last-child) {
border-right: solid rgba(255, 255, 255, 0.2) 1px;
}
.ae-dark .basic-table th:not(:last-child) {
border-right: solid rgba(255, 255, 255, 0.2) 1px;
}
.eol-icon-container {
display: flex;
align-items: center;
width: 100%;
height: 100%;
gap: 10px;
margin-left: 5px;
}
.data-sheet-content-card td, .data-sheet-content-card th {
border: 1px solid #626262;
padding: 4px;
padding-top: 2px;
padding-bottom: 2px;
}
hr.half-br {
height: 8px;
margin: 0px;
color: transparent;
border: none;
}
hr.half-br-visible {
margin: 9px;
}
/* footers and header */
.bottom-left-badges {
position: absolute;
left: 30px;
bottom: 7px;
}
#top-right-badges {
position: absolute;
right: 30px;
top: 25px;
display: flex;
align-items: center;
gap: 11px;
padding: var(--top-right-badges-padding) var(--top-right-badges-padding) calc(var(--top-right-badges-padding) - 5px);
}
#top-right-badges-overhang {
position: absolute;
right: 30px;
top: calc(25px + var(--top-right-badges-padding) * 2 + 27px + 5px); /* base offset + padding + icon height + self offset */
display: flex;
align-items: center;
flex-direction: column;
gap: 11px;
padding: var(--top-right-badges-padding) var(--top-right-badges-padding) calc(var(--top-right-badges-padding) - 5px);
}
.go-back-arrow {
cursor: pointer;
}
.primary-header {
margin-top: 0;
margin-bottom: .5rem;
font-weight: 500;
line-height: 1.2;
}
/* The Modal (background) */
.modal {
position: fixed;
top: 0;
left: 0;
z-index: 1060;
display: none;
width: 100%;
height: 100%;
overflow: hidden;
outline: 0;
background-color: rgba(0, 0, 0, 0.4);
padding-top: 100px;
}
/* Modal Content */
.modal-content {
background-color: var(--background-color);
margin: auto;
padding: 20px;
border: 1px solid #888;
position: relative;
display: flex;
flex-direction: column;
width: 100%;
pointer-events: auto;
background-clip: padding-box;
border-radius: .3rem;
outline: 0;
max-height: 90vh;
overflow-y: scroll;
}
.modal-content h2 {
width: fit-content;
width: -moz-fit-content;
}
/* The Close Button */
.modal-close {
color: #aaaaaa;
float: right;
font-size: 28px;
font-weight: bold;
margin-top: -15px;
}
.modal-close:hover,
.modal-close:focus {
color: #000;
text-decoration: none;
cursor: pointer;
}
.open-modal {
position: absolute;
left: 24px;
}
.header-table-sort {
margin-bottom: 3px;
width: fit-content;
width: -moz-fit-content;
}
@media screen and (max-width: 1250px) {
.modal-content-adjust {
width: 80vw;
padding-bottom: 40px;
}
}
@media screen and (min-width: 1250px) {
.modal-content-adjust {
width: fit-content;
width: -moz-fit-content;
padding-bottom: 40px;
}
}
.matching-criteria-badge {
margin-right: 5px;
margin-top: 2px;
display: inline-block;
white-space: nowrap;
}
.matching-criteria-badge > *:first-child {
padding: 2px 4px;
background-color: #2b99ea80;
border-bottom-left-radius: 4px;
border-top-left-radius: 4px;
}
.matching-criteria-badge > *:last-child {
padding: 2px 4px;
/*background-color: #a0e5e850;*/
box-shadow: 0 0 0 2px inset #2b99ea80;
border-bottom-right-radius: 4px;
border-top-right-radius: 4px;
}
.matching-criteria-badge.inapplicable > *:first-child {
background-color: #b7b4a991;
}
.matching-criteria-badge.inapplicable > *:last-child {
/*background-color: #e3dcd250;*/
box-shadow: 0 0 0 2px inset #b7b4a991;
}
/* filter creation */
.filter-creation-column {
display: flex;
flex-direction: column;
padding-right: 20px;
}
/* sidebar */
.fly-in-sidebar {
position: absolute;
top: 95px;
left: calc(calc(var(--fly-in-sidebar-width) * -1) + 20px);
width: var(--fly-in-sidebar-width);
background-color: white;
transition: all 0.4s ease;
padding: 10px 10px 10px 20px;
}
.fly-in-sidebar:hover {
left: -3px;
}
.fly-in-sidebar-text {
padding: 10px 0 10px 10px;
}
.fly-in-sidebar-arrow {
position: absolute;
right: 4px;
top: calc(50% - 13.5px);
opacity: 0.8;
transition: all 0.1s ease;
-webkit-animation: ease-in-out alternate;
-webkit-animation-name: fly-in-arrow-move-left-right;
-webkit-animation-duration: 1.2s;
}
.fly-in-sidebar:hover .fly-in-sidebar-arrow {
opacity: 0.0;
}
@-webkit-keyframes fly-in-arrow-move-left-right {
0% {
right: 4px;
}
50% {
right: -4px;
}
100% {
right: 4px;
}
}
/* adapt to screen size (desktop and mobile) */
@media screen and (max-width: 700px) {
/* mobile */
.primary-header {
font-size: 25px;
}
h1 {
font-size: 25px;
}
h2 {
font-size: 22px;
}
.content-sheet {
width: calc(100vw - 62px);
}
.hidden-on-mobile {
display: none;
}
}
@media screen and (min-width: 700px) {
/* desktop */
.primary-header {
font-size: 32px;
}
h1 {
font-size: 32px;
}
h2 {
font-size: 28px;
}
.hidden-on-desktop {
display: none;
}
}
@media screen and (min-width: 1800px) {
.modal {
padding-top: 100px;
}
.modal-content-normal {
width: 50vw;
}
.modal-content-large {
width: 85vw;
}
}
@media screen and (max-width: 1800px) {
.modal {
padding-top: 50px;
}
.modal-content-normal {
width: 80vw;
}
.modal-content-large {
width: 85vw;
}
}
/* utility classes */
.clickable {
cursor: pointer;
}
.unselectable {
-webkit-user-select: none; /* Safari */
-moz-user-select: none; /* Firefox */
-ms-user-select: none; /* IE10+/Edge */
user-select: none; /* Standard */
}
.hidden {
display: none;
visibility: hidden;
}
.invisible {
opacity: 0;
width: 0;
height: 0;
}
.horizontal-resize {
resize: horizontal;
}
.text-align-start {
text-align: start;
}
.text-align-center {
text-align: center;
}
.text-align-end {
text-align: end;
}
/* make scrollbar macos-like */
*::-webkit-scrollbar {
width: 20px;
scrollbar-width: thin;
}
*::-webkit-scrollbar-thumb {
background-color: #d6dee1;
border-radius: 20px;
border: 6px solid transparent;
background-clip: content-box;
}
*::-webkit-scrollbar-thumb:hover {
background-color: #a8bbbf;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy