@charset "utf-8";
/* =====================================================================
   GEN 주한외국기업뉴스 2026 리뉴얼 디자인 (모바일 /m)
   - include/gen_renew_config.php 스위치가 켜졌을 때만 로드됩니다.
   - 모든 규칙은 body.gen-renew 아래에서만 동작합니다.
   ===================================================================== */
body.gen-renew {
	--gen-navy: #0d2a54;
	--gen-navy-d: #081a36;
	--gen-blue: #1f4e95;
	--gen-red: #c8102e;
	--gen-ink: #111827;
	--gen-text: #1f2937;
	--gen-sub: #4b5563;
	--gen-mute: #6b7280;
	--gen-line: #e5e7eb;
	--gen-bg: #f4f5f7;
	--gen-font: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;
	background: var(--gen-bg) !important;
	color: var(--gen-text);
	-webkit-font-smoothing: antialiased;
}
body.gen-renew, body.gen-renew input, body.gen-renew button, body.gen-renew select, body.gen-renew textarea,
body.gen-renew h1, body.gen-renew h2, body.gen-renew h3, body.gen-renew h4, body.gen-renew p, body.gen-renew a,
body.gen-renew li, body.gen-renew dt, body.gen-renew dd, body.gen-renew div, body.gen-renew em, body.gen-renew strong,
body.gen-renew span:not([class*="axi"]):not([class*="fa-"]), body.gen-renew td, body.gen-renew th, body.gen-renew label {
	font-family: var(--gen-font) !important;
}

