/*
 * v2.0.16 compatibility layer.
 * Keeps the v2.0.12 visitor shell while presenting the v2.0.13 language and
 * speech controls. This file intentionally does not replace the base theme.
 */

#bpdac-access-center-root {
    --bpdac-v214-black: #17202a;
    --bpdac-v214-selected: #e6f2f1;
    --bpdac-v214-selected-border: #086c68;
}

#bpdac-access-center-root .bpdac-center-shell {
    grid-template-areas:
        "header"
        "translation"
        "shortcuts"
        "layout"
        "footer";
    grid-template-rows: auto auto auto minmax(0, 1fr) auto;
}

#bpdac-access-center-root .bpdac-center-header { grid-area: header; }
#bpdac-access-center-root .bpdac-page-translation-status { grid-area: translation; }
#bpdac-access-center-root .bpdac-shortcut-dock { grid-area: shortcuts; }
#bpdac-access-center-root .bpdac-center-layout { grid-area: layout; min-height: 0; }
#bpdac-access-center-root .bpdac-center-footer { grid-area: footer; }

/* The v2.0.12 header gains one compact page-language control. */
#bpdac-access-center-root .bpdac-center-header {
    grid-template-columns: auto minmax(0, 1fr) auto auto auto;
}

#bpdac-access-center-root .bpdac-page-language-field {
    display: inline-flex;
    min-width: 0;
}

#bpdac-access-center-root #bpdac-page-language {
    width: 108px;
    min-width: 108px;
    min-height: 38px;
    margin: 0;
    padding: 6px 28px 6px 10px;
    border: 1px solid var(--bpdac-panel-line);
    border-radius: 999px;
    background-color: #fff;
    color: var(--bpdac-v214-black) !important;
    -webkit-text-fill-color: var(--bpdac-v214-black) !important;
    font-size: 12px;
    font-weight: 400 !important;
    line-height: 1.1;
}

#bpdac-access-center-root #bpdac-page-language:hover {
    border-color: #99a5ad;
}

#bpdac-access-center-root .bpdac-page-translation-status {
    min-height: 38px;
    padding: 9px 14px;
    border-bottom: 1px solid var(--bpdac-panel-line);
    background: #f8fafb;
    color: var(--bpdac-v214-black) !important;
    -webkit-text-fill-color: var(--bpdac-v214-black) !important;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.35;
}

#bpdac-access-center-root .bpdac-page-translation-status[hidden] {
    display: none !important;
}

#bpdac-access-center-root .bpdac-page-translation-status[data-bpdac-status="working"] {
    background: #fff8e5;
}

#bpdac-access-center-root .bpdac-page-translation-status[data-bpdac-status="success"] {
    background: #eaf7ef;
}

#bpdac-access-center-root .bpdac-page-translation-status[data-bpdac-status="error"] {
    background: #fff1f0;
    color: #7f1d1d !important;
    -webkit-text-fill-color: #7f1d1d !important;
}

/* Restore the v2.0.12 four-tab presentation explicitly. */
#bpdac-access-center-root .bpdac-center-nav {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

#bpdac-access-center-root .bpdac-center-pane[hidden],
#bpdac-access-center-root .bpdac-center-pane--subview[hidden] {
    display: none !important;
}

/* Tab changes are immediate inside the menu; only page preferences use 0.5 s. */
#bpdac-access-center-root .bpdac-center-pane {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
}

/*
 * Menu copy must never fade to gray. Selected controls use a pale accented
 * surface so their labels and descriptions can also remain black.
 */
