main > div:has(> aside + dialog + section) > aside > div > label:has(input[name="FiltersPanel"]):before {
	content: "\F062E"; /* mdi-tune */
}

details > div {
    font-weight: bold;
}

/* Weight */
details:has(input[name="weightInputMin"]) > div {
    display: flex;
    flex-direction: column;
    position: relative;
	outline: 1px solid transparent;
}

details:has(input[name="weightInputMin"]) > div > div:first-child {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: .25em;
}

details:has(input[name="weightInputMin"]) > div > div:first-child > div {
    width: 4.75em;
}

details:has(input[name="weightInputMin"]) > div > div:first-child > span {
    padding: var(--smallSpacing);
}

details:has(input[name="weightInputMin"]) > div > div:first-child > div:first-of-type > input[inputmode="decimal"],
details:has(input[name="dimensionsInputMinLength"]) > div > div:nth-of-type(odd) > input[inputmode="decimal"] {
    border-radius: var(--borderRadius) 0 0 var(--borderRadius);
}

details:has(input[name="weightInputMin"]) > div > div:first-child > div:last-of-type > input[inputmode="decimal"],
details:has(input[name="dimensionsInputMinLength"]) > div > div:nth-of-type(even) > input[inputmode="decimal"] {
    border-radius: 0 var(--borderRadius) var(--borderRadius) 0;
}

form > details div:has(> input[inputmode="decimal"] + label) {
    margin-top: var(--smallSpacing);
}

form > details div:has(> input[inputmode="decimal"] + label) > label {
    top: 0;
    transform: translateY(-50%) scale(0.75);
}

main > div:has(> aside + dialog + section) > aside > div > form details label span {
    font-size: inherit;
}

/* Native dual-range slider */
details:has(input[name="weightInputMin"]) div:has(> input[type="range"]) {
    --weight-range-start: 0%;
    --weight-range-end: 100%;
    position: relative;
    height: 2em;
    margin-block: .25em;
    touch-action: none;
}

details:has(input[name="weightInputMin"]) div:has(> input[type="range"]) > span,
details:has(input[name="weightInputMin"]) div:has(> input[type="range"]) > span > span {
    position: absolute;
    inset: 0;
    border-radius: var(--borderRadius);
}

details:has(input[name="weightInputMin"]) div:has(> input[type="range"]) > span {
    overflow: hidden;
    outline: 1px solid transparent;
    background: var(--secondaryColor);
}

details:has(input[name="weightInputMin"]) div:has(> input[type="range"]) > span > span {
    left: var(--weight-range-start);
    right: calc(100% - var(--weight-range-end));
    background: #000;
}

details:has(input[name="weightInputMin"]) div:has(> input[type="range"]) input[type="range"] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    appearance: none;
    -webkit-appearance: none;
    background: transparent;
    pointer-events: none;
}

details:has(input[name="weightInputMin"]) div:has(> input[type="range"]) input[type="range"]::-webkit-slider-runnable-track {
    height: 100%;
    background: transparent;
}

details:has(input[name="weightInputMin"]) div:has(> input[type="range"]) input[type="range"]::-moz-range-track {
    height: 100%;
    background: transparent;
}

details:has(input[name="weightInputMin"]) div:has(> input[type="range"]) input[type="range"]::-webkit-slider-thumb {
    width: 1.5em;
    height: 2em;
    border: 1px solid #000;
    border-radius: var(--borderRadius);
    appearance: none;
    -webkit-appearance: none;
    background: var(--secondaryColor);
    cursor: ew-resize;
    pointer-events: auto;
}

details:has(input[name="weightInputMin"]) div:has(> input[type="range"]) input[type="range"]::-moz-range-thumb {
    width: 1.5em;
    height: 2em;
    border: 1px solid #000;
    border-radius: var(--borderRadius);
    background: var(--secondaryColor);
    cursor: ew-resize;
    pointer-events: auto;
}

details:has(input[name="weightInputMin"]) div:has(> input[type="range"]) input[type="range"]:focus-visible::-webkit-slider-thumb {
    outline: 2px solid var(--highlightColor);
    outline-offset: 2px;
}

details:has(input[name="weightInputMin"]) div:has(> input[type="range"]) input[type="range"]:focus-visible::-moz-range-thumb {
    outline: 2px solid var(--highlightColor);
    outline-offset: 2px;
}
