/* ── Скрыть стандартный UI Google Translate ── */
#google_translate_element,
.goog-te-gadget,
.goog-te-gadget-simple,
.skiptranslate.goog-te-gadget,
.goog-te-banner-frame,
#goog-gt-tt,
.goog-te-balloon-frame,
.goog-te-menu-value,
.goog-te-menu-frame,
.goog-logo-link,
.goog-te-gadget-icon {
    display: none !important;
}

body > .skiptranslate {
    display: none !important;
    height: 0 !important;
}

body {
    top: 0 !important;
    position: static !important;
}

iframe.goog-te-menu-frame,
iframe.goog-te-banner-frame {
    display: none !important;
    visibility: hidden !important;
}

/* ── Переключатель языка ── */
.dh-lang {
    position: relative;
}

/* Круглая кнопка — общий стиль для мобильной панели */
.dh-circle-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 2.625rem;
    height: 2.625rem;
    padding: 0;
    border: 1px solid var(--lg-stroke, rgba(255, 255, 255, 0.10));
    border-radius: var(--lg-r-pill, 999px);
    background: var(--lg-glass-strong, rgba(30, 30, 38, 0.72));
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    box-shadow: var(--lg-shadow-sm, 0 2px 10px rgba(0, 0, 0, 0.30));
    color: var(--lg-ink-dim, rgba(235, 235, 245, 0.60));
    cursor: pointer;
    text-decoration: none;
    font-size: 1.1rem;
    line-height: 1;
    transition:
        background var(--lg-fast, 220ms) var(--lg-ease, ease),
        border-color var(--lg-fast, 220ms) var(--lg-ease, ease),
        color var(--lg-fast, 220ms) var(--lg-ease, ease),
        transform var(--lg-fast, 220ms) var(--lg-ease, ease),
        box-shadow var(--lg-fast, 220ms) var(--lg-ease, ease);
}