#bpdac-access-center-root .bpdac-center-tab,
#bpdac-access-center-root .bpdac-center-tab span,
#bpdac-access-center-root .bpdac-shortcut-master-copy strong,
#bpdac-access-center-root .bpdac-shortcut-master-copy small,
#bpdac-access-center-root .bpdac-shortcut-master-state,
#bpdac-access-center-root .bpdac-pane-intro :is(h3, p),
#bpdac-access-center-root .bpdac-pane-kicker,
#bpdac-access-center-root .bpdac-control-copy :is(strong, small),
#bpdac-access-center-root .bpdac-control-row > div > :is(strong, span),
#bpdac-access-center-root .bpdac-control-row::after,
#bpdac-access-center-root .bpdac-theme-card :is(strong, small),
#bpdac-access-center-root .bpdac-action-card :is(strong, small),
#bpdac-access-center-root .bpdac-marker-card strong,
#bpdac-access-center-root .bpdac-tool-links :is(strong, small, span),
#bpdac-access-center-root .bpdac-position-heading :is(strong, small),
#bpdac-access-center-root .bpdac-speech-mode-card :is(strong, small),
#bpdac-access-center-root .bpdac-speech-voice-field :is(strong, small),
#bpdac-access-center-root .bpdac-speech-status,
#bpdac-access-center-root .bpdac-document-view :is(h3, p, strong, small, span),
#bpdac-access-center-root .bpdac-language-field,
#bpdac-access-center-root select,
#bpdac-access-center-root option {
    color: var(--bpdac-v214-black) !important;
    -webkit-text-fill-color: var(--bpdac-v214-black) !important;
    opacity: 1 !important;
}

#bpdac-access-center-root .bpdac-center-tab.is-current,
#bpdac-access-center-root .bpdac-center-tab.is-current:hover,
#bpdac-access-center-root .bpdac-center-tab.is-current:focus {
    border-color: var(--bpdac-v214-selected-border) !important;
    background: var(--bpdac-v214-selected) !important;
    color: var(--bpdac-v214-black) !important;
    -webkit-text-fill-color: var(--bpdac-v214-black) !important;
    box-shadow: inset 0 0 0 1px var(--bpdac-v214-selected-border) !important;
}

#bpdac-access-center-root .bpdac-center-tab.is-current .bpdac-center-icon {
    color: var(--bpdac-v214-selected-border) !important;
}

#bpdac-access-center-root .bpdac-shortcut-master[aria-pressed="true"],
#bpdac-access-center-root .bpdac-control-row--toggle[aria-pressed="true"],
#bpdac-access-center-root .bpdac-marker-card[aria-pressed="true"] {
    border-color: var(--bpdac-v214-selected-border) !important;
    background: var(--bpdac-v214-selected) !important;
    color: var(--bpdac-v214-black) !important;
    -webkit-text-fill-color: var(--bpdac-v214-black) !important;
}

#bpdac-access-center-root .bpdac-shortcut-master[aria-pressed="true"] :is(strong, small, .bpdac-shortcut-master-state),
#bpdac-access-center-root .bpdac-control-row--toggle[aria-pressed="true"] :is(strong, small),
#bpdac-access-center-root .bpdac-marker-card[aria-pressed="true"] strong {
    color: var(--bpdac-v214-black) !important;
    -webkit-text-fill-color: var(--bpdac-v214-black) !important;
}

#bpdac-access-center-root .bpdac-shortcut-master[aria-pressed="true"] :is(.bpdac-shortcut-master-icon, .bpdac-switch-graphic),
#bpdac-access-center-root .bpdac-control-row--toggle[aria-pressed="true"] .bpdac-control-icon {
    border-color: #9bbab7 !important;
    background: #fff !important;
    color: var(--bpdac-v214-black) !important;
}

#bpdac-access-center-root .bpdac-control-row--toggle[aria-pressed="true"] .bpdac-check-box {
    border-color: var(--bpdac-v214-selected-border) !important;
    background: #fff !important;
    color: var(--bpdac-v214-black) !important;
}

#bpdac-access-center-root .bpdac-choice-bar button[aria-pressed="true"] {
    border-color: var(--bpdac-v214-selected-border) !important;
    background: var(--bpdac-v214-selected) !important;
    color: var(--bpdac-v214-black) !important;
    -webkit-text-fill-color: var(--bpdac-v214-black) !important;
    box-shadow: inset 0 0 0 1px var(--bpdac-v214-selected-border) !important;
}

