/* A compact, keyboard-accessible language control across every page. */
.storey-language{position:fixed;z-index:10000;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));font:500 13px/1.4 system-ui,-apple-system,sans-serif;color:#f6f8ff;letter-spacing:normal;text-transform:none}
.storey-language summary{display:flex;align-items:center;gap:8px;min-height:42px;padding:0 14px;border:1px solid #ffffff26;border-radius:24px;background:#10171ff2;box-shadow:0 8px 30px #0004;cursor:pointer;list-style:none;backdrop-filter:blur(16px)}
.storey-language summary::-webkit-details-marker{display:none}
.storey-language summary:focus-visible,.storey-language a:focus-visible{outline:2px solid #5ce1a6;outline-offset:3px}
.storey-language-options{position:absolute;bottom:52px;right:0;min-width:170px;padding:6px;border:1px solid #ffffff26;border-radius:16px;background:#10171ffb;box-shadow:0 16px 60px #0007}
.storey-language a{display:flex;align-items:center;min-height:42px;padding:8px 12px;border-radius:10px;color:#e8eef5;text-decoration:none;font:inherit;white-space:nowrap}
.storey-language a:hover,.storey-language a[aria-current]{background:#5ce1a614;color:#79edbe}
.storey-language a[aria-current]::after{content:'✓';margin-left:auto;padding-left:14px}
html:lang(ja),html:lang(zh){line-break:strict;word-break:normal}
html:lang(ja) :is(h1,h2,h3),html:lang(zh) :is(h1,h2,h3){letter-spacing:-.025em;line-height:1.3}
html:not(:lang(en)) :is(.kicker,.city-kicker,.pro-kicker,.tag,.aw-note){letter-spacing:.04em}
html:not(:lang(en)) :is(button,.btn,.nav-links a){white-space:normal}
html:not(:lang(en)) .nav-links{flex-wrap:wrap;gap:8px 14px}
@media(max-width:600px){.storey-language{right:12px;bottom:max(12px,env(safe-area-inset-bottom))}.storey-language summary{min-height:40px;padding:0 12px}.storey-language-options{bottom:48px}}
@media print{.storey-language{display:none!important}}
