body.pb-shell-page {
    --pb-control-border: #bfe3e9;
    --pb-control-accent: #078b9e;
    --pb-control-hover: #f1fbfc;
    --pb-control-selected: #e5f9fb;
    --pb-control-shadow: 0 12px 36px #103e441a;
}

body.pb-shell-page.pb-shell-page select {
    color-scheme: light;
    font-family: inherit;
    color: #163c44;
    border: 1px solid var(--pb-control-border);
    border-radius: 12px;
    background-color: #fff;
    box-shadow: none;
    accent-color: var(--pb-control-accent);
}

body.pb-shell-page.pb-shell-page select:where(:not([multiple])):where(:not([size]), [size="1"]) {
    -webkit-appearance: none;
    appearance: none;
    min-height: 44px;
    max-width: 100%;
    padding: 11px 38px 11px 14px;
    line-height: 1.45;
    background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='m4 6 4 4 4-4' stroke='%23078b9e' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") right 13px center / 16px 16px no-repeat;
    cursor: pointer;
    transition: border-color .15s, box-shadow .15s;
}

body.pb-shell-page.pb-shell-page select:hover:not(:disabled) {
    border-color: #65c6d2;
}

body.pb-shell-page.pb-shell-page select:focus {
    border-color: #18adbf;
    box-shadow: 0 0 0 3px #0ab5c518;
    outline: none;
}

body.pb-shell-page.pb-shell-page select:focus-visible {
    outline: 2px solid var(--pb-control-accent);
    outline-offset: 2px;
}

body.pb-shell-page.pb-shell-page select:disabled {
    background-color: #f5f9fa;
    color: #6d858b;
    border-color: #d8e7ea;
    opacity: 1;
    cursor: not-allowed;
}

body.pb-shell-page.pb-shell-page select:is([aria-invalid="true"], :user-invalid) {
    border-color: #d65360;
}

body.pb-shell-page.pb-shell-page select option,
body.pb-shell-page.pb-shell-page select optgroup {
    background-color: #fff;
    color: #163c44;
    font-family: inherit;
}

body.pb-shell-page.pb-shell-page select option:disabled,
body.pb-shell-page.pb-shell-page select optgroup:disabled {
    color: #81979b;
}

@supports (appearance: base-select) {
    body.pb-shell-page.pb-shell-page select:where(:not([multiple])):where(:not([size]), [size="1"]),
    body.pb-shell-page.pb-shell-page select:where(:not([multiple])):where(:not([size]), [size="1"])::picker(select) {
        appearance: base-select;
    }

    body.pb-shell-page.pb-shell-page select:where(:not([multiple])):where(:not([size]), [size="1"]) {
        gap: 12px;
        padding-right: 14px;
        background-image: none;
        align-items: center;
    }

    body.pb-shell-page.pb-shell-page select::picker-icon {
        content: "";
        width: 7px;
        height: 7px;
        flex: 0 0 7px;
        margin-left: auto;
        margin-top: -3px;
        border-right: 2px solid var(--pb-control-accent);
        border-bottom: 2px solid var(--pb-control-accent);
        rotate: 45deg;
        transition: rotate .15s;
    }

    body.pb-shell-page.pb-shell-page select:open {
        border-color: #18adbf;
        box-shadow: 0 0 0 3px #0ab5c518;
    }

    body.pb-shell-page.pb-shell-page select:open::picker-icon {
        rotate: 225deg;
        margin-top: 3px;
    }

    body.pb-shell-page.pb-shell-page select:where(:not([multiple])):where(:not([size]), [size="1"])::picker(select) {
        box-sizing: border-box;
        min-width: anchor-size(self-inline);
        max-width: calc(100vw - 24px);
        max-height: min(340px, 48dvh);
        margin-block: 6px;
        padding: 6px;
        border: 1px solid var(--pb-control-border);
        border-radius: 15px;
        background: #fff;
        color: #163c44;
        box-shadow: var(--pb-control-shadow);
        overflow: auto;
        overscroll-behavior: contain;
        scrollbar-width: thin;
        scrollbar-color: #acdfe5 #fff;
        font-family: inherit;
    }

    body.pb-shell-page.pb-shell-page select:where(:not([multiple])):where(:not([size]), [size="1"]) option {
        display: flex;
        align-items: center;
        gap: 10px;
        min-height: 40px;
        padding: 10px 12px;
        border: 0;
        border-radius: 9px;
        font-size: 14px;
        font-weight: 500;
        line-height: 1.4;
        white-space: normal;
        overflow-wrap: anywhere;
        cursor: pointer;
    }

    body.pb-shell-page.pb-shell-page select option::checkmark {
        order: 1;
        margin-left: auto;
        color: var(--pb-control-accent);
    }

    body.pb-shell-page.pb-shell-page select option:where(:hover, :focus) {
        background: var(--pb-control-hover);
        outline: none;
    }

    body.pb-shell-page.pb-shell-page select option:checked {
        background: var(--pb-control-selected);
        color: var(--pb-control-accent);
        font-weight: 650;
    }

    body.pb-shell-page.pb-shell-page select option:disabled {
        color: #81979b;
        background: #fff;
        cursor: not-allowed;
    }

    body.pb-shell-page.pb-shell-page select option[hidden],
    body.pb-shell-page.pb-shell-page select optgroup[hidden] {
        display: none;
    }

    body.pb-shell-page.pb-shell-page select optgroup {
        padding: 6px 0;
        font-size: 12px;
        font-weight: 700;
    }
}

body.pb-shell-page .helium-select-trigger {
    background: #fff;
    border-color: var(--pb-control-border);
    border-radius: 12px;
}

