/* theme09 — 08과 동일: 헤더/GNB 유지 + 로그인 mem_menu 우측 + 팝업 블랙 */

#authModal,
.casino-modal {
	display: none !important;
}

.theme_myMenu,
.mob_myMenu_info {
	display: none !important;
}

/* 하단 입금/출금(site_menu_2) 첫 칸과 GNB 가로 정렬 (로고는 common.css 그대로) */
#wrap .site_menu_2 {
	justify-content: flex-start !important;
	max-width: 1227px !important;
	padding-left: 12px !important;
	padding-right: 12px !important;
	box-sizing: border-box;
}

#wrap.user-auth .site_gnb,
#wrap.not-logged .site_gnb {
	top: 50% !important;
	transform: translate(0, -50%) !important;
	width: auto !important;
	max-width: min(520px, calc(100% - 300px));
	padding-left: 0 !important;
	padding-right: 0 !important;
	box-sizing: border-box;
}

@media screen and (min-width: 1228px) {
	#wrap.user-auth .site_gnb,
	#wrap.not-logged .site_gnb {
		left: calc(50% - 613.5px + 12px) !important;
	}
}

@media screen and (max-width: 1227px) {
	#wrap.user-auth .site_gnb,
	#wrap.not-logged .site_gnb {
		left: 12px !important;
	}
}

#wrap.user-auth .gnb_menu,
#wrap.not-logged .gnb_menu {
	margin: 0 !important;
	max-width: none !important;
}

#wrap.user-auth .gnb,
#wrap.not-logged .gnb,
#wrap.user-auth .gnb_in,
#wrap.not-logged .gnb_in {
	justify-content: flex-start !important;
}

#wrap.user-auth #header .header {
	transform: translate(-50%, -50%) !important;
}

#wrap.user-auth #header,
#wrap.user-auth .header_wrap {
	height: 80px;
	min-height: 80px;
}

#wrap.user-auth .header_wrap {
	justify-content: flex-end !important;
	align-items: center !important;
	flex-direction: row !important;
	padding: 0 20px !important;
}

#wrap.user-auth .theme_login {
	flex: 0 1 auto;
	max-width: min(680px, 58vw);
	z-index: 1001;
}

#wrap.user-auth .mem_menu_wrapper {
	justify-content: flex-end;
	flex-wrap: nowrap;
	gap: 6px;
}

#wrap.user-auth .mem_menu.mem_menu_logged {
	justify-content: flex-end;
	flex-wrap: wrap;
	align-items: center;
	gap: 5px 6px;
	max-width: 100%;
}

.mem_menu.mem_menu_logged li .m_stat {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: fit-content;
	height: 28px;
	padding: 2px 8px;
	font-size: 11px;
	font-weight: 600;
	color: #fff;
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: 4px;
	background: rgba(30, 30, 30, 0.9);
	white-space: nowrap;
}

.mem_menu.mem_menu_logged .m_nick strong {
	color: #fbff60;
}

.mem_menu.mem_menu_logged .m_money {
	color: #fbff60;
}

.mem_menu.mem_menu_logged .m_point {
	color: #f38adb;
}

