@charset "UTF-8";
/* ==========================================================
   부모여행동의서 - 언어 토글 / 언어별 폰트 / RTL
   ========================================================== */

/* ---------- 언어 토글 (아포스티유코리아 site-header.css 의 unified-toggle / unified-menu 와 동일 수치) ---------- */
.lang_toggle { position:relative; line-height:1; z-index:110; }
.lang_toggle_btn { display:flex; align-items:center; gap:6px; padding:8px 12px; border-radius:8px; background:#f1f5fb; font-size:13px; font-weight:600; color:#1a2e4a; border:none; cursor:pointer; transition:all .18s ease; white-space:nowrap; font-family:inherit; }
.lang_toggle_btn:hover, .lang_toggle.open .lang_toggle_btn { background:#e8f0fb; color:#1E5BBA; }
.lang_toggle_globe { font-size:14px; line-height:1; }
.lang_toggle_caret { font-size:9px; margin-left:-2px; }
.lang_toggle_menu { display:none; position:absolute; top:calc(100% + 8px); right:0; left:auto; background:#fff; border:1px solid #e3e9f2; border-radius:12px; box-shadow:0 8px 24px rgba(0,0,0,.12); z-index:1000; min-width:240px; padding:8px 0; max-height:min(80vh,520px); overflow-y:auto; overscroll-behavior:contain; text-align:left; }
.lang_toggle.open .lang_toggle_menu { display:block; }
.lang_toggle_ttl { padding:10px 14px; margin:0; font-size:10.5px; font-weight:800; color:#9aa3b5; text-transform:uppercase; letter-spacing:.5px; }
.lang_toggle_menu ul { margin:0; padding:0; list-style:none; }
.lang_toggle_menu li + li { margin:0 !important; }
.lang_toggle_menu a { display:flex; align-items:center; gap:10px; padding:10px 14px; font-size:13px; font-weight:600; color:#42597a; text-decoration:none; transition:all .15s ease; }
.lang_toggle_menu a:hover, .lang_toggle_menu a:focus-visible { background:#f7faff; color:#1E5BBA; text-decoration:none; outline:0; }
.lang_toggle_radio { flex:none; box-sizing:border-box; width:13px; height:13px; border:1.5px solid #8a94a6; border-radius:50%; background:#fff; }
.lang_toggle_menu a.on .lang_toggle_radio { border:4px solid #1E5BBA; }
.lang_toggle_flag { width:20px; height:15px; border-radius:2px; object-fit:cover; box-shadow:0 0 0 1px rgba(0,0,0,.08); }
.lang_toggle_name { font-size:13px; font-weight:600; }
html[dir="rtl"] .lang_toggle_menu a { direction:ltr; }

/* 1023px 이하 position:static 규칙은 뺐다 (2026-10). PC 헤더는 반응형이 아니라서, 휴대폰이 PC 화면을 980px 폭으로 그릴 때
   메뉴가 토글 안으로 들어가 버튼과 위쪽 언어(English·한국어)가 화면 위로 밀려 올라갔다. 어느 폭에서든 펼침 상자로 둔다. */

/* ---------- 한국어 외 페이지: 카카오톡 채널 숨김 ---------- */
.lang_hide { display:none !important; }

/* ---------- 언어별 폰트 ---------- */
html[lang="zh-CN"] body, html[lang="zh-CN"] body * { font-family:'Noto Sans SC', 'Noto Sans KR', sans-serif; }
html[lang="ja"] body, html[lang="ja"] body * { font-family:'Noto Sans JP', 'Noto Sans KR', sans-serif; }
html[lang="vi"] body, html[lang="vi"] body * { font-family:'Noto Sans', 'Noto Sans KR', sans-serif; }
html[lang="ar"] body, html[lang="ar"] body * { font-family:'Noto Sans Arabic', 'Noto Sans KR', sans-serif; }

/* ---------- 아랍어 RTL ----------
   기존 레이아웃(슬라이더·절대배치)은 좌→우 구조를 유지하고,
   문단 단위로 아랍어 텍스트 방향(우→좌)을 적용 */
html[dir="rtl"] body { direction:ltr; }
html[dir="rtl"] body :is(h1, h2, h3, h4, h5, h6, p, li, dt, dd, th, td, label, strong, b, span, i, em, a, button, input, textarea) { unicode-bidi:plaintext; }
html[dir="rtl"] .lang_toggle_menu a { unicode-bidi:normal; }

