/* Quiet, tactile controls for the dark-first header. */
.language summary{min-height:48px;gap:12px;padding:0 15px;border:1px solid var(--line);border-radius:3px;background:var(--surface);color:var(--text);transition:border-color .2s}
.language summary:hover,.language[open] summary{border-color:var(--muted)}
.language-globe{width:20px;height:20px;flex-shrink:0}
.language-code{font-size:15px;letter-spacing:.07em;font-weight:500;line-height:1}
.language-indicator{width:9px;height:9px;position:relative;margin-inline-start:2px;flex-shrink:0}
.language-indicator::before,.language-indicator::after{content:'';position:absolute;background:currentColor}
.language-indicator::before{width:9px;height:1px;top:4px;left:0}
.language-indicator::after{height:9px;width:1px;top:0;left:4px}
.language[open] .language-indicator::after{display:none}
.language-menu{top:calc(100% + 12px);width:270px;min-width:0;padding:14px;background:var(--bg);border:1px solid var(--line);border-radius:4px;box-shadow:0 20px 50px #0003}
.language-heading{font-size:13px;line-height:1.6;padding:7px 10px 16px;margin:0 0 5px;border-bottom:1px solid var(--line);color:var(--muted)}
.language-menu a{display:flex;align-items:center;gap:16px;min-height:49px;padding:10px;border-radius:2px;font-size:16px;color:var(--text)}
.language-option-code{font-size:11px;letter-spacing:.08em;width:24px;color:var(--muted);flex-shrink:0}
.language-selected{width:6px;height:6px;border-radius:50%;margin-inline-start:auto;flex-shrink:0}
.language-menu a[aria-current] .language-selected{background:var(--accent)}
.theme-toggle{border:1px solid transparent;border-radius:3px;min-height:44px;flex-shrink:0}
.theme-toggle:hover{border-color:var(--line);background:var(--surface)}
@media(max-width:767px){.language summary{min-height:44px;padding-inline:11px;gap:9px}.language-globe{width:18px;height:18px}.language-code{font-size:14px}.language-indicator{display:none}.language-menu{width:250px;inset-inline-end:-45px}.header-actions{gap:6px}}
@media(max-width:370px){.language summary{padding-inline:9px;gap:7px}.site-header{gap:8px}.header-actions{gap:2px}}
@media(prefers-reduced-motion:reduce){.language summary{transition:none}}
