/* ============================================
   전체메뉴보기 오버레이 (sitemap7 위젯 래핑)
   ============================================ */
.allmenu{
	display:none;
	position:fixed;
	left:0; top:0; right:0; bottom:0;
	width:100%; height:100%;
	z-index:100000000;
	background-color:rgb(0,0,0);           /* fallback */
	background-color:rgba(0,0,0,0.6);
	box-sizing:border-box;
	padding:60px 20px;
	overflow-y:auto;
	-webkit-overflow-scrolling:touch;
}

/* 중앙 패널 */
.allmenu .allmenu_panel{
	position:relative;
	width:100%;
	max-width:1520px;
	margin:0 auto;
	background:#fff;
	border-radius:16px;
	box-shadow:0 10px 40px rgba(0,0,0,0.3);
	box-sizing:border-box;
	overflow:hidden;
}

/* 상단 타이틀 바 */
.allmenu .allmenu_top{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding:20px 30px;
	border-bottom:1px solid #eee;
	box-sizing:border-box;
}
.allmenu .allmenu_title{
	margin:0;
	font-size:22px;
	font-weight:700;
	color:#222;
	letter-spacing:-1px;
}
.allmenu .all_close{
	display:flex;
	align-items:center;
	justify-content:center;
	width:40px; height:40px;
	border:0;
	border-radius:50%;
	background:#222;
	color:#fff;
	font-size:20px;
	line-height:1;
	cursor:pointer;
	transition:background 0.2s;
}
.allmenu .all_close:hover{background:var(--point-color, #444);}

/* 위젯 출력 영역 */
.allmenu .allmenu_body{
	padding:30px;
	box-sizing:border-box;
}

/* --- sitemap 위젯 출력 일반화 스타일 ---
   위젯 스킨 마크업에 의존하지 않는 최소한의 정렬 보정.
   1차 메뉴 블록들을 균등 컬럼 그리드로 배치 */
.allmenu .allmenu_body > div > ul,
.allmenu .allmenu_body ul.sitemap{
	display:grid;
	grid-template-columns:repeat(auto-fill, minmax(200px, 1fr));
	gap:30px 24px;
	margin:0; padding:0;
	list-style:none;
}
.allmenu .allmenu_body ul{list-style:none; margin:0; padding:0;}
.allmenu .allmenu_body li{list-style:none;}

/* 1차 메뉴 (컬럼 헤더) */
.allmenu .allmenu_body > div > ul > li > a,
.allmenu .allmenu_body ul.sitemap > li > a{
	display:block;
	padding:0 0 10px 0;
	margin:0 0 10px 0;
	border-bottom:2px solid var(--point-color, #333);
	font-size:18px;
	font-weight:700;
	color:#222;
	text-decoration:none;
	letter-spacing:-1px;
	word-break:keep-all;
}

/* 2차 메뉴 */
.allmenu .allmenu_body > div > ul > li li a,
.allmenu .allmenu_body ul.sitemap > li li a{
	display:block;
	padding:6px 0;
	font-size:15px;
	font-weight:400;
	color:#555;
	text-decoration:none;
	line-height:1.4;
	word-break:keep-all;
}
.allmenu .allmenu_body a:hover{color:var(--point-color, #000); text-decoration:underline;}

/* 3차 메뉴 들여쓰기 */
.allmenu .allmenu_body > div > ul > li li li a,
.allmenu .allmenu_body ul.sitemap > li li li a{
	padding-left:12px;
	font-size:14px;
	color:#888;
}

/* 모바일 */
@media (max-width:768px){
	.allmenu{padding:20px 10px;}
	.allmenu .allmenu_body{padding:20px;}
	.allmenu .allmenu_body > div > ul,
	.allmenu .allmenu_body ul.sitemap{grid-template-columns:repeat(2, 1fr); gap:24px 16px;}
}