body.pb-shell-page .helium-select-menu {
    background: #fff;
    border-color: var(--pb-control-border);
    border-radius: 15px;
    box-shadow: var(--pb-control-shadow);
    scrollbar-color: #acdfe5 #fff;
}

body.pb-shell-page .helium-select-option:is(:hover, .is-active) {
    background: var(--pb-control-hover);
}

body.pb-shell-page .helium-select-option[aria-selected="true"] {
    background: var(--pb-control-selected);
    color: var(--pb-control-accent);
}

@media (max-width: 700px) {
    body.pb-shell-page.pb-shell-page select {
        font-size: 16px;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.pb-shell-page.pb-shell-page select,
    body.pb-shell-page.pb-shell-page select::picker-icon {
        transition: none;
    }
}

@media (forced-colors: active) {
    body.pb-shell-page.pb-shell-page select,
    body.pb-shell-page.pb-shell-page select::picker(select) {
        border-color: ButtonText;
        background-color: Canvas;
        color: CanvasText;
    }

    body.pb-shell-page.pb-shell-page select option:checked {
        background: Highlight;
        color: HighlightText;
    }
}

/* Load after page styles. WebKit progress is supplied as --pb-range-progress: 0%..100%. */
body.pb-shell-page input[type="range"],
body.pb-shell-page .pb-video-player .pb-vp-controls input[type="range"] {
    --pb-range-fill: #0ca4b5;
    --pb-range-thumb: #0ca4b5;
    --pb-range-track: #fff;
    --pb-range-border: #a5dce3;
    --pb-range-focus: #078a9b;
    --pb-range-track-size: 6px;
    --pb-range-thumb-size: 18px;
    --pb-range-direction: to right;
    --pb-range-fill-progress: var(--pb-range-progress, 0%);
    -webkit-appearance: none;
    appearance: none;
    box-sizing: border-box;
    min-height: 24px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: transparent;
    box-shadow: none;
    color-scheme: light;
    accent-color: var(--pb-range-fill);
    cursor: pointer;
    vertical-align: middle;
}

body.pb-shell-page input[type="range"]:dir(rtl) {
    --pb-range-direction: to left;
}

body.pb-shell-page input[type="range"]::-webkit-slider-runnable-track {
    box-sizing: border-box;
    width: 100%;
    height: var(--pb-range-track-size);
    border: 1px solid var(--pb-range-border);
    border-radius: 999px;
    background: linear-gradient(var(--pb-range-direction), var(--pb-range-fill) 0%, var(--pb-range-fill) var(--pb-range-fill-progress), var(--pb-range-track) var(--pb-range-fill-progress), var(--pb-range-track) 100%);
    box-shadow: none;
}

body.pb-shell-page input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    box-sizing: border-box;
    width: var(--pb-range-thumb-size);
    height: var(--pb-range-thumb-size);
    margin-top: calc((var(--pb-range-track-size) - var(--pb-range-thumb-size)) / 2 - 1px);
    border: 2px solid var(--pb-range-track);
    border-radius: 50%;
    background: var(--pb-range-thumb);
    box-shadow: 0 0 0 1px var(--pb-range-fill);
}

body.pb-shell-page input[type="range"]::-moz-range-track {
    box-sizing: border-box;
    width: 100%;
    height: var(--pb-range-track-size);
    border: 1px solid var(--pb-range-border);
    border-radius: 999px;
    background: var(--pb-range-track);
    box-shadow: none;
}

body.pb-shell-page input[type="range"]::-moz-range-progress {
    box-sizing: border-box;
    height: var(--pb-range-track-size);
    border: 1px solid var(--pb-range-fill);
    border-radius: 999px;
    background: var(--pb-range-fill);
}

body.pb-shell-page input[type="range"]::-moz-range-thumb {
    box-sizing: border-box;
    width: var(--pb-range-thumb-size);
    height: var(--pb-range-thumb-size);
    border: 2px solid var(--pb-range-track);
    border-radius: 50%;
    background: var(--pb-range-thumb);
    box-shadow: 0 0 0 1px var(--pb-range-fill);
}

body.pb-shell-page input[type="range"]:focus-visible {
    outline: 3px solid var(--pb-range-focus);
    outline-offset: 4px;
}

body.pb-shell-page input[type="range"]:disabled,
body.pb-shell-page .pb-video-player .pb-vp-controls input[type="range"]:disabled {
    --pb-range-fill: #a2cbd1;
    --pb-range-thumb: #89b8bf;
    --pb-range-border: #d1e5e8;
    opacity: 1;
    cursor: not-allowed;
}

/* Keep the compact player geometry and its existing timeupdate-driven progress. */
body.pb-shell-page .pb-video-player .pb-vp-controls input[type="range"] {
    --pb-range-track-size: 5px;
    --pb-range-thumb-size: 14px;
    height: 5px;
    min-height: 0;
}

body.pb-shell-page .pb-video-player input.pb-vp-seek[type="range"] {
    --pb-range-fill-progress: var(--played, 0%);
}

body.pb-shell-page .plan-slider {
    background: #fff;
}

@media (forced-colors: active) {
    body.pb-shell-page input[type="range"],
    body.pb-shell-page .pb-video-player .pb-vp-controls input[type="range"] {
        --pb-range-fill: Highlight;
        --pb-range-thumb: Highlight;
        --pb-range-track: Canvas;
        --pb-range-border: CanvasText;
        --pb-range-focus: Highlight;
        forced-color-adjust: none;
    }

    body.pb-shell-page input[type="range"]:disabled,
    body.pb-shell-page .pb-video-player .pb-vp-controls input[type="range"]:disabled {
        --pb-range-fill: GrayText;
        --pb-range-thumb: GrayText;
        --pb-range-border: GrayText;
    }
}