.mem_menu.mem_menu_logged li a.m_dep,
.mem_menu.mem_menu_logged li a.m_wit {
	background: linear-gradient(180deg, #c78b14 0%, #8a5a0a 100%);
	border-color: #e0b040;
	color: #fff;
	font-size: 11px;
	min-width: 44px;
	height: 28px;
	padding: 2px 8px;
}

.mem_menu.mem_menu_logged li a.m_memo {
	background: rgba(243, 138, 219, 0.25);
	border-color: #f38adb;
	color: #ffd8f5;
	font-size: 11px;
	height: 28px;
	padding: 2px 8px;
}

.mem_menu.mem_menu_logged li a.m_logout {
	background: rgba(80, 80, 80, 0.9);
	border-color: #666;
	color: #eee;
	font-size: 11px;
	height: 28px;
	padding: 2px 8px;
}

.popup_box,
.popup_box .layer_content,
.popup_multi,
.popup_box .layer_body,
.popup_box .form_area,
.popup_box .cont_tab_area,
.popup_box .cont_write_area {
	background: #0d0d0d !important;
	background-color: #0d0d0d !important;
	border-color: #333 !important;
	color: #e8e8e8 !important;
}

.popup_box .pop_tt,
.popup_box .form_title h3,
.popup_box .title,
.popup_box .layer_head .title {
	color: #f0f0f0 !important;
}

.popup_box .form_text .input input,
.popup_box .form_text .input textarea,
.popup_box .form_textarea {
	background: #1a1a1a !important;
	border-color: #444 !important;
	color: #fff !important;
}

.popup_box .basic_tab li button,
.popup_box .basic_tab li.active button {
	color: #ddd !important;
}

.popup_box .close {
	background: #333 !important;
	border-color: #555 !important;
	color: #fff !important;
}

.popup_box.register.view {
	z-index: 100001;
}

.bg_mask {
	background: rgba(0, 0, 0, 0.75) !important;
}

.main_side .swiper-slide a.slideimg1,
.main_side .swiper-slide a.slideimg2 {
	background-size: cover !important;
	background-position: center center !important;
	background-repeat: no-repeat;
}

@media screen and (max-width: 1056px) {
	#wrap.user-auth .site_gnb,
	#wrap.not-logged .site_gnb {
		transform: none !important;
		left: auto !important;
		top: auto !important;
	}
	/* 모바일 메인 내정보 — 한 줄 compact (common.css li{width:100%} 덮어씀) */
	.mobile-mem-login {
		padding: 6px 8px;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
	.mobile-mem-login .mem_menu,
	.mobile-mem-login .mem_menu.mem_menu_logged {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		justify-content: flex-start !important;
		align-items: center !important;
		gap: 4px !important;
		width: 100%;
		min-width: 0;
	}
	.mobile-mem-login .mem_menu li {
		width: auto !important;
		flex: 0 0 auto !important;
		display: flex !important;
	}
	.mobile-mem-login .mem_menu li a,
	.mobile-mem-login .mem_menu.mem_menu_logged li .m_stat {
		width: auto !important;
		min-width: 0;
		height: 24px;
		padding: 1px 5px;
		font-size: 10px;
		line-height: 1.2;
		border-radius: 4px !important;
		white-space: nowrap;
	}
	.mobile-mem-login .mem_menu.mem_menu_logged li a.m_dep,
	.mobile-mem-login .mem_menu.mem_menu_logged li a.m_wit {
		min-width: 32px;
		height: 24px;
		padding: 1px 5px;
		font-size: 10px;
	}
	.mobile-mem-login .mem_menu.mem_menu_logged li a.m_memo,
	.mobile-mem-login .mem_menu.mem_menu_logged li a.m_logout {
		height: 24px;
		padding: 1px 5px;
		font-size: 10px;
	}
	.mobile-mem-login .mem_menu.mem_menu_logged .m_nick strong {
		font-size: 10px;
	}
}

/* ── theme09 AJAX 모달 (쪽지·고객센터 — getMemo/getCustom HTML 호환) ── */
.t9-ajax-overlay {
	display: none;
	position: fixed;
	inset: 0;
	z-index: 100050;
	background: rgba(0, 0, 0, 0.88);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	align-items: center;
	justify-content: center;
	padding: 16px;
	overflow-y: auto;
}
.t9-ajax-overlay.active {
	display: flex;
}
.t9-ajax-box {
	position: relative;
	width: 100%;
	max-width: 720px;
	max-height: 92vh;
	overflow: auto;
	background: #1a1028;
	border: 1px solid #c78b14;
	border-radius: 14px;
	box-shadow: 0 0 40px rgba(199, 139, 20, 0.2);
}
.t9-ajax-box.wide {
	max-width: 920px;
}
.t9-ajax-close {
	position: sticky;
	top: 0;
	float: right;
	z-index: 5;
	margin: 10px 10px 0 0;
	width: 38px;
	height: 38px;
	border: none;
	border-radius: 8px;
	background: rgba(0, 0, 0, 0.45);
	color: #ccc;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
}
.t9-ajax-close:hover {
	color: #f38adb;
	background: rgba(243, 138, 219, 0.15);
}
.t9-ajax-body {
	clear: both;
	padding: 8px 16px 24px;
	color: #eee;
}
.t9-ajax-body table.bs-table,
.t9-ajax-body .bs-table {
	width: 100% !important;
	border-collapse: collapse;
}
.t9-ajax-body .bs-table thead th,
.t9-ajax-body .bs-table tbody td {
	padding: 10px 12px !important;
	font-size: 13px !important;
	vertical-align: middle;
	border-color: rgba(255, 255, 255, 0.08) !important;
}
.t9-ajax-body .title-td {
	cursor: pointer;
}
.t9-ajax-body .message-content,
.t9-ajax-body .qna-content,
.t9-ajax-body #message-detail,
.t9-ajax-body #qna-detail {
	color: #e8e8e8;
	line-height: 1.6;
	word-break: break-word;
}
.t9-ajax-body .memo-row-unread .title-td {
	font-weight: 700;
}

