:root {
    --chart-primary-color: #000;
    --chart-family: Lato, sans-serif;
}
.chart {
    min-height: 500px;
    margin: 0 auto;
}

.chart-display--off {
    display: none;
}
.chart-display {
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--chart-family);
    border: none;
}
.chart-display label {
    text-align: left;
    cursor: pointer;
}
.chart-display span {
    vertical-align: middle;
}
.chart-display label > span {
    position: relative;
    display: flex;
    padding: .15rem .25rem .15rem 1.5rem;
    margin: 0 1.25rem 0 0;
}
.chart-display label span:before {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.chart-display label span:before {
    width: 1.25rem;
    height: 1.25rem;
    left: 0;
    border: 2px solid var(--chart-primary-color);
}
.chart-display label span:after {
    content: '';
    position: absolute;
    left: .35rem;
    top: .45rem;
    width: .5rem;
    height: .8rem;
    border: solid var(--chart-primary-color);
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    opacity: 0;
}
.chart-display-checkbox {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important;
}
.chart-display-checkbox:checked + span:after {
    opacity: 1;
}
.chart-display-checkbox:focus-visible + span {
    box-shadow: 0 0 0 2px var(--chart-primary-color), inset 0 0 0 2px #fff;
}

.chart-text ul {
    padding: 0;
    max-width: 350px;
    margin: 1rem auto 1rem auto;
}

.wp-block-bsa-chart.alignright,
.wp-block-bsa-chart.alignleft {
    float: none !important;
}

.wp-block-bsa-chart.alignright .chart {
    margin-left: auto;
    margin-right: 0;
}

.wp-block-bsa-chart.alignleft .chart {
    margin-right: auto;
    margin-left: 0;
}
