2025-03-26 08:19:54 +00:00

148 lines
2.4 KiB
Plaintext

@ball-pad: 1/6em;
.ball {
border-radius: 50%;
display: inline-block;
text-align: center;
}
.ball-size-xs {
height: 1/3em;
width: 1/3em;
}
.ball-size-s {
height: 0.5em;
width: 0.5em;
}
.ball-size-m {
height: 0.75em;
width: 0.75em;
line-height: 0;
i.icon:before {
font-size: .75 - @ball-pad * 2;
line-height: 1em;
}
}
.ball-size-ml {
height: 1em;
width: 1em;
line-height: 0;
i.icon {
line-height: 0.3;
&:before {
font-size: 0.8 - @ball-pad * 2;
line-height: 1 - @ball-pad * 2;
}
}
}
.ball-size-l {
height: 1.5em;
width: 1.5em;
line-height: 1em;
i.icon:before {
font-size: 1 - @ball-pad * 2;
line-height: 1.5 - @ball-pad * 2;
}
}
.ball-size-xl {
width: 2em;
height: 2em;
i.icon:before {
line-height: 2 - @ball-pad * 2;
}
}
.ball-outline(@color) {
border: @ball-pad solid @color;
}
.ball-solid(@color) {
background-color: @color;
color: var(--default-text-color-inverted, @default-text-color-inverted);
padding: @ball-pad;
}
.state-ball {
.ball();
&.state-pending:not(.ball-size-l):not(.ball-size-xl) {
.ball-solid(var(--state-pending, @state-pending));
}
&.state-pending.ball-size-l,
&.state-pending.ball-size-xl {
.ball-outline(var(--state-pending, @state-pending));
}
&.state-up:not(.ball-size-l):not(.ball-size-xl) {
.ball-solid(var(--state-up, @state-up));
}
&.state-up.ball-size-l,
&.state-up.ball-size-xl {
.ball-outline(var(--state-up, @state-up));
}
&.state-down {
.ball-solid(var(--state-down, @state-down));
}
&.state-ok:not(.ball-size-l):not(.ball-size-xl) {
.ball-solid(var(--state-ok, @state-ok));
}
&.state-ok.ball-size-l,
&.state-ok.ball-size-xl {
.ball-outline(var(--state-ok, @state-ok));
}
&.state-warning {
.ball-solid(var(--state-warning, @state-warning));
}
&.state-critical {
.ball-solid(var(--state-critical, @state-critical));
}
&.state-unknown {
.ball-solid(var(--state-unknown, @state-unknown));
}
&.handled {
opacity: 0.6;
}
i.icon {
text-align: center;
display: block;
&::before {
margin-right: 0;
}
}
// Specific icon styles
&.ball-size-l i {
&.fa-sitemap:before {
font-size: 8px; // px to ignore browser min font-size
}
}
&.ball-size-xl i {
&.fa-sitemap:before {
font-size: .857em;
line-height: (2 - @ball-pad * 2) / .857;
}
}
}