/* 쪽지·고객센터 AJAX — style.css 미로드 보정 (원본 bs-table·모달 헤더 톤) */
.t9-ajax-body .modal-dialog,
.t9-ajax-body .modal-content,
.t9-ajax-body .modal-header,
.t9-ajax-body .modal-body,
.t9-ajax-body .modal-footer {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
	height: auto !important;
}
.t9-ajax-body .modal-header {
	min-height: 52px;
	margin-bottom: 12px !important;
	padding: 0 !important;
	display: flex;
	align-items: center;
	justify-content: center;
}
.t9-ajax-body .modal-header .title-panel {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 200px;
	max-width: 320px;
	height: 48px;
	padding: 0 28px;
	border-radius: 8px;
	background: linear-gradient(180deg, #3d2a52 0%, #1f1428 100%);
	border: 1px solid rgba(243, 138, 219, 0.35);
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.35);
}
.t9-ajax-body .modal-header .title-panel .title {
	font-size: 20px;
	font-weight: 800;
	color: #f8e8ff !important;
	-webkit-text-fill-color: #f8e8ff !important;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
	letter-spacing: 0.02em;
}
.t9-ajax-body .modal-header .title-panel .bullets {
	display: none;
}
.t9-ajax-body .modal-body {
	padding: 4px 4px 12px !important;
	color: #eee;
}
.t9-ajax-body .bs-table {
	border-collapse: separate !important;
	border-spacing: 0 4px !important;
}
.t9-ajax-body .bs-table thead th {
	height: 44px;
	color: #fff !important;
	font-size: 12px !important;
	font-weight: 700;
	text-align: center;
	background: #3d2a52 !important;
	border: none !important;
}
.t9-ajax-body .bs-table thead th:first-child {
	border-radius: 6px 0 0 6px;
}
.t9-ajax-body .bs-table thead th:last-child {
	border-radius: 0 6px 6px 0;
}
.t9-ajax-body .bs-table tbody td {
	color: #f0f0f0 !important;
	font-size: 13px !important;
	background: rgba(255, 255, 255, 0.06) !important;
	border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}