#bpdac-access-center-root .bpdac-action-card,
#bpdac-access-center-root .bpdac-action-card:hover,
#bpdac-access-center-root .bpdac-action-card:focus,
#bpdac-access-center-root .bpdac-action-card:active {
    border-color: var(--bpdac-panel-line) !important;
    background: var(--bpdac-panel-soft) !important;
    color: var(--bpdac-v214-black) !important;
    -webkit-text-fill-color: var(--bpdac-v214-black) !important;
}

#bpdac-access-center-root .bpdac-action-card:hover,
#bpdac-access-center-root .bpdac-action-card:focus-visible {
    border-color: var(--bpdac-v214-selected-border) !important;
    background: var(--bpdac-v214-selected) !important;
}

#bpdac-access-center-root .bpdac-action-card > span:first-child {
    background: #fff !important;
    color: var(--bpdac-v214-selected-border) !important;
}

#bpdac-access-center-root .bpdac-action-card > .bpdac-center-icon:last-child {
    color: var(--bpdac-v214-black) !important;
}

/* Higher-specificity guard against older late-layer muted-copy rules. */
#bpdac-access-center-root .bpdac-center-shell .bpdac-center-content .bpdac-control-copy small,
#bpdac-access-center-root .bpdac-center-shell .bpdac-center-content .bpdac-control-row > div > span,
#bpdac-access-center-root .bpdac-center-shell .bpdac-center-content .bpdac-theme-card small,
#bpdac-access-center-root .bpdac-center-shell .bpdac-center-content .bpdac-action-card small,
#bpdac-access-center-root .bpdac-center-shell .bpdac-center-content .bpdac-speech-mode-card small,
#bpdac-access-center-root .bpdac-center-shell .bpdac-center-content .bpdac-speech-voice-field small,
#bpdac-access-center-root .bpdac-center-shell .bpdac-center-content .bpdac-position-heading small,
#bpdac-access-center-root .bpdac-center-shell .bpdac-center-content .bpdac-tool-links small {
    color: var(--bpdac-v214-black) !important;
    -webkit-text-fill-color: var(--bpdac-v214-black) !important;
    opacity: 1 !important;
}

/* Separate Read Aloud dialect and voice rows in the original subview theme. */
#bpdac-access-center-root .bpdac-speech-voice-field {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    padding: 12px;
    border: 1px solid var(--bpdac-panel-line);
    border-radius: 13px;
    background: var(--bpdac-panel-soft);
}

#bpdac-access-center-root .bpdac-speech-voice-field > span:first-child {
    display: grid;
    gap: 2px;
}

#bpdac-access-center-root :is(#bpdac-speech-dialect, #bpdac-speech-voice) {
    grid-column: 1 / -1;
    width: 100%;
    min-height: 44px;
    padding: 8px 34px 8px 10px;
    border: 1px solid #b8c2c9;
    border-radius: 10px;
    background-color: #fff;
    font-size: 13px;
    font-weight: 400 !important;
}

/*
 * v2.0.16 typography: every visible word in the visitor panel uses the
 * browser's regular face. The regional specificity also prevents a host
 * theme's bold button/select rules from leaking into the plugin.
 */
#bpdac-access-center-root .bpdac-center-shell,
#bpdac-access-center-root .bpdac-center-shell .bpdac-center-header *,
#bpdac-access-center-root .bpdac-center-shell .bpdac-page-translation-status,
#bpdac-access-center-root .bpdac-center-shell .bpdac-page-translation-status *,
#bpdac-access-center-root .bpdac-center-shell .bpdac-shortcut-dock *,
#bpdac-access-center-root .bpdac-center-shell .bpdac-center-layout .bpdac-center-nav *,
#bpdac-access-center-root .bpdac-center-shell .bpdac-center-layout .bpdac-center-content *,
#bpdac-access-center-root .bpdac-center-shell .bpdac-center-footer * {
    font-weight: 400 !important;
}

#bpdac-access-center-root .bpdac-center-shell .bpdac-center-layout .bpdac-center-content .bpdac-control-row::before,
#bpdac-access-center-root .bpdac-center-shell .bpdac-center-layout .bpdac-center-content .bpdac-control-row::after {
    font-weight: 400 !important;
}

