/* Shared language controls and authored CJK font fallbacks. */
@font-face { font-family:"WV Japanese UI"; src:url('/assets/fonts/cjk/ui-ja-v2.woff') format('woff'); font-style:normal; font-weight:100 900; font-display:swap; unicode-range:U+3000-30FF,U+3400-9FFF,U+FF00-FFEF; }
@font-face { font-family:"WV Korean UI"; src:url('/assets/fonts/cjk/ui-ko-v2.woff') format('woff'); font-style:normal; font-weight:100 900; font-display:swap; unicode-range:U+1100-11FF,U+3000-30FF,U+3130-318F,U+3400-9FFF,U+AC00-D7AF,U+FF00-FFEF; }
html[lang="ja"] body { --font-copy:"Univers Condensed WV","WV Japanese UI","Hiragino Sans","Yu Gothic",sans-serif; --font-bank:"Bank Gothic WV","WV Japanese UI","Hiragino Sans","Yu Gothic",sans-serif; --font-eurostar:"Eurostar WV","WV Japanese UI","Hiragino Sans","Yu Gothic",sans-serif; --font-ui:"Chakra Petch WV","WV Japanese UI","Hiragino Sans","Yu Gothic",sans-serif; }
html[lang="ko"] body { --font-copy:"Univers Condensed WV","WV Korean UI","Apple SD Gothic Neo","Malgun Gothic",sans-serif; --font-bank:"Bank Gothic WV","WV Korean UI","Apple SD Gothic Neo","Malgun Gothic",sans-serif; --font-eurostar:"Eurostar WV","WV Korean UI","Apple SD Gothic Neo","Malgun Gothic",sans-serif; --font-ui:"Chakra Petch WV","WV Korean UI","Apple SD Gothic Neo","Malgun Gothic",sans-serif; }
html[lang="ja"] select { font-family:Arial,"WV Japanese UI","Hiragino Sans",sans-serif; }
html[lang="ko"] select { font-family:Arial,"WV Korean UI","Apple SD Gothic Neo",sans-serif; }
.wv-language-footer { position:relative; display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:10px; width:fit-content; max-width:calc(100% - 36px); margin:24px auto; padding:12px 0; clear:both; color:#fff; }
.wv-language-footer label { color:#ff0028; font:11px/1.4 Arial,sans-serif; letter-spacing:.08em; }
.wv-language-footer select { width:144px; max-width:100%; min-height:40px; padding:8px; color:#fff; background:#10030a; border:1px solid #ff0028; border-radius:0; font:14px/1.4 Arial,sans-serif; }
.wv-language-footer select:focus-visible { outline:2px solid #fff; outline-offset:3px; }
/* Labels must not inherit the old arrow-only visibility and width rules. */
.portal-console-menu span[data-espejo-i18n] { visibility:visible; color:inherit; width:auto; font:inherit; flex:1 1 auto; }
html:not([lang="es"]) :is(button,.primary-action,.secondary-action,.account-login-action,.account-create-action) { white-space:normal; overflow-wrap:anywhere; }
html:is([lang="ja"],[lang="ko"]) :is(button,label,select,.portal-console-menu,.preview-links,.account-config-menu,.checkout-status) { letter-spacing:.04em; }
html:not([lang="es"]) .portal-console-menu :is(a,button) { max-width:100%; white-space:normal; }
.wv-language-footer [hidden] { display:none; }
/* Long account/activation labels wrap inside the original columns. */
.activation-workspace,.activation-access,.activation-access-form,.activation-access-form label { min-width:0; }
.activation-access-form input { box-sizing:border-box; min-width:0; width:100%; }
.activation-access h1,.activation-code-form legend { overflow-wrap:anywhere; }
.activation-access-form button { max-width:100%; }
@media (max-width: 700px) { .activation-piece-copy { min-width:0; } .activation-piece-copy p { white-space:normal; overflow-wrap:anywhere; } }

/* Editorial columns keep their original Latin typography with authored CJK fallbacks. */
html[lang="ja"] .lunar-copy p { font-family:"Univers LT 47 Luna Sangre","Univers LT 47 WV","Univers Condensed WV","WV Japanese UI",sans-serif; }
html[lang="ko"] .lunar-copy p { font-family:"Univers LT 47 Luna Sangre","Univers LT 47 WV","Univers Condensed WV","WV Korean UI",sans-serif; }
html[lang="ja"] :is(.lunar-copy h1,.lunar-accordion summary,.lunar-acquire,.lunar-back,.lunar-sign-in,.page-lunar-construction h1) { font-family:"Bank Gothic Light User","Bank Gothic WV","WV Japanese UI",sans-serif; }
html[lang="ko"] :is(.lunar-copy h1,.lunar-accordion summary,.lunar-acquire,.lunar-back,.lunar-sign-in,.page-lunar-construction h1) { font-family:"Bank Gothic Light User","Bank Gothic WV","WV Korean UI",sans-serif; }
html:is([lang="ja"],[lang="ko"]) .lunar-copy p { line-height:1.65; line-break:strict; }

/* Compact language control sits directly below the W Rated mark. */
.wv-language-footer,
.espejo-language-control {
  position:fixed;
  z-index:110;
  left:var(--wv-language-left,max(10px,env(safe-area-inset-left)));
  bottom:auto;
  top:var(--wv-language-top,80px);
  right:auto;
  display:block;
  width:108px;
  max-width:calc(100vw - 20px);
  margin:0;
  padding:0;
  clear:none;
}
.wv-language-footer label,
.espejo-language-control label {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
}
.wv-language-footer select,
.espejo-language-control select {
  display:block;
  width:108px;
  max-width:100%;
  height:30px;
  min-height:30px;
  padding:4px 6px;
  border:1px solid #ff0028;
  border-radius:0;
  background:#10030a;
  color:#fff;
  font:400 11px/1.4 Arial,sans-serif;
  cursor:pointer;
}

/* Re-evaluate inherited body typography after the locale changes. */
html:is([lang="ja"],[lang="ko"]) body { font-family:var(--font-copy); }
html[lang="ja"] body.page-espejo { --font-copy:"Univers Condensed WV","WV Japanese UI",sans-serif; --font-bank:"Bank Gothic WV","WV Japanese UI",sans-serif; }
html[lang="ko"] body.page-espejo { --font-copy:"Univers Condensed WV","WV Korean UI",sans-serif; --font-bank:"Bank Gothic WV","WV Korean UI",sans-serif; }
