/* Locale-specific layout. Brand artwork and security policies remain unchanged. */
html[dir="rtl"] body { text-align:start; }
html[dir="rtl"] :is(input[type="email"],input[type="url"],input[type="tel"],input[type="date"],input[type="datetime-local"],input[type="number"]) { direction:ltr; unicode-bidi:isolate; text-align:start; }
html[dir="rtl"] :is(a[href^="mailto:"],a[href^="tel:"],code,pre,[data-ltr]) { direction:ltr; unicode-bidi:isolate; }
html[dir="rtl"] .vx-account-dropdown { right:auto; left:0; text-align:start; }
html[dir="rtl"] :is(.v-pref-form,.vx-account-panel,.vx-account-card,.vx-club-card,.v-offer-popup) { text-align:start; }
/* The existing continuous carousel uses positive scrollLeft; keep its coordinate system stable. */
html[dir="rtl"] [data-home-discovery-rail] { direction:ltr; }
html[dir="rtl"] [data-home-discovery-card] { direction:rtl; text-align:start; }
html[dir="rtl"] :is(.v7-hotel-field,.v-field-copy) { text-align:start; }
html[dir="rtl"] .v7-hotel-field { padding-left:0!important; padding-right:54px!important; }
html[dir="rtl"] .v7-search-icon { left:auto; right:19px; }
html[dir="rtl"] :is(.vxp-price-block,.vxw-offer-price,.v-compare-best,.v-live-rate-price,.v-rate-price-panel) { text-align:start; }
html[dir="rtl"] .v-rate-price-panel { border-left:0; border-right:1px solid rgba(9,50,31,.075); }
html[lang="ar"] :is(h1,h2,h3,h4,.vxr-title,.v7-title) { letter-spacing:normal; line-height:1.35; }
html:is([lang="ja"],[lang="zh"]) :is(h1,h2,h3,h4) { letter-spacing:normal; line-height:1.35; overflow-wrap:anywhere; }
.admin-languages.vx-admin-locale-menu { position:relative; display:block; flex:0 0 auto; }
.vx-admin-locale-menu summary { padding:10px 14px; border:1px solid #e3e8ee; border-radius:10px; background:#fff; cursor:pointer; list-style:none; font-size:13px; }
.vx-admin-locale-menu summary::-webkit-details-marker { display:none; }
.vx-admin-locale-menu nav { position:absolute; inset-inline-end:0; top:calc(100% + 8px); z-index:100; width:200px; max-width:calc(100vw - 32px); max-height:360px; overflow:auto; padding:8px; border:1px solid #e3e8ee; border-radius:12px; background:#fff; box-shadow:0 14px 40px rgba(20,43,56,.12); }
.vx-admin-locale-menu nav a { display:block; padding:10px 12px; }
.vx-admin-locale-menu :is(summary,a):focus-visible { outline:2px solid #cf4b00; outline-offset:3px; }
