.dd-language-switcher {
    position: relative;
    flex: 0 0 auto;
    color: var(--dd-ink-primary, #172033);
    font: 500 0.875rem/1.4 var(--dd-font-ui, system-ui, sans-serif);
    text-align: start;
}

.dd-language-switcher > summary {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
    min-height: 44px;
    padding: .5rem .65rem;
    border: 1px solid transparent;
    border-radius: var(--dd-radius-sm, .375rem);
    list-style: none;
    cursor: pointer;
    white-space: nowrap;
}

.dd-language-switcher > summary::-webkit-details-marker { display: none; }
.dd-language-switcher > summary:hover,
.dd-language-switcher[open] > summary { background: var(--dd-surface-subtle, #f0f5f3); }
.dd-language-switcher :is(summary, a):focus-visible { outline: 3px solid var(--dd-action-primary, #12614c); outline-offset: 2px; }
.dd-language-switcher__globe { width: 1.2rem; height: 1.2rem; flex: 0 0 auto; }
.dd-language-switcher__chevron { width: .9rem; height: .9rem; }
.dd-language-switcher__code { display: none; }
.dd-language-switcher[open] { z-index: 1050; }

.dd-language-switcher__options {
    position: absolute;
    z-index: 1050;
    inset-inline-end: 0;
    top: calc(100% + .35rem);
    width: 14rem;
    max-width: calc(100vw - 2rem);
    max-height: min(29rem, calc(100dvh - 10rem));
    overflow-y: auto;
    overscroll-behavior: contain;
    margin: 0;
    padding: .35rem;
    border: 1px solid var(--dd-border-subtle, #d8dfdb);
    border-radius: var(--dd-radius-md, .65rem);
    background: var(--dd-surface-panel, #fff);
    box-shadow: 0 .75rem 2rem rgb(23 32 51 / 15%);
    list-style: none;
}

.dd-language-switcher__options li { margin: 0; padding: 0; list-style: none; }
.dd-language-switcher__options a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    min-height: 44px;
    padding: .5rem .75rem;
    border-radius: .3rem;
    color: inherit;
    text-decoration: none;
    white-space: nowrap;
}

.dd-language-switcher__options a:hover,
.dd-language-switcher__options a[aria-current="true"] { background: var(--dd-surface-subtle, #edf5f1); color: var(--dd-ink-primary, #172033); }
.dd-language-switcher__options a[aria-current="true"] { font-weight: 700; }
.dd-language-switcher__sr-only { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.dd-language-toolbar { display: flex; justify-content: flex-end; padding: .35rem max(1rem, calc((100% - 80rem) / 2)); background: var(--dd-surface-canvas, #fff); }
.dd-language-toolbar + .dd-auth-page { min-height: calc(100dvh - 3.5rem); }
.dd-language-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; }

@media (max-width: 40rem) {
    .dd-language-switcher__name { display: none; }
    .dd-language-switcher__code { display: inline; }
    .dd-language-switcher > summary { gap: .25rem; padding-inline: .35rem; }
    .dd-language-switcher__chevron { display: none; }
}

@media print { .dd-language-switcher, .dd-language-toolbar { display: none !important; } }
@media (forced-colors: active) { .dd-language-switcher > summary, .dd-language-switcher__options { border-color: CanvasText; } }
