/* theme10 P-FIX: broken external asset fallbacks only. */

:root {
	--font-ff-body: "Paperlogy", "Pretendard", sans-serif;
	--font-ff-heading: "Paperlogy", "Pretendard", sans-serif;
}

.section_inner {
	background-image: none !important;
}

.gnb_right li,
.gnb_right li:hover {
	background-image: none !important;
}

.slide3 {
	background-image: url(../assets/images/content/banner-2.jpg?v=web02) !important;
}

@media screen and (max-width: 700px) {
	.slide3 {
		background-image: url(../assets/images/content/banner-m2.jpg?v=web02) !important;
	}
}

.theme10-game-grid .theme10-game-card,
.theme10-game-grid .theme10-game-card a {
	min-width: 0;
}

.theme10-game-grid .theme10-game-card a {
	display: block;
	position: relative;
	z-index: 1;
}

.theme10-game-grid .theme10-game-card .bg_slide_hover {
	pointer-events: none;
}

.btn_logout_mobile {
	display: none !important;
}

/* 20260605 UI polish: single hero, mobile drawer game cards, compact modals. */
.theme10-hero-static .theme10-hero-banners {
	display: block !important;
	width: 100% !important;
	overflow: hidden !important;
}

.theme10-hero-static .theme10-hero-banner {
	display: none !important;
	width: 100% !important;
	min-height: clamp(260px, 30vw, 420px) !important;
	background-size: cover !important;
	background-position: center center !important;
	border-radius: 18px !important;
}

.theme10-hero-static .theme10-hero-banner.slide1 {
	display: block !important;
}

