/* 언어 고르기 드롭다운(소개 사이트·로그인·콘솔·웹메일 공용). 마크업은 src/i18n/index.ts langPick, 동작은 public/js/app.js */
.lang-dd { position: relative; display: inline-flex; }
.lang-dd-btn { display: inline-flex; align-items: center; gap: 7px; height: 34px; padding: 0 12px; border: 1px solid #dcdfe4; border-radius: 10px; background: #fff; color: #1d2225; font: inherit; font-size: 13px; font-weight: 600; white-space: nowrap; cursor: pointer; transition: border-color .15s, background-color .15s; }
.lang-dd-btn:hover { border-color: #b9bec6; }
.lang-dd-btn:focus-visible { outline: 2px solid #4c9bff; outline-offset: 2px; }
.lang-dd-btn svg { flex: none; opacity: .75; }
.lang-dd-chev { transition: transform .15s; }
.lang-dd.is-open .lang-dd-chev { transform: rotate(180deg); }
.lang-dd-menu { position: absolute; top: calc(100% + 8px); right: 0; z-index: 1000; display: grid; grid-template-columns: repeat(2, minmax(132px, 1fr)); gap: 2px; width: max-content; max-height: min(70vh, 420px); overflow: auto; padding: 6px; border: 1px solid #e4e6ea; border-radius: 14px; background: #fff; box-shadow: 0 12px 32px rgb(16 24 40 / 14%), 0 2px 6px rgb(16 24 40 / 6%); animation: lang-dd-in .14s ease-out; overscroll-behavior: contain; }
.lang-dd-menu[hidden] { display: none; }
.lang-dd.is-up .lang-dd-menu { top: auto; bottom: calc(100% + 8px); }
[dir="rtl"] .lang-dd-menu { right: auto; left: 0; }
.lang-dd-menu a { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 10px; border-radius: 9px; color: #1d2225; font-size: 14px; text-decoration: none; }
.lang-dd-menu a:hover, .lang-dd-menu a:focus-visible { background: #f2f4f7; outline: none; }
.lang-dd-menu a[aria-checked="true"] { background: #eef4ff; color: #0f73e5; font-weight: 700; }
.lang-dd-menu small { color: #9aa1ab; font-size: 11px; font-weight: 600; letter-spacing: .04em; }
.lang-dd-ok { flex: none; color: #0f73e5; }
@keyframes lang-dd-in { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .lang-dd-menu { animation: none; } .lang-dd-chev { transition: none; } }
/* 어두운 머리말(소개 사이트) */
.lang-dd.is-night .lang-dd-btn { border-color: rgb(255 255 255 / 22%); background: transparent; color: #c9d0e0; }
.lang-dd.is-night .lang-dd-btn:hover, .lang-dd.is-night.is-open .lang-dd-btn { border-color: rgb(255 255 255 / 50%); color: #fff; }
.lang-dd.is-night .lang-dd-btn:focus-visible { outline-color: #ffe45c; }
/* 어두운 사이드 메뉴(모바일 콘솔) */
.lang-dd.is-dark .lang-dd-btn { border-color: rgb(255 255 255 / 22%); background: rgb(255 255 255 / 8%); color: #d7dbe0; }
@media (max-width: 560px) {
  .lang-dd-menu { grid-template-columns: repeat(2, minmax(120px, 1fr)); max-width: calc(100vw - 24px); }
}
