/* dragonfly-chart.css - голубая тема */
.df-container {
    max-width: 1200px;
    margin: 20px auto;
    background: #f0f7fc;
    border-radius: 28px;
    padding: 20px 24px;
    box-shadow: 0 8px 24px rgba(0, 50, 80, 0.1);
    font-family: system-ui,'Segoe UI',sans-serif;
    border: 1px solid #cde5f2;
}
.df-header {
    border-bottom: 2px solid #b8d8ef;
    margin-bottom: 20px;
    padding-bottom: 12px;
}
.df-header h2 {
    margin: 0 0 8px;
    color: #1a5f7a;
    font-size: 1.7rem;
}
.df-header h2 i {
    font-style: italic;
    font-size: 0.85rem;
    color: #3a7ca5;
    font-weight: normal;
}
.df-controls {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    margin-bottom: 20px;
    padding-bottom: 15px;
    border-bottom: 1px solid #cce2f0;
}
.checkbox-group {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}
.checkbox-group label {
    display: flex;
    align-items: center;
    gap: 4px;
    cursor: pointer;
    font-size: 12px;
    color: #1a5f7a;
    background: white;
    padding: 4px 10px;
    border-radius: 20px;
    border: 1px solid #cde5f2;
    transition: all 0.2s;
}
.checkbox-group label:hover {
    background: #e8f4fc;
    border-color: #3a7ca5;
}
.checkbox-group input {
    margin: 0;
    width: 14px;
    height: 14px;
    cursor: pointer;
    accent-color: #3a7ca5;
}
.show-total-label {
    background: #e8f4fc;
    font-weight: bold;
    border-color: #3a7ca5;
}
.df-note {
    margin-top: 20px;
    font-size: 0.75rem;
    color: #4a7c9c;
    text-align: center;
    border-top: 1px solid #cce2f0;
    padding-top: 14px;
}
.df-canvas {
    width: 100%;
    height: 100%;
}