.bongovo-ski-history { min-width: 0; max-width: 100%; font-variant-numeric: tabular-nums; }
.cpanel-modules > .card-columns:has(.bongovo-ski-history) { container-type: inline-size; }
.cpanel-modules .module-wrapper:has(.bongovo-ski-history) { grid-column: 1 / -1; min-width: 0; max-width: 100cqw; }
.bongovo-ski-history .ski-filters { display: flex; flex-wrap: wrap; align-items: end; gap: .75rem; }
.ski-filters > div { flex: 1 1 11rem; min-width: 0; }
.ski-filters .form-label { margin-bottom: .35rem; }
.ski-filters .form-select { width: 100%; }
.bongovo-ski-history .ski-history-summary { display: flex; flex-wrap: wrap; gap: 1rem 2rem; }
.ski-history-summary > div { flex: 1 1 10rem; }
.ski-history-summary dt { font-size: .875rem; font-weight: 400; }
.ski-history-summary dd { margin: .25rem 0 0; font-weight: 600; }
.ski-chart svg { display: block; width: 100%; height: auto; max-height: 300px; overflow: visible; }
.ski-grid { stroke: currentColor; opacity: .16; stroke-width: 1; }
.ski-axis { fill: currentColor; font-size: var(--ski-axis-size, 13px); }
.ski-line { fill: none; stroke: var(--ski-color); stroke-width: 2; vector-effect: non-scaling-stroke; }
circle.ski-line { fill: var(--ski-color); stroke: none; }
.ski-comparison { stroke-dasharray: 6 4; opacity: .7; }
circle.ski-comparison { fill: none; stroke: var(--ski-color); stroke-width: 1; }
.ski-color-summit { --ski-color: #2563a6; }
.ski-color-valley { --ski-color: #a64b13; }
.ski-color-minimum { --ski-color: #8d3485; }
.ski-color-maximum { --ski-color: #007b78; }
.ski-color-slopes { --ski-color: #2563a6; }
.ski-color-lifts { --ski-color: #a64b13; }
.ski-color-new { --ski-color: #697315; }
.ski-color-outside { --ski-color: #8d3485; }
[data-bs-theme="dark"] .ski-color-summit, [data-bs-theme="dark"] .ski-color-slopes { --ski-color: #7db7ed; }
[data-bs-theme="dark"] .ski-color-valley, [data-bs-theme="dark"] .ski-color-lifts { --ski-color: #f2ab78; }
[data-bs-theme="dark"] .ski-color-minimum, [data-bs-theme="dark"] .ski-color-outside { --ski-color: #d997d3; }
[data-bs-theme="dark"] .ski-color-maximum { --ski-color: #75cdc4; }
[data-bs-theme="dark"] .ski-color-new { --ski-color: #c7ce79; }
.bongovo-ski-history .text-muted { opacity: 1; }
.bongovo-ski-history .ski-legend { display: flex; flex-wrap: wrap; gap: .4rem 1rem; margin: .5rem 0 0; font-size: .875rem; }
.ski-legend li { display: flex; align-items: baseline; gap: .4rem; }
.ski-key { width: 1.5rem; border-top: 3px solid var(--ski-color); flex: 0 0 1.5rem; }
.ski-key.ski-comparison { border-top-style: dashed; }
.bongovo-ski-history summary { cursor: pointer; font-weight: 600; width: fit-content; }
.bongovo-ski-history summary:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.bongovo-ski-history .ski-data { font-size: .875rem; }
.ski-data td, .ski-data th { vertical-align: top; }
.bongovo-ski-history .table-responsive { max-width: 100%; }
.bongovo-ski-history .ski-focus-values { min-height: 1.5em; font-size: .875rem; }
.bongovo-ski-history .ski-help { cursor: help; text-decoration: underline dotted; text-underline-offset: .2em; }
.bongovo-ski-history .ski-help:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
@media (max-width: 575.98px) {
    .bongovo-ski-history .ski-filters > div, .bongovo-ski-history .ski-filters > button { flex-basis: 100%; width: 100%; }
    .bongovo-ski-history .ski-history-summary { gap: .75rem; }
    .ski-history-summary > div { flex-basis: 100%; }
}