/* Selected controls always use a light surface with black copy and icons. */
#bpdac-access-center-root .bpdac-center-shell :is(
    .bpdac-shortcut-master[aria-pressed="true"],
    .bpdac-control-row--toggle[aria-pressed="true"],
    .bpdac-marker-card[aria-pressed="true"],
    .bpdac-choice-bar button[aria-pressed="true"],
    .bpdac-theme-card[aria-pressed="true"],
    .bpdac-speech-mode-card[aria-pressed="true"]
) {
    border-color: var(--bpdac-v214-selected-border) !important;
    background: var(--bpdac-v214-selected) !important;
    color: var(--bpdac-v214-black) !important;
    -webkit-text-fill-color: var(--bpdac-v214-black) !important;
    opacity: 1 !important;
}

#bpdac-access-center-root .bpdac-center-shell :is(
    .bpdac-shortcut-master[aria-pressed="true"],
    .bpdac-control-row--toggle[aria-pressed="true"],
    .bpdac-marker-card[aria-pressed="true"],
    .bpdac-choice-bar button[aria-pressed="true"],
    .bpdac-theme-card[aria-pressed="true"],
    .bpdac-speech-mode-card[aria-pressed="true"]
) * {
    color: var(--bpdac-v214-black) !important;
    -webkit-text-fill-color: var(--bpdac-v214-black) !important;
    opacity: 1 !important;
}

#bpdac-access-center-root .bpdac-center-shell :is(
    .bpdac-shortcut-master[aria-pressed="true"],
    .bpdac-control-row--toggle[aria-pressed="true"],
    .bpdac-marker-card[aria-pressed="true"],
    .bpdac-speech-mode-card[aria-pressed="true"]
) :is(.bpdac-shortcut-master-icon, .bpdac-control-icon, .bpdac-speech-mode-icon) {
    border-color: #9bbab7 !important;
    background: #fff !important;
    color: var(--bpdac-v214-black) !important;
}

/* The navigation action stays light under higher-specificity legacy rules. */
#bpdac-access-center-root .bpdac-center-shell .bpdac-center-layout .bpdac-center-content .bpdac-action-card,
#bpdac-access-center-root .bpdac-center-shell .bpdac-center-layout .bpdac-center-content .bpdac-action-card:hover,
#bpdac-access-center-root .bpdac-center-shell .bpdac-center-layout .bpdac-center-content .bpdac-action-card:focus-visible {
    background: var(--bpdac-panel-soft) !important;
    color: var(--bpdac-v214-black) !important;
    -webkit-text-fill-color: var(--bpdac-v214-black) !important;
}

/* Read Aloud transport stays visible and keeps black labels in every state. */
#bpdac-access-center-root .bpdac-speech-transport-dock {
    position: sticky;
    top: 0;
    z-index: 8;
    display: grid;
    gap: 8px;
    padding: 8px;
    border: 1px solid var(--bpdac-panel-line);
    border-radius: 14px;
    background: rgba(255, 255, 255, .98);
    box-shadow: 0 8px 18px rgba(23, 32, 42, .08);
}

#bpdac-access-center-root .bpdac-speech-section-nav {
    gap: 8px;
    padding: 8px;
}

#bpdac-access-center-root .bpdac-speech-section-nav button,
#bpdac-access-center-root .bpdac-speech-section-nav button:hover,
#bpdac-access-center-root .bpdac-speech-section-nav button:focus-visible,
#bpdac-access-center-root .bpdac-speech-section-nav button:disabled {
    background: #fff !important;
    color: var(--bpdac-v214-black) !important;
    -webkit-text-fill-color: var(--bpdac-v214-black) !important;
    opacity: 1 !important;
}

#bpdac-access-center-root .bpdac-speech-section-nav button:not(:disabled):hover,
#bpdac-access-center-root .bpdac-speech-section-nav button:not(:disabled):focus-visible {
    border-color: var(--bpdac-v214-selected-border) !important;
    background: var(--bpdac-v214-selected) !important;
}

#bpdac-access-center-root .bpdac-speech-section-nav button:disabled {
    border-color: #a9b5be !important;
    background: #f2f4f5 !important;
    cursor: not-allowed !important;
}