@media all and (max-width: 1030px) {
	.panel.left.active {
		max-width: min(92vw, 520px) !important;
		background: linear-gradient(180deg, rgba(12,8,20,.98), rgba(20,11,32,.98)) !important;
		box-shadow: 14px 0 40px rgba(0,0,0,.55);
		overflow: hidden auto;
	}

	.panel.left.active .gnb_menu {
		display: block !important;
		padding: 12px 12px 18px !important;
	}

	.login .panel.active .gnb_afterLogin,
	.login .panel.active .gnb_afterLogin .theme_myMenu {
		display: block !important;
		width: 100% !important;
	}

	.panel.active .gnb_afterLogin.add_maintop {
		display: block !important;
		margin: 42px 0 8px !important;
		padding: 10px !important;
		border: 1px solid rgba(255,255,255,.12);
		border-radius: 16px;
		background: rgba(255,255,255,.055);
	}

	.panel.active .theme_myMenu {
		height: auto !important;
		padding: 0 !important;
		flex-direction: column !important;
		gap: 8px;
	}

	.panel.active .theme_myMenu .myMenuPage {
		display: grid !important;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 6px !important;
		width: 100%;
		position: static !important;
		top: auto !important;
		right: auto !important;
		left: auto !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.panel.active .theme_myMenu .myMenuPage span,
	.panel.active .theme_myMenu .myMenuPage a {
		display: flex !important;
		align-items: center;
		justify-content: center;
		min-width: 0 !important;
		width: 100% !important;
		height: 34px !important;
		margin: 0 !important;
		padding: 0 6px !important;
		border-radius: 10px !important;
		background: rgba(255,255,255,.08) !important;
		color: #fff;
		font-size: 12px !important;
		line-height: 1.1 !important;
		text-decoration: none !important;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.panel.active .theme_myMenu .myMenuPage .myMenu_name {
		grid-column: 1 / -1;
		justify-content: flex-start;
		padding: 0 10px !important;
		color: #f8fafc;
		background: linear-gradient(135deg, rgba(246,196,83,.22), rgba(143,92,255,.18)) !important;
	}

	.panel.active .theme_myMenu .myMenuPage .btn_logout_mobile {
		background: rgba(248,113,113,.20) !important;
		border: 1px solid rgba(248,113,113,.35);
		color: #fecaca !important;
	}

	.panel.active .theme_myMenu .myMenu_info {
		display: grid !important;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 6px !important;
		width: 100% !important;
		position: static !important;
		top: auto !important;
		right: auto !important;
		left: auto !important;
		margin: 0 !important;
		padding: 0 !important;
		background: transparent !important;
	}

	.panel.active .theme_myMenu .myMenu_info > span,
	.panel.active .theme_myMenu .myMenu_info > a,
	.panel.active .theme_myMenu .myMenu_info > .select_lang {
		display: flex !important;
		align-items: center;
		justify-content: center;
		min-width: 0 !important;
		width: 100% !important;
		height: 34px !important;
		margin: 0 !important;
		padding: 0 6px !important;
		border-radius: 10px !important;
		background: rgba(15,23,42,.78) !important;
		color: #f8fafc !important;
		font-size: 12px !important;
		line-height: 1.1 !important;
		text-decoration: none !important;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.panel.active .theme_myMenu .myMenu_info .btn_logout {
		display: none !important;
	}

	.panel.active .theme_myMenu .myMenu_info .m_money,
	.panel.active .theme_myMenu .myMenu_info .m_point {
		justify-content: flex-start !important;
		padding: 0 8px !important;
	}

	.panel.active .theme_myMenu .myMenu_info .m_money,
	.panel.active .theme_myMenu .myMenu_info .m_point {
		grid-column: span 1;
	}

	.btn_logout_mobile {
		display: flex !important;
	}

	.panel.active .select_lang .selectLangCont,
	.panel.active .select_lang .selectLangCont img {
		width: 22px !important;
		height: 22px !important;
		margin: 0 !important;
	}

	.panel.active .select_lang {
		position: static !important;
		top: auto !important;
		right: auto !important;
		left: auto !important;
		width: 34px !important;
		min-width: 34px !important;
		height: 34px !important;
		padding: 0 !important;
		margin: 0 !important;
		justify-self: end;
	}

	.panel.active .select_lang .selectLangCont {
		display: flex !important;
		align-items: center;
		justify-content: center;
		padding: 0 !important;
	}

	.panel.active .select_lang .lang_inner {
		top: 36px !important;
		right: 0 !important;
		left: auto !important;
	}

	.mobGnb .menu_type {
		gap: 6px !important;
		padding: 8px 0 10px !important;
		margin: 0 !important;
	}

	.menu_type li {
		width: auto !important;
		flex: 1 1 0 !important;
		height: 38px !important;
		margin: 0 !important;
		border-radius: 10px !important;
		overflow: hidden;
		background: rgba(255,255,255,.06);
	}

	.menu_type li a {
		height: 100% !important;
		font-size: 12px !important;
		font-weight: 700;
	}

	.gnb_tab {
		height: auto !important;
		min-height: calc(100dvh - 170px);
	}

	.gnb_tab_scroll,
	.gnb_tab_inner {
		height: auto !important;
		overflow: visible !important;
	}

	.menu_tab {
		position: sticky;
		top: 0;
		z-index: 2;
		padding: 8px 0;
		background: rgba(12,8,20,.98);
	}

	.toggleMenuTab {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
	}

	.toggleMenuTab li button {
		width: 100%;
		height: 40px;
		border-radius: 12px;
		background: rgba(255,255,255,.08);
		color: #fff;
		border: 1px solid rgba(255,255,255,.12);
	}

	.toggleMenuTab li.active button {
		background: linear-gradient(135deg, #f6c453, #8f5cff);
		color: #111;
	}

	.game_menus h3 {
		padding: 10px 2px 8px !important;
		line-height: 1.2 !important;
	}

	.game_menus ul {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px !important;
		justify-content: stretch !important;
	}

	.game_menus ul li,
	.game_menus ul li:nth-child(even) {
		width: 100% !important;
		margin: 0 !important;
		border: 1px solid rgba(255,255,255,.1) !important;
		border-radius: 14px !important;
		background: rgba(255,255,255,.065) !important;
		overflow: hidden;
	}

	.game_menus ul li a {
		height: 108px !important;
		padding: 7px !important;
		flex-direction: column-reverse !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 5px !important;
		line-height: 1.15 !important;
	}

	.game_menus ul li a span {
		width: 100% !important;
		text-align: center !important;
		font-size: 12px !important;
	}

	.game_menus ul li i {
		width: 100% !important;
		height: 74px !important;
		display: flex !important;
		align-items: center;
		justify-content: center;
		border-radius: 10px;
		overflow: hidden;
		background: rgba(0,0,0,.24);
	}

	.game_menus ul li i img {
		width: 100% !important;
		height: 100% !important;
		object-fit: cover !important;
		object-position: center center !important;
	}
}

.depositLayer .basic_tab.mypageTab {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
	height: auto !important;
}

.depositLayer .basic_tab.mypageTab li {
	width: auto !important;
	height: 42px !important;
	margin: 0 !important;
	border-radius: 10px !important;
	overflow: hidden;
}

.depositLayer .popup_button.btn_2 {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 6px !important;
	justify-content: center !important;
	margin-top: 8px !important;
}

.depositLayer .popup_button.btn_2 .btn {
	flex: 1 1 0 !important;
	min-width: 0 !important;
	height: 38px !important;
	padding: 0 6px !important;
	font-size: 12px !important;
}

@media screen and (max-width: 520px) {
	.depositLayer .popup_button.btn_2 {
		gap: 4px !important;
	}

	.depositLayer .popup_button.btn_2 .btn {
		height: 34px !important;
		font-size: 11px !important;
	}
}

@media all and (max-width: 1030px) {
	.panel.active .theme_myMenu .myMenuPage {
		display: grid !important;
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
		position: static !important;
	}

	.panel.active .theme_myMenu .myMenu_info {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 34px !important;
		position: static !important;
	}

	.panel.active .theme_myMenu .myMenuPage .myMenu_name {
		grid-column: 1 / -1 !important;
	}
}

/* [P-FIX 20260914 lucas] CS 문의하기 — register 448px·가로 flex 로 textarea 입력 불가/창 과소 */
.popup_box.register.csCenterinquireLayer {
	width: min(92vw, 640px) !important;
	max-width: 640px !important;
	min-height: 420px;
}
.popup_box.register.csCenterinquireLayer .layer_content {
	padding: 28px 24px 32px;
}
.popup_box.register.csCenterinquireLayer .form_area {
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	padding: 0;
}
.popup_box.register.csCenterinquireLayer .form {
	flex-direction: column;
	align-items: stretch;
	flex-wrap: nowrap;
	padding: 14px 12px;
}
.popup_box.register.csCenterinquireLayer .form .form_title,
.popup_box.register.csCenterinquireLayer .form .form_text {
	width: 100%;
	padding-left: 0;
}
.popup_box.register.csCenterinquireLayer .form .input {
	width: 100%;
	display: block;
	pointer-events: auto;
}
.popup_box.register.csCenterinquireLayer .form .input textarea,
.popup_box.register.csCenterinquireLayer #theme10-cs-content {
	min-height: 180px;
	width: 100% !important;
	box-sizing: border-box;
	pointer-events: auto;
	resize: vertical;
	font-size: 1.6rem;
	line-height: 1.5;
}
.popup_box.register.csCenterinquireLayer .popup_button {
	margin-top: 16px;
}

/* [P-FIX 20260914 lucas] 고객센터 문의작성 — 레이어 확대 */
.popup_box.register.csCenterinquireLayer {
  width: min(92vw, 560px) !important;
  max-width: 560px !important;
}
.popup_box.register.csCenterinquireLayer .layer_content {
  padding: 28px 26px 22px !important;
}
.popup_box.register.csCenterinquireLayer .form_area {
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
}
.popup_box.register.csCenterinquireLayer .form .input input,
.popup_box.register.csCenterinquireLayer .form .input textarea {
  width: 100% !important;
  min-height: 44px;
  font-size: 16px !important;
}
.popup_box.register.csCenterinquireLayer #theme10-cs-content {
  min-height: 200px !important;
}


/* [P-FIX 20260915 lucas CS_TEXTAREA] 문의 내용칸이 한 줄로 보이던 원인:
   common.css  이 height:38px + overflow:hidden 이라 부모가 textarea 를 잘랐다.
   textarea 를 품은 컨테이너만 높이 해제한다. */
.popup_box.register.csCenterinquireLayer .form .input.input_textarea {
  height: auto !important;
  min-height: 180px !important;
  overflow: visible !important;
  display: block !important;
  align-items: stretch !important;
  padding: 10px 14px !important;
}
.popup_box.register.csCenterinquireLayer .form .input.input_textarea textarea,
.popup_box.register.csCenterinquireLayer #theme10-cs-content {
  display: block !important;
  height: auto !important;
  min-height: 160px !important;
  width: 100% !important;
  border: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  color: #ffc43b !important;
  font-size: 1.5rem !important;
  line-height: 1.6 !important;
  resize: vertical !important;
  overflow: auto !important;
}

/* [P-FIX 20260915 lucas MENU4] 게임 대형버튼 4종 — 라이브카지노 / 호텔카지노 / 카지노머신 / 슬롯.
   게임 세팅이 4종인데 버튼이 2개뿐이라 나머지 두 섹션으로 갈 길이 없었다. */
.main_game_menu.main_game_menu_4 .mgm {
  width: calc(100% / 4 - 10px);
}
.main_game_menu .mgm_07 {
  background-image: url(../assets/images/content/img-machine.png);
}
.main_game_menu .mgm_07:hover a {
  background-image: url(../assets/images/content/img-machine-hover.png);
}
@media screen and (max-width: 1190px) {
  .main_game_menu.main_game_menu_4 {
    height: auto;
    flex-wrap: wrap;
  }
  .main_game_menu.main_game_menu_4 .mgm {
    width: calc(100% / 2 - 10px);
    height: auto;
    margin-bottom: 16px;
  }
  .main_game_menu.main_game_menu_4 .mgm .img {
    height: 420px;
  }
}
@media screen and (max-width: 767px) {
  .main_game_menu.main_game_menu_4 .mgm {
    width: calc(100% / 2 - 8px);
  }
  .main_game_menu.main_game_menu_4 .mgm .img {
    height: 280px;
  }
}
@media screen and (max-width: 500px) {
  .main_game_menu.main_game_menu_4 .mgm .img {
    height: 220px;
  }
}

/* 버튼 이미지는 파일명이 그대로라 브라우저 캐시에 옛 그림이 남는다 — 쿼리로 무효화 */
.main_game_menu .mgm_06 { background-image: url(../assets/images/content/img-hotel.png?v=lucas20260915d); }
.main_game_menu .mgm_06:hover a { background-image: url(../assets/images/content/img-hotel-hover.png?v=lucas20260915d); }
.main_game_menu .mgm_07 { background-image: url(../assets/images/content/img-machine.png?v=lucas20260915d); }
.main_game_menu .mgm_07:hover a { background-image: url(../assets/images/content/img-machine-hover.png?v=lucas20260915d); }

/* [P-FIX 20260920 lucas GNB4] 상단 카지노/슬롯/호텔/머신 — 기존 lefttop-button 4칸 */
.gnb li {
  width: auto;
  flex: 0 1 auto;
}
@media screen and (max-width: 1190px) {
  .gnb li {
    padding: 8px 12px;
    min-width: 0;
  }
  .gnb li a { font-size: 1.3rem; }
}
