/* Language button */
.exn-tr { position: relative; flex: 0 0 auto; }
.exn-tr-btn {
	display: inline-flex; align-items: center; gap: 6px;
	min-height: 40px; padding: 0 12px;
	border: 1px solid var(--c-border); border-radius: 999px;
	background: var(--c-card); color: var(--c-text);
	font: 600 14px/1 inherit; cursor: pointer;
}
.exn-tr-btn:hover { border-color: var(--c-primary); }
.exn-tr-btn:focus-visible { outline: 2px solid var(--c-primary); outline-offset: 2px; }
.exn-tr-menu {
	position: absolute; right: 0; top: calc(100% + 6px); z-index: 60;
	min-width: 150px; margin: 0; padding: 6px; list-style: none;
	border: 1px solid var(--c-border); border-radius: 12px;
	background: var(--c-card); box-shadow: 0 10px 28px rgba(15, 42, 74, .18);
}
.exn-tr-menu[hidden] { display: none; }
.exn-tr-menu button {
	display: block; width: 100%; padding: 10px 12px; border: 0; border-radius: 8px;
	background: transparent; color: var(--c-text); font: 500 15px/1.2 inherit;
	text-align: left; cursor: pointer;
}
.exn-tr-menu button:hover, .exn-tr-menu button:focus-visible { background: rgba(127, 127, 127, .14); }

/* Floating and footer placements */
.exn-tr--float { position: fixed; left: 14px; bottom: 14px; z-index: 70; }
.exn-tr--float .exn-tr-menu, .exn-tr--footer .exn-tr-menu { top: auto; bottom: calc(100% + 6px); right: auto; left: 0; }
.exn-tr--footer { display: flex; justify-content: center; padding: 14px 0; }
.exn-tr--footer .exn-tr-menu { left: 50%; transform: translateX(-50%); }

/* Hide Google's own banner and tooltips */
body > .skiptranslate, .goog-te-banner-frame, #goog-gt-tt, .goog-tooltip, .goog-te-balloon-frame { display: none !important; }
body { top: 0 !important; }
.goog-text-highlight { background: none !important; box-shadow: none !important; }

/* App header: slot between the title and the dark-mode icon */
.header-style-app .exn-tr--header { grid-column: 6; grid-row: 1; }
.header-style-app .exn-tr--header .exn-tr-btn { border: 0; background: transparent; color: var(--app-ink); }
.header-style-app .site-header { grid-template-columns: auto 1fr auto auto auto auto; }

@media (max-width: 800px) {
	.header-style-app .site-header { grid-template-columns: 44px minmax(0, 1fr) 38px 40px 44px; }
	.header-style-app .exn-tr--header { grid-column: 3; }
	.header-style-app .theme-toggle { grid-column: 4; }
	.header-style-app .search-toggle { grid-column: 5; }
	.exn-tr--header .exn-tr-btn { min-width: 38px; min-height: 40px; padding: 0 6px; gap: 0; justify-content: center; border: 0; background: transparent; }
	.exn-tr--header .exn-tr-btn svg { display: none; }
	.exn-tr--header .exn-tr-cur { font-size: 18px; font-weight: 700; }
	.header-style-app .site-header.search-open .header-search { grid-column: 1 / -1; }
}

@media print { .exn-tr { display: none !important; } }