.t9-ajax-body .bs-table tbody tr:hover td {
	background: rgba(243, 138, 219, 0.12) !important;
}
.t9-ajax-body .bs-table .title-td {
	color: #f5f5f5 !important;
	text-align: left !important;
	padding-left: 14px !important;
}
.t9-ajax-body .bs-table .title-td:hover {
	color: #f38adb !important;
}
.t9-ajax-body .bs-table .date-td {
	color: #b8b0c4 !important;
	white-space: nowrap;
}
.t9-ajax-body .bs-table .count-tag {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 24px;
	height: 24px;
	padding: 0 8px;
	border-radius: 6px;
	color: #fff !important;
	font-size: 12px;
	font-weight: 700;
	background: linear-gradient(180deg, #c38fff, #7135b7);
	box-shadow: 0 1px 0 rgba(0, 0, 0, 0.4);
}
.t9-ajax-body .memo-dot {
	display: inline-block;
	width: 7px;
	height: 7px;
	margin-right: 6px;
	border-radius: 50%;
	background: #f38adb;
	vertical-align: middle;
}
.t9-ajax-body .message-content {
	margin-top: 4px;
	padding: 16px 18px;
	border-radius: 10px;
	background: rgba(0, 0, 0, 0.35);
	border: 1px solid rgba(199, 139, 20, 0.25);
}
.t9-ajax-body .message-content .inner-container,
.t9-ajax-body #message-detail {
	color: #ececec !important;
	font-size: 14px;
	line-height: 1.65;
	min-height: 120px;
}
.t9-ajax-body .t9-memo-footer {
	padding: 16px 0 8px !important;
	justify-content: center !important;
}
.t9-ajax-body .t9-memo-actions {
	display: flex;
	justify-content: center;
	width: 100%;
	max-width: 280px;
	margin: 0 auto;
}
.t9-ajax-body .t9-memo-actions .btn.basic {
	width: 100%;
	min-height: 46px;
	border-radius: 8px;
	cursor: pointer;
}
.t9-ajax-body .t9-memo-actions .btn.basic span {
	color: #fff !important;
	font-size: 14px;
	font-weight: 700;
}

/* 입금/출금 탭 — 한 줄 (ul.basic_tab 직접 구조 보정) */
.popup_box.depositLayer ul.basic_tab.mypageTab {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	width: 100%;
	list-style: none;
	margin: 0 0 10px;
	padding: 0;
	height: auto;
	min-height: 48px;
}
.popup_box.depositLayer ul.basic_tab.mypageTab > li {
	flex: 1 1 50%;
	width: 50% !important;
	max-width: 50%;
	height: 48px;
	float: none;
	display: list-item;
}
.popup_box.depositLayer ul.basic_tab.mypageTab > li button {
	width: 100%;
	height: 48px;
	white-space: nowrap;
}

/* 마이페이지 레이아웃 */
.mypageLayer .theme09-mypage-body {
	padding: 16px 20px 22px;
}
.mypageLayer .theme09-mypage-card {
	padding: 14px 16px;
	border-radius: 8px;
}
.mypageLayer .theme09-mypage-row {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 12px;
	margin-bottom: 10px;
}
.mypageLayer .theme09-mypage-row:last-child {
	margin-bottom: 0;
}
.mypageLayer .theme09-mypage-row .form_title {
	min-width: 76px;
	flex-shrink: 0;
	margin: 0;
}
.mypageLayer .theme09-mypage-row .form_title h3 {
	margin: 0;
	font-size: 14px;
	white-space: nowrap;
}
.mypageLayer .theme09-mypage-row .form_text {
	flex: 1;
	min-width: 0;
}
.mypageLayer .theme09-mypage-row .form_text .input input {
	width: 100%;
	box-sizing: border-box;
}
.mypageLayer .theme09-mypage-actions {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	gap: 10px;
	margin-top: 18px;
}
.mypageLayer .theme09-mypage-actions button {
	flex: 1 1 50%;
	min-width: 0;
}

/* 고객센터 답변 상세 */
.theme09-cs-detail .theme09-cs-detail-body {
	min-height: 160px;
	max-height: 42vh;
	overflow: auto;
	padding: 12px 14px;
	line-height: 1.65;
	word-break: break-word;
}
.csCenterLayer .theme09-cs-list-actions {
	margin-top: 12px;
}

