/* Text expansion and right-to-left reading, without changing the product layout. */
.settings-lang-dropdown .dropdown-menu { max-height: min(60vh, 28rem); overflow-y: auto; }
.settings-lang-item { white-space: normal; }
[dir="rtl"] body { text-align: right; }
[dir="rtl"] .text-start { text-align: right !important; }
[dir="rtl"] .text-end { text-align: left !important; }
[dir="rtl"] .dropdown-menu { text-align: right; }
[dir="rtl"] input[type="email"], [dir="rtl"] input[type="url"], [dir="rtl"] .adaptive-time { direction: ltr; }
[dir="rtl"] .bi-arrow-left::before { transform: scaleX(-1); }
[dir="rtl"] .sidebar, [dir="rtl"] .offcanvas-start { right: 0; left: auto; }
:where(button, .btn, label, h1, h2, h3, .surface-subtitle) { overflow-wrap: anywhere; }
.landing-language { max-width: 10rem; min-height: 2.75rem; border: 1px solid currentColor; border-radius: .5rem; padding: .4rem; background: transparent; color: inherit; font: inherit; }
@media (max-width: 600px) { .landing-language { max-width: 6.5rem; font-size: .8rem; } }

.site-header { grid-template-columns: auto 1fr auto auto; }
@media (max-width: 899px) {
  .site-header { grid-template-columns: minmax(0, 1fr) auto auto; gap: 8px; }
  .site-header .landing-language { grid-column: 2; grid-row: 1; max-width: 6rem; }
  .site-header .menu-toggle { grid-column: 3; grid-row: 1; }
}

/* Keep translated course actions clear of the fixed theme/menu controls. */
.cours-app { padding-top: 90px; }
