
/* =========================================================
   DASH 4 YEAR RANGE SLIDER
   ========================================================= */

.custom-slider {
    width: 95%;
    margin: 15px auto 30px;
}

/* =========================================================
   TRACK
   ========================================================= */

/* Full track */
.custom-slider .dash-slider-track {
    height: 6px;
    border-radius: 6px;
    background-color: var(--selection);
}

/* Selected range */
.custom-slider .dash-slider-range {
    background-color: var(--blue);
    border-radius: 6px;
}

/* =========================================================
   HANDLES
   ========================================================= */

.custom-slider .dash-slider-thumb {
    width: 18px;
    height: 18px;

    background-color: var(--blue);
    border: 2px solid var(--bg-primary);
    border-radius: 50%;

    box-shadow: 0 2px 5px var(--shadow-color);

    transition:
        border-color 0.15s ease,
        box-shadow 0.15s ease,
        transform 0.15s ease;
}

/* Hover */
.custom-slider .dash-slider-thumb:hover {
    border-color: var(--cyan);
    box-shadow: 0 0 0 4px color-mix(
        in srgb,
        var(--cyan) 20%,
        transparent
    );
}

/* Active / dragging */
.custom-slider .dash-slider-thumb:active {
    border-color: var(--magenta);
}

/* Keyboard focus */
.custom-slider .dash-slider-thumb:focus-visible {
    outline: 2px solid var(--accent);
    outline-offset: 3px;
}

/* =========================================================
   YEAR LABELS
   ========================================================= */

.custom-slider .dash-slider-mark {
    color: var(--text-primary);
    font-family: "JetBrainsMonoNerdFont", monospace;
    font-size: 11px;
    white-space: nowrap;
}

/* =========================================================
   HIDE SELECTED-VALUE TOOLTIPS
   ========================================================= */

.custom-slider .dash-slider-tooltip {
    display: none !important;
}

/* =========================================================
   MIN / MAX NUMBER INPUTS
   ========================================================= */

.custom-slider input.dash-range-slider-input {
    background-color: var(--bg-secondary);
    color: var(--text-primary);

    border: 1px solid var(--border-color);
    border-radius: 6px;

    font-family: "JetBrainsMonoNerdFont", monospace;
    font-size: 12px;
}

/* Input focus */
.custom-slider input.dash-range-slider-input:focus {
    outline: none;
    border-color: var(--accent);
    box-shadow: none;
}