/* 모바일 GNB · 카지노/슬롯 목록 — 썸네일 박스 꽉 채움 + 게임사명 하단 */
.game_menus ul {
	gap: 10px;
}
.game_menus ul li,
.game_menus ul li:nth-child(even) {
	width: calc(50% - 5px) !important;
	margin-left: 0 !important;
	margin-bottom: 0;
	overflow: hidden;
	padding: 0;
}
.game_menus ul li a {
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	height: auto !important;
	min-height: 0;
	padding: 0 !important;
	line-height: 1.35;
}
.game_menus ul li a .t9-game-thumb,
.game_menus ul li i.t9-game-thumb {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	min-height: 110px;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: #111;
}
.game_menus ul li a .t9-game-thumb img,
.game_menus ul li i.t9-game-thumb img,
.game_menus ul li i img {
	width: 100% !important;
	height: 100% !important;
	min-height: 110px;
	object-fit: cover !important;
	display: block !important;
}
.game_menus ul li a .t9-game-name {
	width: 100% !important;
	padding: 10px 8px;
	text-align: center;
	font-size: 13px;
	font-weight: 600;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
@media screen and (max-width: 480px) {
	.game_menus ul li,
	.game_menus ul li:nth-child(even) {
		width: calc(50% - 5px) !important;
	}
	.game_menus ul li a .t9-game-thumb,
	.game_menus ul li i.t9-game-thumb {
		min-height: 100px;
		aspect-ratio: 4 / 3;
	}
}

/* 게임 목록 페이지 — 상단「메인으로」(menu_type·탭 버튼 톤) */
.t9-game-list-top .t9-back-main-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 112px;
	min-height: 44px;
	padding: 10px 20px;
	font-size: 1.3rem;
	font-weight: 600;
	line-height: 1.2;
	color: #fff;
	text-decoration: none;
	border: 1px solid rgb(100, 90, 60);
	background: rgba(36, 36, 36, 0.88);
	border-radius: 4px;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
	white-space: nowrap;
}
.t9-game-list-top .t9-back-main-btn:hover,
.t9-game-list-top .t9-back-main-btn:active {
	background-color: rgba(250, 204, 21, 0.75);
	border-color: rgba(250, 204, 21, 0.55);
	color: #fff;
}
@media screen and (max-width: 480px) {
	.t9-game-list-top .t9-back-main-btn {
		min-width: 96px;
		min-height: 40px;
		padding: 9px 16px;
		font-size: 1.2rem;
	}
}

/* 모바일 햄버거(GNB) — 게임사 목록 하단 잘림 방지 */
@media screen and (max-width: 1056px) {
	.panel.left.active {
		overflow-y: auto;
		overflow-x: hidden;
		-webkit-overflow-scrolling: touch;
	}
	.panel.left.active .gnb_menu.mobGnb {
		height: auto;
		min-height: 100%;
		overflow: visible;
	}
	.mobGnb .gnb_tab {
		height: auto;
		min-height: calc(100dvh - 178px);
	}
	.mobGnb .gnb_tab_scroll {
		height: auto !important;
		max-height: none;
		overflow: visible;
		display: block;
	}
	.mobGnb .gnb_tab_inner {
		height: auto;
		min-height: 0;
		overflow: visible;
		display: flex;
		flex-direction: column;
		padding-bottom: 28px;
	}
	.mobGnb .gnb_tab .menu_tab {
		flex: 0 0 auto;
	}
	.mobGnb .gnb_tab .cont_tab.toggleMenuContTab {
		flex: 1 1 auto;
		min-height: 0;
		overflow: visible;
		padding-bottom: 20px;
	}
	.mobGnb .gnb_tab .cont_tab_area,
	.mobGnb .gnb_tab .game_menus,
	.mobGnb .gnb_tab .game_menus ul {
		overflow: visible;
	}
	.mobGnb .gnb_tab .game_menus ul {
		padding-bottom: 16px;
	}
}
@media screen and (max-width: 500px) {
	.mobGnb .gnb_tab_scroll {
		height: auto !important;
	}
}
@media screen and (max-width: 320px) {
	.mobGnb .gnb_tab_scroll {
		height: auto !important;
	}
}
