.q-chart {
    --chart-series-0: #315c45;
    --chart-series-1: #ac613b;
    --chart-series-2: #526b9a;
    --chart-series-3: #846194;
    --chart-series-4: #557a80;
    --chart-series-5: #a08025;
    --chart-series-6: #9c516c;
    --chart-series-7: #696b56;
    margin: 2rem 0;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
    color: var(--ink, #20211e);
    font-variant-numeric: tabular-nums;
}
.q-chart figcaption > strong { font-size: 1.18em; }
.q-chart figcaption p, .q-chart-note { font-size: .92em; color: var(--ink-soft, #605d56); }
.q-chart .q-chart-controls { display: flex; align-items: end; flex-wrap: wrap; gap: .8rem 1.2rem; margin: 1.2rem 0; }
.q-chart [hidden]:not([hidden="until-found"]) { display: none !important; }
.q-chart [hidden="until-found"] { margin: 0; padding: 0; border: 0; }
.q-chart-controls > label { display: flex; flex-direction: column; gap: .35rem; font-size: .85em; }
.q-chart-controls select { max-width: 100%; min-width: 10rem; padding: .5rem .7rem; border: 1px solid var(--line-strong, #bdb7ab); border-radius: .35rem; background: var(--surface, #fffefa); color: inherit; }
.q-chart-controls > .q-chart-all { flex-direction: row; align-items: center; padding: .55rem 0; }
.q-chart-all input { width: 1.1rem; height: 1.1rem; accent-color: var(--forest, #26352d); }
.q-chart-slice { margin: 1rem 0 1.5rem; }
.q-chart-slice > h3 { margin: .7rem 0; font-size: 1em; font-weight: 650; }
.q-chart-view + .q-chart-view { margin-top: 1.2rem; }
.q-chart-table-scroll, .q-chart-plot-scroll { max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; }
.q-chart .q-chart-table { width: 100%; min-width: 0; table-layout: fixed; border-collapse: collapse; margin: 0; font-size: .86em; }
.q-chart-table caption { text-align: left; color: var(--ink-soft, #605d56); margin: .4rem 0 .8rem; font-size: .92em; }
.q-chart .q-chart-table :is(th, td) { padding: .65rem .7rem; vertical-align: top; background: transparent; border: 0; border-bottom: 1px solid var(--line, #d8d4c9); overflow-wrap: anywhere; }
.q-chart .q-chart-table th:first-child { width: 40%; text-align: left; }
.q-chart-table thead th { text-align: right; font-weight: 650; }
.q-chart-table tbody th { font-weight: 450; }
.q-chart .q-chart-table small { display: block; margin-top: .2rem; color: var(--ink-soft, #605d56); font-weight: 400; font-size: .85em; }
.q-chart-value { text-align: right; }
.q-chart-value > span { font-weight: 600; }
.q-chart-track { position: relative; height: 6px; margin-top: .55rem; background: color-mix(in srgb, var(--ink, #20211e) 6%, transparent); }
.q-chart-track::after { content: ""; position: absolute; left: var(--chart-zero); top: -2px; height: 10px; width: 1px; background: var(--line-strong, #bdb7ab); }
.q-chart-bar { position: absolute; height: 100%; }
.q-chart-swatch { width: .7rem; height: .7rem; display: inline-block; flex-shrink: 0; }
.q-chart-series-label { display: inline-flex; gap: .4rem; align-items: baseline; }
.q-chart-series-0 { background: var(--chart-series-0); }
.q-chart-series-1 { background: var(--chart-series-1); }
.q-chart-series-2 { background: var(--chart-series-2); }
.q-chart-series-3 { background: var(--chart-series-3); }
.q-chart-series-4 { background: var(--chart-series-4); }
.q-chart-series-5 { background: var(--chart-series-5); }
.q-chart-series-6 { background: var(--chart-series-6); }
.q-chart-series-7 { background: var(--chart-series-7); }
.q-chart-legend { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; margin: 1rem 0 .5rem; font-size: .88em; }
.q-chart-legend > span { display: inline-flex; align-items: center; gap: .4rem; }
.q-chart-line { display: block; max-width: none; }
.q-chart-data { margin-top: .4rem; }
.q-chart-data > summary { padding: .5rem 0; font-size: .88em; }
.q-chart-status { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
@media (max-width: 600px) {
    .q-chart .q-chart-table { font-size: .82em; }
    .q-chart .q-chart-table :is(th, td) { padding: .55rem .3rem; }
    .q-chart .q-chart-table th:first-child { width: 38%; }
    .q-chart-controls select { min-width: 0; min-height: 44px; }
    .q-chart-controls > label { max-width: 100%; }
}
@media (prefers-color-scheme: dark) {
    .q-chart { --chart-series-0: #527c5d; --chart-series-1: #b5714e; --chart-series-2: #6882b0; --chart-series-3: #9570a5; }
}
@media print {
    .q-chart [data-chart-controls], .q-chart-status { display: none !important; }
    .q-chart [data-chart-slice][hidden], .q-chart [data-chart-print="true"][hidden] { display: block !important; content-visibility: visible !important; }
    .q-chart [data-chart-print="false"] { display: none !important; }
    .q-chart-data > :not(summary) { display: block !important; content-visibility: visible !important; }
    .q-chart-data::details-content { content-visibility: visible !important; }
    .q-chart-table-scroll, .q-chart-plot-scroll { overflow: visible; }
    .q-chart-line { width: 100%; height: auto; }
    .q-chart thead { display: table-header-group; }
    .q-chart tr { break-inside: avoid; }
    .q-chart-bar { print-color-adjust: exact; }
}
