.battery {
    /* Specific overrides for battery circle inside the grid */
    position: relative;
}

#battery_level {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-color: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    overflow: hidden;
}

#battery_level_fill {
    width: 100%;
    height: 0; /* Dynamic via JS */
    background-color: #9483f5;
    position: absolute;
    bottom: 0;
    left: 0;
    transition: height 0.5s ease-in-out;
}

#battery_level_text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    font-size: 12px;
    font-weight: bold;
    color: #000;
    z-index: 2;
    line-height: 1.2;
}

#battery_icon {
    position: absolute;
    top: -25px; /* Adjust based on circle size */
    left: 0; right: 0; margin: auto;
    width: 30px;
    opacity: 0.8;
}

/* Color states */
.low-charge { background-color: #ff4d4d !important; }
.full-charge { background-color: #28a745 !important; }