/* Emitted with complete locale releases; not referenced by current English output. */
.language-switcher{position:relative;font:inherit;max-width:100%;z-index:40}
.language-switcher summary{cursor:pointer;padding:.5em;border:1px solid currentColor;overflow-wrap:anywhere}
.language-switcher summary:focus-visible,.language-options a:focus-visible{outline:3px dashed currentColor;outline-offset:3px}
.language-options{position:absolute;inset-inline-end:0;top:100%;display:grid;gap:.3em;min-width:13em;max-width:calc(100vw - 32px);max-height:65vh;overflow:auto;padding:.7em;background:#efeee2;color:#173a2d;border:2px solid #173a2d;box-shadow:3px 3px 0 #0004}
.language-options a{display:block;padding:.4em;text-decoration:none;overflow-wrap:anywhere}
.language-options a[aria-current=page]{font-weight:bold;text-decoration:underline}
.language-options a:hover{background:#d9e3d8}
html[dir=rtl] .site-nav,html[dir=rtl] .breadcrumbs{text-align:start}
html[dir=rtl] .site-footer{text-align:start}
@media(prefers-reduced-motion:reduce){.language-switcher *{scroll-behavior:auto}}
/* Local system fonts support accents and non-Latin scripts without blocking
   rendering on a font download. Actual glyph/layout QA is required per locale. */
html:not([lang=en]){--locale-font:system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
html:lang(ar){--locale-font:"Noto Sans Arabic","Geeza Pro",Tahoma,Arial,sans-serif}
html:lang(he){--locale-font:"Noto Sans Hebrew","Arial Hebrew",Arial,sans-serif}
html:lang(hi){--locale-font:"Noto Sans Devanagari","Kohinoor Devanagari",Mangal,sans-serif}
html:lang(th){--locale-font:"Noto Sans Thai","Thonburi",Tahoma,sans-serif}
html:lang(ja){--locale-font:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}
html:lang(ko){--locale-font:"Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif}
html:lang(zh-Hans){--locale-font:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif}
html:lang(zh-Hant){--locale-font:"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif}
html:not([lang=en]) body,html:not([lang=en]) body :is(h1,h2,h3,h4,p,a,li,dt,dd,span,strong,small,label,input,select,button,summary,div){font-family:var(--locale-font)!important}
html:lang(ar) body,html:lang(he) body,html:lang(hi) body,html:lang(th) body{line-height:1.7}
html:lang(ar) body *,html:lang(hi) body *,html:lang(th) body *{letter-spacing:normal!important;text-transform:none!important}
html[dir=rtl] :is(.detail-copy,#case-title,.game-question,.game-answers button){text-align:start}
html[dir=rtl] #detail-rules{padding-inline-start:22px;padding-inline-end:0}
/* Long translated words must not expand grid tracks on narrow screens. */
html:not([lang=en]) .cards .card{min-width:0;overflow-wrap:anywhere}
@media(max-width:450px){html:not([lang=en]) .cards{grid-template-columns:1fr}}
/* Native selects cannot wrap their selected label. Let translated room names
   keep their intrinsic width, moving the picker below the brand when needed. */
@media(max-width:600px){
 html:not([lang=en]) #room-app>header{flex-wrap:wrap}
 html:not([lang=en]) #room-app>header .room-picker{margin-inline-start:auto;max-width:100%}
 html:not([lang=en]) #room-select{max-width:calc(100vw - 40px)}
}
