/* ===== 충전/환전 모달 ===== */
.mny_overlay{display:none;position:fixed;inset:0;background:rgba(4,20,40,.55);z-index:100000;align-items:center;justify-content:center;padding:16px}
.mny_box{background:#fff;width:100%;max-width:400px;border-radius:10px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.4);max-height:92vh;display:flex;flex-direction:column}
.mny_head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:#043763;color:#fff;font-size:16px;font-weight:800}
.mny_x{cursor:pointer;font-size:22px;line-height:1;opacity:.85}
.mny_tabs{display:flex;flex:0 0 auto}
.mny_tabs button{flex:1;padding:13px;border:none;background:#eef3f8;color:#566;font-size:14px;font-weight:700;cursor:pointer;border-bottom:2px solid transparent}
.mny_tabs button.on{background:#fff;color:#043763;border-bottom-color:#007bc3}
.mny_body{padding:18px;overflow:auto}
.mny_acc{background:#f7fafc;border:1px solid #e3eaf2;border-radius:8px;padding:12px 14px;margin-bottom:14px;font-size:14px}
.mny_acc>div{display:flex;justify-content:space-between;padding:4px 0}
.mny_acc span{color:#8893a2}.mny_acc b{color:#043763}
.mny_acc.warn{color:#d92d39;text-align:center}
.mny_lb{display:block;font-size:13px;font-weight:700;color:#33455c;margin:10px 0 6px}
.mny_in{width:100%;height:44px;border:1px solid #cdd8e4;border-radius:7px;padding:0 12px;font-size:15px;box-sizing:border-box}
.mny_in.num{text-align:right;font-weight:800;color:#c0392b;font-size:18px}
.mny_amts{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:8px}
.mny_amts button{height:34px;border:1px solid #cdd8e4;background:#fff;border-radius:6px;font-size:12px;font-weight:700;color:#2a3b53;cursor:pointer}
.mny_amts button.clr{color:#d92d39;border-color:#f0c6cd}
.mny_msg{min-height:18px;font-size:13px;font-weight:700;margin:10px 0}
.mny_submit{width:100%;height:50px;border:none;border-radius:8px;background:#007bc3;color:#fff;font-size:16px;font-weight:800;cursor:pointer;margin-top:6px}
.mny_submit:active{background:#0a6aa8}
.mny_loading{text-align:center;color:#9aa6b2;padding:30px}

/* ===== 모바일 햄버거 헤더 / 드로어 (기본 숨김, 모바일에서 표시) ===== */
/* 기본(PC): 모바일 헤더/드로어 완전 숨김 */
.m_header,.m_drawer_ov{display:none !important}
.m_header{position:fixed;top:0;left:0;right:0;height:54px;background:#0b3a66;align-items:center;justify-content:space-between;padding:0 14px;z-index:99990}
.m_logo{color:#fff;font-size:18px;font-weight:800;text-decoration:none;letter-spacing:-.5px}
.m_ham{width:40px;height:40px;background:none;border:none;display:flex;flex-direction:column;justify-content:center;gap:5px;cursor:pointer;padding:8px}
.m_ham span{display:block;height:3px;background:#fff;border-radius:2px;transition:.25s}
.m_header.on .m_ham span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.m_header.on .m_ham span:nth-child(2){opacity:0}
.m_header.on .m_ham span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
.m_drawer_ov{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:99991;opacity:0;pointer-events:none;transition:.25s}
.m_drawer_ov.on{opacity:1;pointer-events:auto}
.m_drawer{position:absolute;top:0;right:0;width:280px;max-width:84%;height:100%;background:#fff;transform:translateX(100%);transition:.28s;overflow-y:auto;box-shadow:-6px 0 24px rgba(0,0,0,.3)}
.m_drawer_ov.on .m_drawer{transform:translateX(0)}
.m_acc{background:#0b3a66;color:#fff;padding:18px 18px 16px}
.m_nick{font-size:16px;font-weight:800;margin-bottom:10px}
.m_fin{display:flex;justify-content:space-between;font-size:13px;padding:3px 0;color:#cfe3f5}
.m_fin b{color:#ffe14d}
.m_btns{display:flex;gap:8px;margin-top:12px}
.m_btns button,.m_btns a{flex:1;text-align:center;border:none;border-radius:7px;padding:11px 0;font-size:14px;font-weight:800;cursor:pointer;text-decoration:none}
.m_btns .ch{background:#007bc3;color:#fff}.m_btns .ex{background:#f59e0b;color:#fff}
.m_btns .lg{background:#fff;color:#0b3a66}.m_btns .jn{background:#007bc3;color:#fff}
.m_links{display:flex;gap:14px;margin-top:12px;font-size:13px}
.m_links a{color:#cfe3f5;text-decoration:none}
.m_nav{display:flex;flex-direction:column;padding:6px 0}
.m_nav a{padding:15px 20px;font-size:16px;font-weight:700;color:#2a3b53;text-decoration:none;border-bottom:1px solid #eef2f7}
.m_nav a:active{background:#eef6fd}
body.m_lock{overflow:hidden}

/* ===== 모바일 전용 메인 홈 (PC 숨김) ===== */
.m_home{display:none}
@media (max-width:1240px){
	#article{display:none !important}
	.m_home{display:block !important;padding:12px;background:#eef1f5}
	.mh_links{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}
	.mh_links a{display:block;text-align:center;padding:15px 0;background:#0b3a66;color:#fff;border-radius:10px;font-size:14px;font-weight:800;text-decoration:none}
	.mh_card{background:#fff;border:1px solid #e2e8f4;border-radius:12px;padding:14px;margin-bottom:12px}
	.mh_card h3{font-size:15px;font-weight:800;color:#0b3a66;margin:0 0 10px;display:flex;justify-content:space-between;align-items:center}
	.mh_more{font-size:12px;color:#007bc3;font-weight:700;text-decoration:none}
	.mh_pbrow{display:flex;align-items:center;gap:4px;flex-wrap:wrap;font-size:14px}
	.mh_pbrow b{margin-right:4px;color:#333}
	.m_home .rb{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;color:#fff;font-weight:800;font-size:13px}
	.m_home .rb.s1{background:#f6c945}.m_home .rb.s2{background:#5ab6ef}.m_home .rb.s3{background:#ff6f6f}.m_home .rb.s4{background:#9aa7b4}.m_home .rb.s5{background:#7bc043}.m_home .rb.pb{background:#ff4757}
	.mh_pbo{margin-top:8px;font-size:12px;color:#7c8a9a}
	.mh_m,.mh_n{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid #eef2f7;text-decoration:none;color:#2a3b53;font-size:13px}
	.mh_m:last-child,.mh_n:last-child{border-bottom:none}
	.mh_m .t{color:#90a0b2;flex:0 0 auto;font-weight:700}
	.mh_m .nm{flex:1;text-align:right;font-weight:600}.mh_m em{color:#9aa3ba;font-style:normal;font-weight:400}
	.mh_n .nm{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mh_n .nm em{color:#d92d39;font-style:normal}
	.mh_n .dt{color:#90a0b2;flex:0 0 auto;font-size:12px}
}

/* ===== 모바일 반응형 (전 페이지 공통) ===== */
@media (max-width:1240px){
	/* 데스크탑 헤더/네비 숨기고 모바일 헤더 노출 */
	.topHeader,.nav_wrap{display:none !important}
	.m_header{display:flex !important}
	.m_drawer_ov{display:block !important}
	body{padding-top:54px !important}
}
@media (max-width:1240px){
	/* 고정폭 래퍼/최소폭 해제 → 화면폭에 맞춤 */
	html,body,#wrap,#container,.containerWrap,.contentSection,.main_section,.proto_wrap,
	.topHeader,.header_con,.nav_wrap,.gnbNav,.gnb,.footer,.foot_inner,
	.section_login,.contents,.login_content,.board_table,.sports_wrap{
		min-width:0 !important;
		width:auto !important;
		max-width:100% !important;
		box-sizing:border-box;
	}
	.contentSection,.proto_wrap,.header_con,.foot_inner{padding-left:10px !important;padding-right:10px !important}
}
@media (max-width:1240px){
	html,body{overflow-x:hidden !important}
	/* 상단 계정영역 줄바꿈 */
	.topAccount,.top_menu{float:none !important;width:auto !important}
	.topAccount .account{display:flex;flex-wrap:wrap;gap:3px 0;float:none !important;justify-content:flex-end}
	.topAccount .account li{float:none !important}
	.logo{float:none !important}
	/* 네비 가로 스크롤 */
	.gnb>ul,.gnbNav ul{display:flex !important;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}
	.gnb li,.gnbNav li{flex:0 0 auto;float:none !important}
	.gnb li a,.gnbNav li a{padding:0 14px}
		/* 프로토/파워볼/캐치: 베팅카트 하단 시트 — 평소엔 바만, 탭하면 위로 전체 펼침 */
		.sports_wrap{flex-direction:column !important}
		.sports_main{width:100% !important;flex:none !important;padding-bottom:66px}
		.sports_side{position:fixed !important;left:0;right:0;bottom:0;width:100% !important;flex:none !important;margin:0 !important;z-index:9500;pointer-events:none}
		.betcart{position:static !important;pointer-events:auto;display:flex;flex-direction:column;border-radius:14px 14px 0 0;box-shadow:0 -6px 24px rgba(0,0,0,.28);max-height:86vh;transform:translateY(calc(100% - 54px));transition:transform .28s ease}
		.betcart.cart-open{transform:translateY(0)}
		.betcart h3{flex:0 0 auto;cursor:pointer;position:relative;padding:16px 42px 16px 16px;text-align:left}
		.betcart h3 .cart_hint{font-weight:600;font-size:12px;opacity:.9;margin-left:6px}
		.betcart h3::after{content:"\25B2";position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:11px;transition:transform .28s}
		.betcart.cart-open h3::after{transform:translateY(-50%) rotate(180deg)}
		.betcart .bonus_box{flex:0 0 auto;overflow-y:auto;max-height:20vh}
		.betcart .cart_list{flex:1 1 auto;min-height:64px;max-height:none;overflow-y:auto}
		.betcart .cart_calc,.betcart .amt_input,.betcart .amt_grid,.betcart .cart_btns{flex:0 0 auto}
		.betcart .cart_btns button{height:46px}
	/* 다컬럼 레이아웃 전부 적층 (메인/게시판/기타) */
	.wrap_box,.wrap1,.wrap2,.wrap3,.box,[class*="col_"],.left_box,.right_box,.side,.aside{
		width:100% !important;float:none !important;display:block;box-sizing:border-box;
		margin-left:0 !important;margin-right:0 !important;
	}
	/* 메인 상단 박스들이 position:absolute 로 겹치는 문제 → 정상 흐름으로 적층 */
	.main_section .box,.wrap_box>section,.wrap_box>div,.win645,.win720,.speetto-new,[class*="wrap"]>section{
		position:static !important;left:auto !important;right:auto !important;top:auto !important;bottom:auto !important;
		width:100% !important;float:none !important;margin:0 0 12px !important;box-sizing:border-box;
	}
	.wrap_box,.wrap1,.wrap2,.wrap3,.main_section{height:auto !important;min-height:0 !important}
	/* 메인 박스 내부 절대배치 위젯(구매팁/롤링 등) 겹침 해제 */
	.main_section .box *,.main_section .content *{position:static !important}
	.rolling_tip,#tipRolling,.main_section [class*="rolling"],.main_section .btn{width:auto !important;max-width:100% !important;white-space:normal !important}
	.main_section .box .content{height:auto !important}
	/* 메인: 박스 내부 데스크탑 위치잡기용 좌우패딩 전부 제거 → 좌측 정렬 */
	.main_section .box,#article .box{padding:16px !important;box-sizing:border-box}
	.main_section .box *,#article .box *{padding-left:0 !important;padding-right:0 !important;background-position:left top !important}
	.main_section .box .content,#article .box .content,.interview_list,.speetto-new,.rolling_tip{padding:0 !important;margin-left:0 !important}
	/* 박스 헤더는 약간의 좌우 여백 유지 */
	.main_section .box header,#article .box header{padding:0 0 10px !important}
	/* 로그인/회원가입 폼 */
	.login_content,.section_login,.contents{width:100% !important;box-sizing:border-box}
	.login_content input,.section_login input{max-width:100%;box-sizing:border-box}
	/* 표는 가로 스크롤 허용 */
	.board_table,.tbl_wrap,.table_wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
	img{max-width:100%;height:auto}
	/* ===== 푸터 (모든 내부 블록 세로 적층) ===== */
	.footer,#footer{padding:18px 14px !important;min-width:0 !important;width:auto !important}
	.footer *,#footer *{float:none !important;position:static !important}
	.footer .foot_inner,.footer .foot_txt_wrap,.footer .foot_txt1,.footer .foot_txt2,
	.footer .mark1,.footer .logo,.footer .inner,.footer .dh,.footer [class*="foot"]{
		width:100% !important;min-width:0 !important;max-width:100% !important;display:block !important;
		box-sizing:border-box;margin-left:0 !important;margin-right:0 !important;text-align:left}
	.footer .mark1{text-align:center;margin-top:12px !important}
	.footer p,.footer>div,.footer .foot_inner>p,.footer .foot_inner>div{width:100% !important;max-width:100% !important;display:block !important;float:none !important;text-align:left}
	.footer p,.footer li,.footer span,.footer a,.footer dd,.footer dt{white-space:normal !important;word-break:keep-all;line-height:1.7}
	.footer .foot_inner{padding:14px !important;background-image:none !important}
	/* 데스크탑용 거대한 좌우패딩(워터마크/로고 자리) 제거 → 글자 정상 */
	.footer .foot_txt_wrap,.footer .foot_txt1,.footer .foot_txt2{padding:0 !important;background-image:none !important;min-height:0 !important}
	.footer ul:not(.foot_menu){display:block !important}
	.footer li{width:auto !important;margin:2px 0 !important}
	.footer img{max-width:100%;height:auto;display:inline-block;vertical-align:middle}
	.foot_menu{display:flex !important;flex-wrap:wrap;gap:4px 12px;width:100% !important;justify-content:center}
	.foot_menu li{display:inline-block !important;width:auto !important}
	.ml15{margin-left:0 !important;display:block}
}
@media (max-width:640px){
	.mt_head,.match_row{grid-template-columns:60px minmax(0,1fr) 50px minmax(0,1fr) 30px !important}
	.odds{padding:9px 7px !important;font-size:12px !important}
	.odds .od{min-width:34px !important}
	.bs_head,.bs_row{grid-template-columns:96px minmax(0,1fr) 44px minmax(0,1fr) !important}
	.pr_table th,.pr_table td{font-size:11px;padding:7px 3px}
	.rball{width:22px;height:22px;font-size:10px}
	.pbg_machine,.pbg_glass{width:240px !important;height:240px !important}
	.pbg_balls .gball{width:38px;height:38px;font-size:15px}
	.page_title{font-size:18px}
	.page_head h2{font-size:20px}
	/* 게시판 행/셀 폰트 축소 */
	.board_table th,.board_table td{font-size:12px;padding:8px 5px}
	table{max-width:100%}
}
@media (max-width:640px){
	/* 프로토 경기행/베팅판 폭 축소 */
	.mt_head,.match_row{grid-template-columns:60px minmax(0,1fr) 50px minmax(0,1fr) 30px !important}
	.odds{padding:9px 7px !important;font-size:12px !important}
	.odds .od{min-width:34px !important}
	.bs_head,.bs_row{grid-template-columns:96px minmax(0,1fr) 44px minmax(0,1fr) !important}
	.pr_table th,.pr_table td{font-size:11px;padding:7px 3px}
	.rball{width:22px;height:22px;font-size:10px}
	/* 파워볼 추첨기 화면 축소 */
	.pbg_machine{width:240px !important;height:240px !important}
	.pbg_glass{width:240px !important;height:240px !important}
	.pbg_balls .gball{width:38px;height:38px;font-size:15px}
	.page_title{font-size:18px}
	.page_head h2{font-size:20px}
	/* 게시판/표 가로 스크롤 */
	.proto_wrap{padding-left:8px;padding-right:8px}
	table{max-width:100%}
}

/* ===== 모바일: 고객센터/게시판/구매내역 좌측 쏠림·오버플로 보정 ===== */
@media (max-width:768px){
	.proto_wrap{width:auto !important;max-width:100% !important;box-sizing:border-box;overflow-x:hidden}
	/* 게시판 표: 고정 컬럼합이 화면을 밀던 문제 → 표 자체 가로 스크롤 + 폭 축소 */
	.board_table{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;font-size:12.5px}
	.board_table thead,.board_table tbody{display:table;width:100%;table-layout:fixed}
	.board_table tr{display:table-row}
	.board_table th,.board_table td{padding:11px 7px;white-space:normal;word-break:break-all}
	.board_table .col_gubun{width:52px}
	.board_table .col_writer{width:72px}
	.board_table .col_date{width:62px}
	.board_table .col_state{width:58px}
	.board_table .col_del{width:38px}
	.board_table td.subject{text-align:left}
	/* 구매내역(bethistory) 카드/그리드 화면폭 안으로 */
	.bh_card,.bh_head,.bh_sel,.bh_foot{max-width:100%;box-sizing:border-box}
	.bs_head,.bs_row{grid-template-columns:80px minmax(0,1fr) 36px minmax(0,1fr) !important}
	.bh_foot{flex-wrap:wrap;gap:8px 16px}
}

/* ===== 모바일: 푸터 하단메뉴(이용약관/개인정보처리방침 등) 정돈 ===== */
@media (max-width:1240px){
	.footer .foot_menu{
		min-width:0 !important; width:auto !important; max-width:100% !important;
		display:flex !important; flex-wrap:wrap; justify-content:center; align-items:center;
		gap:2px 0 !important; padding:13px 10px !important; background:#5b6066; box-sizing:border-box;
	}
	.footer .foot_menu li{
		display:inline-flex !important; align-items:center; width:auto !important;
		float:none !important; margin:0 !important; padding:0 !important; position:static !important;
	}
	.footer .foot_menu li a,
	.footer .foot_menu li strong,
	.footer .foot_menu li strong a{
		font-size:12px !important; font-weight:500 !important; color:#e9edf2 !important;
		line-height:1.5; white-space:nowrap; padding:4px 0; text-decoration:none;
	}
	/* 기존 절대배치 점 무력화 + 항목 사이 가운뎃점 구분(마지막 제외) */
	.footer .foot_menu li::after{
		background:none !important; width:auto !important; height:auto !important; border-radius:0 !important;
		position:static !important; margin:0 !important;
	}
	.footer .foot_menu li:not(:last-child)::after{
		content:"·" !important; color:rgba(255,255,255,.5); margin:0 9px !important;
	}
}