#bpdac-access-center-root .bpdac-speech-buttons button,
#bpdac-access-center-root .bpdac-speech-buttons button:hover,
#bpdac-access-center-root .bpdac-speech-buttons button:focus-visible,
#bpdac-access-center-root #bpdac-speech-section-status,
#bpdac-access-center-root #bpdac-speech-status {
    color: var(--bpdac-v214-black) !important;
    -webkit-text-fill-color: var(--bpdac-v214-black) !important;
    opacity: 1 !important;
}

#bpdac-access-center-root .bpdac-speech-buttons button:hover,
#bpdac-access-center-root .bpdac-speech-buttons button:focus-visible {
    border-color: var(--bpdac-v214-selected-border) !important;
    background: var(--bpdac-v214-selected) !important;
}

#bpdac-access-center-root .bpdac-speech-picker-actions {
    display: none;
}

/* Page-structure badges also follow the black-on-light menu rule. */
#bpdac-access-center-root .bpdac-structure-count {
    border: 1px solid #9bbab7 !important;
    background: var(--bpdac-v214-selected) !important;
    color: var(--bpdac-v214-black) !important;
    -webkit-text-fill-color: var(--bpdac-v214-black) !important;
}

#bpdac-access-center-root .bpdac-structure-type {
    border: 1px solid #aab6bd !important;
    background: #eef2f3 !important;
    color: var(--bpdac-v214-black) !important;
    -webkit-text-fill-color: var(--bpdac-v214-black) !important;
}

#bpdac-access-center-root .bpdac-structure-type--headings {
    border-color: #d49a87 !important;
    background: #fbe8e2 !important;
}

#bpdac-access-center-root .bpdac-structure-type--links {
    border-color: #82b9ae !important;
    background: #dff3ef !important;
}

#bpdac-access-center-root .bpdac-structure-type--buttons {
    border-color: #d3ae54 !important;
    background: #fff1c9 !important;
}

#bpdac-access-center-root .bpdac-structure-type--landmarks {
    border-color: #ad9ad6 !important;
    background: #eee8fb !important;
}

/* The picker collapses the panel at the same 782 px threshold used by JS. */
@media (max-width: 782px) {
    #bpdac-access-center-root .bpdac-speech-picker-banner {
        grid-template-columns: auto minmax(0, 1fr) auto;
    }

    #bpdac-access-center-root .bpdac-speech-picker-actions {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    #bpdac-access-center-root .bpdac-speech-picker-actions button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
        min-height: 42px;
        padding: 7px 10px;
        border: 1px solid rgba(255, 255, 255, .38);
        border-radius: 9px;
        background: #fff;
        color: var(--bpdac-v214-black);
        -webkit-text-fill-color: var(--bpdac-v214-black);
    }

    #bpdac-access-center-root .bpdac-speech-picker-actions svg {
        width: 18px;
        height: 18px;
    }
}

@media (max-width: 700px) {
    #bpdac-access-center-root .bpdac-center-header {
        grid-template-columns: auto minmax(0, 1fr) auto auto;
    }

    #bpdac-access-center-root #bpdac-page-language {
        width: 100px;
        min-width: 100px;
        padding-inline: 8px 24px;
    }

}

@media (max-width: 430px) {
    #bpdac-access-center-root .bpdac-center-site-name {
        display: none !important;
    }

    #bpdac-access-center-root .bpdac-center-heading h2 {
        font-size: 18px !important;
    }

    #bpdac-access-center-root #bpdac-page-language {
        width: 94px;
        min-width: 94px;
        min-height: 36px;
        font-size: 11px;
    }

    #bpdac-access-center-root .bpdac-speech-mode-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 350px) {
    #bpdac-access-center-root .bpdac-center-brand-mark {
        display: none !important;
    }

    #bpdac-access-center-root .bpdac-center-header {
        grid-template-columns: minmax(0, 1fr) auto auto;
    }

    #bpdac-access-center-root .bpdac-speech-mode-grid {
        grid-template-columns: 1fr !important;
    }
}