/* ---------- 헤더 ---------- */
body.gen-renew header { box-shadow: 0 1px 0 rgba(0,0,0,.06) !important; }
body.gen-renew .header_top { background: var(--gen-navy-d) !important; background-image: none !important; min-height: 54px; }
body.gen-renew .header_top .logo_area img { max-height: 34px; width: auto; margin: 10px 0 !important; }
body.gen-renew .header_top2 .menu_btn a, body.gen-renew .header_top2 .search_btn a { background-color: var(--gen-navy) !important; }
body.gen-renew .search_bar { background: var(--gen-navy-d) !important; padding: 0 12px 12px !important; border: 0 !important; }
body.gen-renew .search_bar input { border: 0 !important; border-radius: 20px 0 0 20px !important; height: 38px !important; padding-left: 16px !important; font-size: 15px !important; }
body.gen-renew .search_bar .sch-btn { border-radius: 0 20px 20px 0 !important; height: 38px !important; background-color: #fff !important; }

/* 섹션 메뉴 */
body.gen-renew .navms { background: #fff !important; border-bottom: 1px solid var(--gen-line) !important; }
body.gen-renew .navms .frame ul li a { font-size: 16px !important; font-weight: 700 !important; color: var(--gen-text) !important; }
body.gen-renew .navms .frame ul li.on a { color: var(--gen-red) !important; box-shadow: inset 0 -3px 0 var(--gen-red); }
body.gen-renew .navms .scrollbar { opacity: 0; height: 2px !important; }

/* ---------- 헤드라인 ---------- */
body.gen-renew .headline { margin-top: -10px; margin-bottom: 0 !important; background: var(--gen-navy-d); }
body.gen-renew .headline .slider_con a:after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 60%; background: linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,.82)); pointer-events: none; }
body.gen-renew .headline h3 { z-index: 2; text-align: left !important; padding: 0 18px !important; bottom: 22px !important; font-size: 20px !important; font-weight: 800 !important; line-height: 1.38 !important; color: #fff !important; text-shadow: 0 1px 6px rgba(0,0,0,.4); word-break: keep-all; }
body.gen-renew .headline h3 * { color: #fff !important; }
body.gen-renew .headline .img_box img { width: 100% !important; height: auto; }

/* 실시간 */
body.gen-renew .realtime { height: 46px !important; line-height: 46px !important; border-bottom: 1px solid var(--gen-line) !important; border-top: 0 !important; }
body.gen-renew .realtime h2 { height: 46px !important; line-height: 46px !important; background: none !important; }
body.gen-renew .realtime h2 em { background: var(--gen-red) !important; border: 0 !important; border-radius: 3px; padding: 4px 7px !important; font-style: normal; font-weight: 700; color: #fff !important; }
body.gen-renew .realtime .rt_body { margin-top: -46px !important; height: 46px !important; }
body.gen-renew .realtime .rt_body a, body.gen-renew .realtime .rt_body li { height: 46px !important; line-height: 46px !important; font-size: 15px !important; font-weight: 600 !important; color: var(--gen-ink) !important; }

/* ---------- 섹션 공통 ---------- */
body.gen-renew section { margin-top: 10px; border-top: 0 !important; border-bottom: 0 !important; background: #fff; }
body.gen-renew section.realtime, body.gen-renew .headline + section { margin-top: 0; }
body.gen-renew section h2, body.gen-renew section h2.title {
	position: relative; height: auto !important; line-height: 1.3 !important; padding: 18px 16px 12px 28px !important; background: #fff !important; border-bottom: 1px solid var(--gen-line) !important;
	font-size: 19px !important; font-weight: 800 !important; color: var(--gen-ink) !important; letter-spacing: -0.03em;
}
body.gen-renew section h2:before { content: ""; position: absolute; left: 16px; top: 21px; width: 4px; height: 17px; background: var(--gen-red); border-radius: 1px; }
body.gen-renew section.realtime h2:before { display: none; }
body.gen-renew section h2 i { display: none; }

/* 목록형 */
body.gen-renew section .li_txt li { height: auto !important; line-height: 1.5 !important; padding: 13px 16px !important; border-top: 1px solid #f0f1f3 !important; font-size: 16px !important; }
body.gen-renew section .li_txt li a { color: var(--gen-text) !important; font-weight: 500; }
body.gen-renew section .li_img li, body.gen-renew section .li_mov li { padding: 16px 8px !important; border-color: #f0f1f3 !important; }
body.gen-renew section .li_img li img, body.gen-renew section .li_mov li img, body.gen-renew section .img_box, body.gen-renew section .img_box img { border-radius: 6px; }
body.gen-renew section .li_img li dt, body.gen-renew section .li_mov li dt { font-size: 15px !important; font-weight: 700 !important; line-height: 1.45 !important; height: 2.9em !important; text-align: left !important; color: var(--gen-ink) !important; }
body.gen-renew section .li_webz li { padding: 14px 16px !important; border-bottom: 1px solid #f0f1f3 !important; }
body.gen-renew section .li_webz dt { font-size: 16px !important; font-weight: 600 !important; line-height: 1.45 !important; height: 2.9em !important; color: var(--gen-ink) !important; }
body.gen-renew section .li_webz dd img, body.gen-renew section .li_webz .img_box { border-radius: 6px; }
body.gen-renew section .li_webz dd.date, body.gen-renew section .date { color: var(--gen-mute) !important; font-size: 13px !important; }
body.gen-renew section .li_card li a dl dt, body.gen-renew section .li_card2 dt { color: var(--gen-ink) !important; font-weight: 700 !important; }
body.gen-renew section .li_item li { height: auto !important; padding: 12px 16px !important; border-color: #f0f1f3 !important; }
body.gen-renew section .li_item li dl dt { font-size: 15.5px !important; font-weight: 500 !important; line-height: 1.45 !important; height: 2.9em !important; color: var(--gen-text) !important; }
body.gen-renew section .li_item dt em { font-style: normal !important; font-weight: 800 !important; font-size: 17px !important; color: var(--gen-navy) !important; width: 20px; height: auto !important; }
body.gen-renew section .li_item li:nth-child(-n+3) dt em { color: var(--gen-red) !important; }
body.gen-renew .category_m { color: var(--gen-blue) !important; font-weight: 600; }

/* 더보기 버튼 */
body.gen-renew .more_btn2 { background: #fff !important; padding: 10px 16px 16px; height: auto !important; line-height: 1 !important; margin-top: 0 !important; }
body.gen-renew .more_btn2 button { height: 42px; line-height: 40px; border: 1px solid var(--gen-line) !important; border-radius: 21px; color: var(--gen-sub) !important; font-size: 14.5px !important; font-weight: 600; background: #fff; }
body.gen-renew .more_btn3 button { background: var(--gen-navy) !important; border: 0 !important; border-radius: 8px !important; color: #fff !important; }

/* ---------- 기사 보기 ---------- */
body.gen-renew .view_con, body.gen-renew .article_con .view_con { font-size: 17px !important; line-height: 1.85 !important; color: #222 !important; word-break: keep-all; }
body.gen-renew .view_con img { max-width: 100% !important; height: auto !important; border-radius: 4px; }

/* ---------- 하단 ---------- */
body.gen-renew .nav_box { margin: 10px 0 0 !important; border: 0 !important; background: #fff !important; }
body.gen-renew .nav_box ul li { border-color: #f0f1f3 !important; height: 46px !important; line-height: 46px !important; }
body.gen-renew .nav_box ul li a { font-size: 15px !important; font-weight: 600; color: var(--gen-text) !important; }
body.gen-renew footer { background: var(--gen-navy-d) !important; color: #cbd5e1 !important; padding: 22px 16px 30px !important; box-sizing: border-box; }
body.gen-renew footer .btn_gp { text-align: center; margin-bottom: 16px; }
body.gen-renew footer .btn_gp a { display: inline-block; margin: 0 3px; padding: 0 14px; height: 32px; line-height: 32px; border: 1px solid rgba(255,255,255,.3) !important; border-radius: 16px; background: transparent !important; color: #fff !important; font-size: 13.5px !important; box-shadow: none !important; }
body.gen-renew footer .foot, body.gen-renew footer .foot * { color: #cbd5e1 !important; font-size: 12.5px !important; line-height: 1.75 !important; background: none !important; text-align: center; }
body.gen-renew footer .foot { padding: 0 !important; height: auto !important; }

/* 보정 */
body.gen-renew section.realtime h2, body.gen-renew .realtime h2.title, body.gen-renew .realtime h2 { float: left !important; width: auto !important; padding: 0 !important; margin: 0 10px 0 0 !important; border: 0 !important; background: none !important; font-size: 12px !important; height: 46px !important; line-height: 46px !important; }
body.gen-renew .realtime { padding: 0 16px !important; background: #fff !important; }
body.gen-renew .realtime .rt_body { padding-left: 52px !important; }
body.gen-renew .news_title { font-size: 23px !important; font-weight: 800 !important; line-height: 1.38 !important; letter-spacing: -0.04em; color: var(--gen-ink) !important; word-break: keep-all; height: auto !important; }
body.gen-renew .news_sub-title { font-size: 16px !important; font-weight: 600 !important; line-height: 1.55 !important; color: var(--gen-sub) !important; border-left: 3px solid var(--gen-line); padding-left: 12px !important; word-break: keep-all; }
body.gen-renew .view_con p { margin: 0 0 .9em; }

/* =====================================================================
   모바일 왼쪽 메뉴(☰) — 메뉴 스킨 1·2 공통
   + 를 누르면 하위메뉴 펼침 / 메뉴 이름은 해당 섹션으로 이동, 글자 진하게
   ===================================================================== */
body.gen-renew .side_menu, body.gen-renew .side_menu2 { position: fixed !important; top: 0 !important; left: 0 !important; height: 100vh !important; overflow-y: auto !important; -webkit-overflow-scrolling: touch; background: #fbf8f1 !important; box-shadow: 6px 0 24px rgba(9,22,41,.3) !important; border: 0 !important; }
body.gen-renew .side_menu { width: 86% !important; max-width: 320px; }
body.gen-renew .side_menu .menu_hd, body.gen-renew .side_menu2 .menu_hd { background: #091629 !important; border-bottom: 2px solid #e5b564; }
body.gen-renew .side_menu .menu_hd .login_txt, body.gen-renew .side_menu2 .menu_hd .login_txt { color: #e6cd94 !important; }
body.gen-renew .side_menu .menu_hd .login_btn, body.gen-renew .side_menu2 .menu_hd .login_btn { background: #e5b564 !important; border-radius: 12px !important; }
body.gen-renew .side_menu .menu_hd .login_btn button, body.gen-renew .side_menu2 .menu_hd .login_btn button { color: #091629 !important; font-weight: 700; }
body.gen-renew .side_menu .menu_con, body.gen-renew .side_menu2 .menu_con { height: auto !important; overflow: visible !important; }
body.gen-renew .side_menu .menu_con > li, body.gen-renew .side_menu2 .menu_con > li { position: relative; border-bottom: 1px solid #e6dcc8 !important; background: transparent !important; }
body.gen-renew .side_menu .menu_con > li > a, body.gen-renew .side_menu2 .menu_con > li > a {
	display: block; height: 54px !important; line-height: 54px !important; padding: 0 60px 0 22px !important;
	background-image: none !important; font-size: 16px !important; font-weight: 700 !important; color: #1f2430 !important;
}
/* + / − 표시 */
body.gen-renew .side_menu .menu_con > li.side_menu_first:after, body.gen-renew .side_menu2 .menu_con > li.side_menu_first:after {
	content: "+"; position: absolute; right: 0; top: 0; width: 56px; height: 54px; line-height: 52px; text-align: center; font-size: 24px; font-weight: 400; color: #091629; pointer-events: none;
}
body.gen-renew .side_menu .menu_con > li.side_menu_first.on:after, body.gen-renew .side_menu2 .menu_con > li.side_menu_first.on:after { content: "−"; }
body.gen-renew .side_menu2 .gen-m-tg { position: absolute; right: 0; top: 0; width: 56px; height: 54px; z-index: 2; cursor: pointer; }
/* 하위메뉴 */
body.gen-renew .side_menu .menu_con > li > ul, body.gen-renew .side_menu2 .menu_con > li > ul { background: #f3ecdd !important; border-top: 1px solid #e6dcc8 !important; padding: 4px 0 10px !important; }
body.gen-renew .side_menu .menu_con > li > ul > li, body.gen-renew .side_menu2 .menu_con > li > ul > li { height: auto !important; line-height: 1.4 !important; padding: 0 !important; float: none !important; width: auto !important; }
body.gen-renew .side_menu .menu_con > li > ul > li > a, body.gen-renew .side_menu2 .menu_con > li > ul > li > a { display: block; padding: 11px 22px 11px 38px !important; font-size: 15px !important; font-weight: 500 !important; color: #3a342c !important; }
body.gen-renew .side_menu .menu_con > li > ul > li > a:before, body.gen-renew .side_menu2 .menu_con > li > ul > li > a:before { content: "·"; margin: 0 8px 0 -12px; color: #a5574a; font-weight: 800; }
body.gen-renew .side_menu .menu_bt, body.gen-renew .side_menu .menu_footer { background: #f1eadb !important; }
body.gen-renew .side_menu .menu_bt li a { border-color: #d8ccb4 !important; background: #fff !important; color: #1f2430 !important; }
body.gen-renew .side_menu .menu_footer, body.gen-renew .side_menu .menu_footer * , body.gen-renew .side_menu2 .menu_footer, body.gen-renew .side_menu2 .menu_footer * { color: #6b6152 !important; }
/* 메뉴 가로 밀림 방지 */
body.gen-renew .side_menu, body.gen-renew .side_menu2 { overflow-x: hidden !important; overscroll-behavior: contain; }

/* 10개 언어 선택 (모바일 떠있는 버튼) */
body.gen-renew .gen-lang-float { position: fixed; left: 12px; bottom: 14px; z-index: 99990; }
body.gen-renew .gen-lang-float .gen-lang-btn { display: inline-flex; align-items: center; gap: 5px; height: 34px; padding: 0 13px; border: 1px solid #e5b564; border-radius: 17px; background: #091629; color: #e6cd94; font-size: 13px; font-weight: 700; box-shadow: 0 4px 14px rgba(0,0,0,.3); }
body.gen-renew .gen-lang-float .gen-lang-list { display: none; position: absolute; bottom: 42px; left: 0; min-width: 150px; margin: 0; padding: 6px 0; list-style: none; background: #fbf8f1; border: 1px solid #ddd2bd; border-radius: 12px; box-shadow: 0 10px 28px rgba(9,22,41,.3); }
body.gen-renew .gen-lang-float.open .gen-lang-list { display: block; }
body.gen-renew .gen-lang-float .gen-lang-list a { display: block; padding: 10px 16px; font-size: 15px; color: #1f2430; text-decoration: none; }
body.gen-renew .gen-lang-float .gen-lang-list a.on { color: #a5574a; font-weight: 700; }
body.gen-renew { top: 0 !important; }
.goog-te-banner-frame, .skiptranslate iframe, #goog-gt-tt, .VIpgJd-ZVi9od-ORHb-OEVmcd, .VIpgJd-ZVi9od-aZ2wEe-wOHMyf { display: none !important; }

body.gen-renew .gen-lang-btn .gen-lang-sep { font-style: normal; opacity: .5; margin: 0 2px; }

/* 신문지 바탕 (PC와 같은 색·질감, 미리 그린 그림 파일이라 가벼움) — 흰 바탕으로 되돌리려면 이 블록만 지우세요 */
body.gen-renew { background-color: #ece4d3 !important; background-image: url('../../images/gen_tex_paper.jpg?v=1') !important; background-repeat: repeat !important; background-size: 420px 420px !important; background-blend-mode: multiply; }
body.gen-renew section, body.gen-renew section h2, body.gen-renew .navms, body.gen-renew .realtime, body.gen-renew .more_btn2, body.gen-renew .nav_box {
	background-color: #f7f2e7 !important; background-image: url('../../images/gen_tex_card.jpg?v=1') !important; background-repeat: repeat !important; background-size: 420px 420px !important; background-blend-mode: multiply;
}
body.gen-renew section h2, body.gen-renew .realtime, body.gen-renew .navms { border-color: #ddd2bd !important; }
body.gen-renew section .li_txt li, body.gen-renew section li { border-color: #e3d9c6 !important; }
body.gen-renew .side_menu .menu_bt li a { background: #fbf8f1 !important; }
body.gen-renew section ul, body.gen-renew section ol, body.gen-renew .slide_item_ ul, body.gen-renew .more_btn2 button,
body.gen-renew article.news_article, body.gen-renew article.related_news, body.gen-renew .select_bar { background-color: transparent !important; }
body.gen-renew .more_btn2 button { background-color: #fbf8f1 !important; border-color: #d8ccb4 !important; }
body.gen-renew .contents { background-color: #f7f2e7 !important; background-image: url('../../images/gen_tex_card.jpg?v=1') !important; background-size: 420px 420px !important; background-blend-mode: multiply; }
body.gen-renew .navms .frame ul li, body.gen-renew .navms .frame ul li.on, body.gen-renew .navms .frame ul li a { background-color: transparent !important; }
body.gen-renew .navms .frame ul li, body.gen-renew .navms .frame ul li a { white-space: nowrap !important; }
/* 실시간 줄: 꼬리표 길이(실시간 / Real-time 등)에 맞춰 기사 제목이 자동으로 옆으로 밀리게 */
body.gen-renew .realtime { display: flex !important; align-items: center; gap: 10px; }
body.gen-renew .realtime h2 { flex: 0 0 auto; float: none !important; margin: 0 !important; white-space: nowrap; }
body.gen-renew .realtime .rt_body { flex: 1 1 auto; min-width: 0; float: none !important; width: auto !important; margin-top: 0 !important; padding-left: 0 !important; position: relative; }
body.gen-renew .realtime .rt_body li { left: 0 !important; right: 0; }
