.bc-wrap { font-family: inherit; margin: 1.5rem 0; }

.bc-controls {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
    margin-bottom: 1rem;
}

.bc-filter-group {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.bc-filter-btn {
    font-size: 13px;
    padding: 5px 14px;
    border-radius: 20px;
    border: 1px solid #ccc;
    background: #fff;
    color: #444;
    cursor: pointer;
    transition: background 0.15s, color 0.15s, border-color 0.15s;
}
.bc-filter-btn:hover { background: #f0f0f0; }
.bc-filter-btn.active {
    background: #185FA5;
    color: #fff;
    border-color: #185FA5;
}

.bc-ref-row {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}
.bc-ctrl-label { font-size: 13px; color: #555; font-weight: 500; white-space: nowrap; }
.bc-ref-row select {
    font-size: 13px;
    padding: 5px 10px;
    border: 1px solid #ccc;
    border-radius: 6px;
    background: #fff;
    min-width: 260px;
}

.bc-ref-info {
    font-size: 12px;
    color: #666;
    background: #f7f7f7;
    border-radius: 6px;
    padding: 6px 12px;
    margin-bottom: 10px;
    display: inline-block;
}

.bc-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-bottom: 8px;
    font-size: 12px;
    color: #555;
}
.bc-legend span { display: flex; align-items: center; gap: 5px; }
.bc-legend-dot { width: 10px; height: 10px; border-radius: 2px; flex-shrink: 0; }

.bc-chart-wrap { position: relative; width: 100%; }

@media (max-width: 600px) {
    .bc-ref-row select { min-width: 100%; }
    .bc-filter-btn { font-size: 12px; padding: 4px 10px; }
}

.bc-weapon-select-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 1.5rem;
    flex-wrap: wrap;
}
.bc-weapon-select-wrap select {
    font-size: 14px;
    padding: 7px 12px;
    border: 1px solid #ccc;
    border-radius: 6px;
    background: #fff;
    min-width: 280px;
}
