.hm-glow--warning { box-shadow: 0 0 15px rgba(var(--bs-warning-rgb), .06); }
.hm-glow--danger  { box-shadow: 0 0 20px rgba(var(--bs-danger-rgb), .1); }

.hm-dot { width: 10px; height: 10px; border-radius: 50%; flex-shrink: 0; }
.hm-dot--ok      { background: var(--bs-success); box-shadow: 0 0 6px rgba(var(--bs-success-rgb), .4); }
.hm-dot--warning { background: var(--bs-warning); box-shadow: 0 0 6px rgba(var(--bs-warning-rgb), .4); }
.hm-dot--danger  { background: var(--bs-danger);  box-shadow: 0 0 8px rgba(var(--bs-danger-rgb), .5); }

.hm-station-card { cursor: pointer; transition: transform .15s, box-shadow .2s; }

.hm-ring { position: relative; width: 52px; height: 52px; }
.hm-ring__svg { width: 100%; height: 100%; transform: rotate(-90deg); }
.hm-ring__bg { fill: none; stroke: var(--bs-border-color); stroke-width: 3; }
.hm-ring__fill { fill: none; stroke-width: 3; stroke-linecap: round; transition: stroke-dasharray .6s ease; }
.hm-ring__fill--success { stroke: var(--bs-success); }
.hm-ring__fill--warning { stroke: var(--bs-warning); }
.hm-ring__fill--danger  { stroke: var(--bs-danger); }

.hm-ring__label {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.65rem;
}