.dh-circle-btn:hover,
.dh-circle-btn:focus-visible {
    border-color: var(--lg-stroke-strong, rgba(255, 255, 255, 0.16));
    color: var(--lg-ink, #f5f5f7);
    transform: translateY(-1px);
}

.dh-circle-btn:focus-visible {
    outline: 2px solid var(--lg-gold, #e0aa6a);
    outline-offset: 2px;
}

.dh-circle-btn .cart-badge {
    position: absolute;
    top: -2px;
    right: -2px;
    min-width: 14px;
    height: 14px;
    font-size: 0.6rem;
}

/* Мобильная панель быстрых действий */
.dh-mobile-toolbar {
    display: none;
    align-items: center;
    justify-content: center;
    gap: 0.85rem;
    margin: 0.35rem 0.75rem 1rem;
    padding: 0.65rem 0.75rem;
    border-radius: var(--lg-r-lg, 26px);
    border: 1px solid var(--lg-stroke, rgba(255, 255, 255, 0.10));
    background: var(--lg-glass-thin, rgba(255, 255, 255, 0.04));
}

@media (max-width: 991.98px) {
    .navbar-collapse .dh-mobile-toolbar {
        display: flex;
    }
}

.dh-mobile-toolbar .dh-lang--mobile {
    display: flex;
    margin: 0;
}

.dh-mobile-toolbar .dh-lang__toggle {
    width: 2.625rem;
    height: 2.625rem;
    padding: 0;
}

.dh-lang-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.3rem;
    min-width: 2.625rem;
    height: 2.625rem;
    padding: 0 0.55rem;
    border: 1px solid var(--lg-stroke, rgba(255, 255, 255, 0.10));
    border-radius: var(--lg-r-pill, 999px);
    background: var(--lg-glass-strong, rgba(30, 30, 38, 0.72));
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    box-shadow: var(--lg-shadow-sm, 0 2px 10px rgba(0, 0, 0, 0.30));
    color: var(--lg-ink-dim, rgba(235, 235, 245, 0.60));
    cursor: pointer;
    text-decoration: none;
    transition:
        background var(--lg-fast, 220ms) var(--lg-ease, ease),
        border-color var(--lg-fast, 220ms) var(--lg-ease, ease),
        color var(--lg-fast, 220ms) var(--lg-ease, ease),
        transform var(--lg-fast, 220ms) var(--lg-ease, ease),
        box-shadow var(--lg-fast, 220ms) var(--lg-ease, ease),
        opacity var(--lg-fast, 220ms) var(--lg-ease, ease);
}

.dh-lang__toggle {
    width: 2.625rem;
    padding: 0;
}

.dh-lang__icon {
    font-size: 1.1rem;
    line-height: 1;
}

.dh-lang-btn__code {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    line-height: 1;
}

.dh-lang-btn:hover {
    border-color: var(--lg-stroke-strong, rgba(255, 255, 255, 0.16));
    color: var(--lg-ink, #f5f5f7);
    transform: translateY(-1px);
}

.dh-lang-btn.is-active {
    border-color: rgba(224, 170, 106, 0.55);
    background: var(--lg-gold-tint, rgba(224, 170, 106, 0.16));
    color: var(--lg-gold, #e0aa6a);
    box-shadow: 0 4px 18px rgba(224, 170, 106, 0.18);
}

.dh-lang.is-open .dh-lang__toggle {
    border-color: rgba(224, 170, 106, 0.45);
    color: var(--lg-gold, #e0aa6a);
    background: var(--lg-gold-tint, rgba(224, 170, 106, 0.16));
}

.dh-lang-btn:focus-visible {
    outline: 2px solid var(--lg-gold, #e0aa6a);
    outline-offset: 2px;
}

/* Панель языков (скрыта по умолчанию) */
.dh-lang__panel {
    position: absolute;
    z-index: 1100;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    margin: 0;
    padding: 0.35rem;
    border-radius: var(--lg-r-md, 18px);
    border: 1px solid var(--lg-stroke, rgba(255, 255, 255, 0.10));
    background: var(--lg-glass-strong, rgba(30, 30, 38, 0.92));
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    box-shadow: var(--lg-shadow-md, 0 12px 40px rgba(0, 0, 0, 0.38));
    opacity: 0;
    visibility: hidden;
    transform: translateY(6px) scale(0.96);
    transform-origin: top right;
    pointer-events: none;
    transition:
        opacity var(--lg-fast, 220ms) var(--lg-ease, ease),
        transform var(--lg-fast, 220ms) var(--lg-ease, ease),
        visibility var(--lg-fast, 220ms) var(--lg-ease, ease);
}

.dh-lang__panel .dh-lang-btn {
    width: 2.625rem;
    min-width: 2.625rem;
    padding: 0;
}

.dh-lang.is-open .dh-lang__panel {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
    pointer-events: auto;
}

/* Desktop: в хедере (вместо избранного) */
.dh-lang--header {
    display: flex;
    align-items: center;
    position: relative;
}

.dh-lang--header .dh-lang__toggle {
    width: auto;
    min-width: auto;
    height: auto;
    padding: 0.5rem 0.75rem;
    border: none;
    border-radius: 8px;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    color: var(--text-primary, #f5f5f5);
}

.dh-lang--header .dh-lang__toggle:hover {
    color: var(--primary-gold, #c9a882);
    background: rgba(201, 168, 130, 0.12);
    transform: none;
}

.dh-lang--header.is-open .dh-lang__toggle {
    color: var(--primary-gold, #c9a882);
    background: rgba(201, 168, 130, 0.15);
    border: none;
    box-shadow: none;
}

.dh-lang--header .dh-lang__icon {
    font-size: 1.15rem;
}

.dh-lang--header .dh-lang__panel {
    top: calc(100% + 0.55rem);
    right: 0;
    flex-direction: row;
    z-index: 1060;
}

#mainNavbar .nav-item .dh-lang--header {
    overflow: visible;
}

@media (max-width: 991.98px) {
    .dh-lang--header {
        display: none !important;
    }
}

/* Mobile: панель языков внутри тулбара */
.dh-lang--mobile .dh-lang__panel {
    top: calc(100% + 0.45rem);
    left: 50%;
    right: auto;
    transform: translateX(-50%) translateY(6px) scale(0.96);
    transform-origin: top center;
    flex-direction: row;
    z-index: 1060;
}

.dh-lang--mobile.is-open .dh-lang__panel {
    transform: translateX(-50%) translateY(0) scale(1);
}

@media (min-width: 992px) {
    .dh-lang--mobile,
    .dh-mobile-toolbar,
    .dh-mobile-dock {
        display: none !important;
    }
}

/* ── RTL ── */
html.translated-rtl .navbar,
html.translated-rtl .navbar .container,
html.translated-rtl .dh-lang--header,
html.translated-rtl .dh-lang--mobile,
html.translated-rtl .dh-mobile-toolbar,
html.translated-rtl .dh-mobile-dock,
html.translated-rtl .footer {
    direction: ltr;
}

html.translated-rtl .main-content {
    direction: rtl;
}

html.translated-rtl .main-content .text-start {
    text-align: right !important;
}

html.translated-rtl .main-content .text-end {
    text-align: left !important;
}

.notranslate,
.notranslate * {
    translate: no;
}
