/*
 * public/i18n.css — the language switcher, shared by every translated page.
 *
 * Markup is generated by src/i18n/pages.js (switcherHtml); behaviour lives in
 * public/i18n.js. Variants: --dark on the navy app/doc bars, --light on the
 * paper-coloured landing and transcript headers, --drawer inside the app's
 * mobile menu, --auth on the sign-in screen.
 */
.lang-switch{position:relative;display:inline-flex;align-items:center;flex:none}
.lang-switch-btn{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 9px;margin:0;border:1px solid transparent;border-radius:8px;background:transparent;color:inherit;font:inherit;line-height:1;cursor:pointer}
.lang-switch-btn:focus-visible{outline:2px solid #7dd3fc;outline-offset:2px}
.lang-flag{display:block;flex:none;width:20px;height:15px;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.18)}
.lang-caret{flex:none;opacity:.75;transition:transform .15s}
.lang-switch-btn[aria-expanded="true"] .lang-caret{transform:rotate(180deg)}
@media (prefers-reduced-motion:reduce){.lang-caret{transition:none}}

.lang-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:10050;min-width:176px;margin:0;padding:6px;list-style:none;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 12px 32px rgba(0,0,0,.18);text-align:left}
.lang-menu[hidden]{display:none}
.lang-menu li{margin:0;padding:0;list-style:none}
.lang-menu li::before{content:none}
.lang-item{display:flex;align-items:center;gap:10px;width:100%;margin:0;padding:9px 10px;border:0;border-radius:6px;background:none;color:#111827;font:inherit;font-size:14px;font-weight:500;line-height:1.2;letter-spacing:0;text-align:left;text-decoration:none;text-transform:none;white-space:nowrap;cursor:pointer}
.lang-item:hover{background:#f1f5f9;color:#111827}
.lang-item:focus-visible{outline:2px solid #2563eb;outline-offset:-2px;background:#f1f5f9}
.lang-item[aria-checked="true"]{font-weight:700}
.lang-item[aria-checked="true"]::after{content:"";width:6px;height:10px;margin-left:auto;border:solid #2563eb;border-width:0 2px 2px 0;transform:translateY(-2px) rotate(45deg)}

/* Navy bars: app top bar, bias/integrations/compliance pages. */
.lang-switch--dark .lang-switch-btn{color:rgba(255,255,255,.85);background:rgba(255,255,255,.06)}
.lang-switch--dark .lang-switch-btn:hover{background:rgba(255,255,255,.12);color:#fff}

/* Landing + transcript: square, ruled, like the page's other buttons. */
.lang-switch--light .lang-switch-btn{height:36px;padding:0 10px;border-color:var(--rule,#D9D6CC);border-radius:0;color:var(--ink,#16181D)}
.lang-switch--light .lang-switch-btn:hover{border-color:var(--ink,#16181D)}
.lang-switch--light .lang-switch-btn:focus-visible{outline-color:var(--stamp,#2440B3)}
.lang-switch--light .lang-menu{border-radius:0;border-color:var(--ink,#16181D);box-shadow:4px 4px 0 var(--rule,#D9D6CC)}

/* Sign-in screen: top-right corner of the full-screen overlay. */
.lang-switch--auth{position:absolute;top:16px;right:16px}
.lang-switch--auth .lang-switch-btn{color:rgba(255,255,255,.85);background:rgba(255,255,255,.08)}
.lang-switch--auth .lang-switch-btn:hover{background:rgba(255,255,255,.16);color:#fff}

/* App mobile drawer: the menu opens inline, pushing the list down. */
.lang-switch--drawer{display:flex;flex-direction:column;align-items:stretch;border-top:1px solid rgba(255,255,255,.12);margin-top:4px;padding-top:6px}
.lang-switch--drawer .lang-switch-btn{justify-content:flex-start;width:100%;height:40px;padding:0 12px;color:rgba(255,255,255,.85)}
.lang-switch--drawer .lang-switch-btn:hover{background:rgba(255,255,255,.1)}
.lang-switch--drawer .lang-switch-label{font-size:14px;font-weight:600}
.lang-switch--drawer .lang-menu{position:static;min-width:0;margin-top:4px;box-shadow:none}

/* Pages whose body is not translated yet (legal/regulatory prose). */
.i18n-english-only{margin:0 0 18px;padding:10px 14px;border:1px solid #fde68a;border-radius:8px;background:#fffbeb;color:#92400e;font-size:13px;line-height:1.5}
