.language-toggle{display:inline-flex;align-items:center;gap:.4rem;min-height:44px;padding:0 .65rem;border:1px solid var(--line);border-radius:24px;font-size:.78rem;font-weight:650;white-space:nowrap;color:var(--ink);text-decoration:none}
.language-toggle:hover{background:var(--wash)}
.language-toggle .icon{width:19px;height:19px}
.language-toggle span{text-transform:uppercase}
.language-open{overflow:hidden}
.language-dialog{position:fixed;top:calc(var(--viewport-offset-top,0px) + max(12px, calc((var(--viewport-height,100dvh) - 720px)/2)));bottom:auto;margin:0 auto;padding:0;width:min(640px,calc(100vw - 24px));max-width:none;max-height:calc(var(--viewport-height,100dvh) - 24px);height:min(720px,calc(var(--viewport-height,100dvh) - 24px));border:1px solid var(--line);border-radius:20px;background:var(--surface);color:var(--ink);box-shadow:0 24px 80px #0004;overflow:hidden}
.language-dialog[open]{display:flex;flex-direction:column}
.language-dialog::backdrop{background:#18241dcc;backdrop-filter:blur(5px)}
.language-dialog-top{display:flex;justify-content:space-between;gap:20px;padding:24px 24px 12px;flex:none}
.language-dialog h2{font-size:clamp(1.6rem,4vw,2.1rem);line-height:1.2;margin:.5rem 0 0;overflow-wrap:anywhere}
.language-close{display:grid;place-items:center;align-self:flex-start;flex:none;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;color:var(--ink);background:var(--surface);cursor:pointer}
.language-search{padding:0 24px 16px;flex:none;border-bottom:1px solid var(--line)}
.language-search label{display:block;font-size:.8rem;margin:6px 0}
.language-search input{width:100%;min-height:44px;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--surface);color:var(--ink)}
.language-search p{font-size:.78rem;color:var(--muted);margin:10px 0 0}
.language-scroll{overflow:auto;overscroll-behavior:contain;min-height:0;padding:14px 24px 20px;scrollbar-width:thin}
.language-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.language-choice{position:relative;display:grid;gap:3px;min-height:64px;padding:10px 30px 10px 12px;border:1px solid var(--line);border-radius:12px;color:var(--ink);text-decoration:none;transition:background .15s}
.language-choice[hidden]{display:none}
.language-choice:hover,.language-choice[aria-current]{background:var(--wash);border-color:var(--accent)}
.language-choice>span{font-size:1rem;font-weight:650;overflow-wrap:anywhere}
.language-choice>small{color:var(--muted);font-size:.72rem}
.language-choice>b{position:absolute;right:10px;top:12px;color:var(--accent);font-weight:400}
.language-dialog-foot{padding:12px 24px;border-top:1px solid var(--line);font-size:.73rem;line-height:1.45;color:var(--muted);flex:none}
.language-empty{color:var(--muted);padding:12px}
.language-page{max-width:720px;margin:0 auto 60px}
.language-page .language-search{padding:0 0 20px;margin-bottom:20px}
.language-note{display:flex;flex-wrap:wrap;gap:.4rem .8rem;align-items:center;margin:0 auto;padding:10px 0;border-bottom:1px solid var(--line);font-size:.74rem;color:var(--muted)}
.language-note a{color:var(--accent);text-underline-offset:3px}
html:not([lang="en"]) .main-nav{flex-wrap:wrap}
html:not([lang="en"]) .story-meta,html:not([lang="en"]) .story-foot{overflow-wrap:anywhere}
html:not([lang="en"]) .atlas-toolbar,html:not([lang="en"]) .atlas-modes{flex-wrap:wrap}
html:not([lang="en"]) .atlas-action{white-space:normal}
@media(max-width:600px){.language-toggle{padding:0 .5rem}.language-dialog-top{padding:18px 16px 10px}.language-search{padding:0 16px 12px}.language-scroll{padding:12px 16px}.language-dialog-foot{padding:10px 16px}.language-list{gap:6px}.language-choice{padding-left:9px}.language-choice>span{font-size:.9rem}}
@media(max-height:450px){.language-dialog-top{padding:10px 16px 6px}.language-dialog h2{font-size:1.3rem;margin:0}.language-dialog-top .eyebrow,.language-search p{display:none}.language-search{padding-bottom:8px}.language-search label{display:none}.language-dialog-foot{padding:6px 16px}}
.compact-viewport .language-dialog-top{padding:10px 16px 6px}
.compact-viewport .language-dialog h2{font-size:1.3rem;margin:0}
.compact-viewport .language-dialog-top .eyebrow,.compact-viewport .language-search p,.compact-viewport .language-search label,.compact-viewport .language-dialog-foot{display:none}
.compact-viewport .language-search{padding-bottom:8px}
@media(prefers-reduced-motion:reduce){.language-choice{transition:none}}
