/* Language picker + preference banner. Colors trace to moonup/branding/design.md:
   text-secondary #979797, text-primary #f7f7f5, gold #f6bd3d, bg-card #121212, border-subtle #262626.
   Sizing mirrors .nav__link / .nav__social-link in src/styles/marketing/home.css so the picker reads as one more nav item. */
.moonup-language { position: relative; flex-shrink: 0; color: #979797; font: 400 0.95rem/1.5 'Inter Variable', Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; }
.moonup-language-picker summary { position: relative; display: flex; align-items: center; gap: .4rem; cursor: pointer; padding: .5rem 0; list-style: none; color: inherit; white-space: nowrap; -webkit-tap-highlight-color: transparent; transition: color 0.4s cubic-bezier(0.16, 1, 0.3, 1); }
.moonup-language-picker summary::-webkit-details-marker { display: none; }
.moonup-language-picker summary svg { width: 16px; height: 16px; flex-shrink: 0; }
.moonup-language-picker summary::after { content: ''; position: absolute; bottom: 0; left: 50%; width: 0; height: 2px; background: linear-gradient(90deg, transparent, #f6bd3d, transparent); transform: translateX(-50%); transition: width 0.4s cubic-bezier(0.16, 1, 0.3, 1); }
.moonup-language-picker summary:hover, .moonup-language-picker[open] summary { color: #f7f7f5; }
.moonup-language-picker summary:hover::after, .moonup-language-picker[open] summary::after { width: 100%; }
.moonup-language-picker ul { position: absolute; right: 0; top: 100%; z-index: 100; min-width: 10rem; list-style: none; margin: .5rem 0 0; padding: .375rem; border: 1px solid #262626; border-radius: 14px; background: #121212; box-shadow: 0 16px 42px rgba(0, 0, 0, 0.55); }
.moonup-language-picker a { display: block; padding: .6rem .85rem; border-radius: 8px; color: #979797; text-decoration: none; white-space: nowrap; transition: color 0.2s cubic-bezier(0.4, 0, 0.2, 1), background 0.2s cubic-bezier(0.4, 0, 0.2, 1); }
.moonup-language-picker a:hover { color: #f7f7f5; background: rgba(247, 247, 245, 0.04); }
.moonup-language-picker a[aria-current] { color: #f6bd3d; background: rgba(247, 247, 245, 0.04); }
.moonup-language-picker summary:focus-visible { outline: 2px solid #f6bd3d; outline-offset: 4px; border-radius: 4px; }
.moonup-language-picker a:focus-visible { outline: 2px solid #f6bd3d; outline-offset: -2px; }
.moonup-language-banner { position: fixed; inset: auto 1rem 1rem auto; z-index: 10000; box-sizing: border-box; width: min(27rem, calc(100vw - 2rem)); padding: 1.25rem; border: 1px solid #262626; border-radius: 14px; color: #f7f7f5; background: #121212; box-shadow: 0 16px 42px rgba(0, 0, 0, 0.55); text-align: left; font: 400 0.95rem/1.5 'Inter Variable', Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; }
.moonup-language-banner[hidden] { display: none; }
.moonup-language-banner p { margin: 0 0 .75rem; color: #f7f7f5; }
.moonup-language-banner a, .moonup-language-banner button { display: inline-block; padding: .5rem .75rem .5rem 0; color: #f6bd3d; background: none; border: 0; font: inherit; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.moonup-language-banner a:hover, .moonup-language-banner button:hover { color: #f7f7f5; }
.moonup-language-banner :focus-visible { outline: 2px solid #f6bd3d; outline-offset: 3px; border-radius: 4px; }
@media (max-width: 600px) { .nav__container { gap: .4rem; } .nav__right { gap: .4rem; } .nav__social { display: none; } }
@media (max-width: 600px) {
  .nav__container:has(> .moonup-language) { display: grid; grid-template-columns: 1fr auto; row-gap: .75rem; }
  .nav__container > .moonup-language { grid-column: 2; grid-row: 1; }
  .nav__container:has(> .moonup-language) > .nav__links { grid-column: 1 / -1; grid-row: 2; justify-content: center; }
}
