@charset 'utf-8';

html { 
    -webkit-touch-callout:none; 
}
.dev_info {
	font-size:9px;
	font-weight:bold;
	color:red;
}


.mini-table1 {
	border:1px solid #ccc;
	width:100%;
}
.mini-table1 th {
	border:1px solid #ccc;
	padding:5px;
	text-align:center;
	background-color:#eeee;
}
.mini-table1 td {
	border:1px solid #ccc;
	padding:5px;
	background-color:#fff;
}



.mini-pd-10 {
	padding:10px;
}
.mini-pdt-10 {
	padding-top:10px;
}


.mini-input1 {
	border:1px solid #D9D9D9;
	padding:3px 5px;
	font-size:14px;
	width:90%;
}

.mini-select1 {
	border:1px solid #D9D9D9;
	padding:1px 3px;
	font-size:14px;
	width:90%;
}




.clearfix::before {
	display: table;
	content: " "
}

.clearfix::after {
	display: table;
	content: " "
	clear: both
}


.table-center {
	margin:0 auto;
}

.width-100p {
	width:100%;
}

.width-30 {
	width:30px;
}
.width-40 {
	width:40px;
}
.width-60 {
	width:60px;
}
.width-80 {
	width:80px;
}
.width-100 {
	width:100px;
}
.width-120 {
	width:120px;
}
.width-200 {
	width:200px;
}
.width-300 {
	width:300px;
}
.width-400 {
	width:400px;
}
.height-100 {
	height:100px;
}





.ellipsis { white-space: nowrap;overflow: hidden;text-overflow: ellipsis; } /* 한줄 */

.bold { font-weight: bold; }
.hand { cursor: pointer; }
.hide { display: none; }
label { cursor: pointer; }

.color-white { color:#ffffff !important; }

.w100Box{width:100%; padding:12px; border:1px solid #e5e5e5; font-size:14px; box-sizing:border-box;}
.readText{color:#999;}

.filter-blur {
	filter: blur(1.5px);
	-webkit-filter: blur(1.5px);
}



.ubtn1-s1 {
	margin:0 !important;
	padding:4px !important;
	width:auto !important;
}

.ubtn1 {
	margin-bottom:5px;
	width: 100%;
	border-radius: 4px!important;
	border: 0;
	padding: 15px;
	color: #fff;
	font-weight: 700;
	text-align: center;
	background: #e79032;
	box-sizing: border-box
}
.ubtn1:active {
	background: #e86333
}

.ubtns {
	padding: 5px;
}

.ubtn2 {
	margin-bottom:5px;
	width: 100%;
	border-radius: 4px!important;
	border: 0;
	padding: 15px;
	color: #fff;
	font-weight: 700;
	text-align: center;
	background: #7ec7ff;
	box-sizing: border-box
}
.ubtn2:active {
	background: #6cb0e4
}


/* shadow qhint */
.qhint {
	height: 18px;
	cursor: pointer;
}
.qhint-content {
	border:1px solid #eeeeee;
	border-radius:10px;
	background-color: #fff;
	margin: 100px 30px 0;
	position: relative;
	padding: 15px;
	z-index: 999999;
}
.qhint-title {
	font-size: 18px;
	font-weight: bold;
	color: #0B0B0B;
	text-align: left;
}
.qhint-str {
	padding-top: 10px;
	font-size: 16px;
	color: #0B0B0B;
	text-align: left;
	line-height: 1.5;
}
.qhint-close {
	font-size: 26px;
	color: #727272;
	position: absolute;
	right: 10px;
	top: 0;
}


/* shadow LEGO_loader animation */
.shadow1 {margin:70px auto 0;position:relative;}
.shadow1-str {position:absolute;top:40px;text-align:center;width:100%;color:#fff;font-weight:700;font-size:14px;}
#animationWindow {width:100%;height:100%}


.shadow-layer {
	display: none;
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	text-align: center;
	background-color: rgba(0, 0, 0, .5);
	overflow: hidden;
	z-index: 2000
}

.shadow-layer:before {
	display: inline-block;
	width: 0;
	height: 100%
}

.shadow-ct {display:none;}
.shadow-ct-block {display:block;}
.shadow-ct-base-div {margin:50px auto 0;}
.shadow-ct-top-div {position:relative;width:100%;}
.shadow-ct-close {position:absolute;top:12px;right:20px;font-weight:bold;font-size:16px;}
.shadow-ct-close img {width:16px}
.shadow-ct-title-div {background-color:#fff;border-bottom:1px solid #9c9c9c;font-size:15px;font-weight:bold;padding:12px;}
.shadow-ct-content-div {background-color:#fff;padding:10px 30px 20px;}
.shadow-ct-msg-div {padding-top:10px;line-height:170%;text-align:left;}
.shadow-ct-bottom-btn-div {background-color:#009bfa;color:#fff;font-size:15px;font-weight:bold;padding:12px;cursor:pointer;}


/* 첨부 이미지 */
.attach-img {
	width:82px;
	height:82px;
	border:1px solid #eeeeee;
	border-radius:5px;
}

.btn-right9 { display:inline-block; vertical-align: middle; padding: 0 10px; height: 34px; text-align: center; background: #FF0000; border-radius: 6px; line-height: 33px; font-size: 1.2em; color: #fff; font-weight: 700; letter-spacing: -1px; margin-right: 2px; outline: none; }
.btn-hpsend { display:inline-block; vertical-align: middle; padding: 0 6px; height: 26px; text-align: center; background: #999; border-radius: 4px; line-height: 25px; font-size: 0.9em; color: #fff; font-weight: 700;  letter-spacing: -1px; outline: none; }
.btn-hpcheck { display:inline-block; vertical-align: middle; padding: 0 12px; height: 26px; text-align: center; background: #483ace; border-radius: 4px; line-height: 25px; font-size: 0.9em; color: #fff; font-weight: 700;  letter-spacing: -1px; outline: none; }

.btn-spop2 { display: inline-block; vertical-align: middle; width: 70px; height: 70px; border-radius: 50px; line-height: 100%; background: linear-gradient(45deg, #9C520F, #EE7B26); text-align: center; font-size: 1.1em; color: #fff; font-weight: 700; letter-spacing: -1px; box-shadow: 0 10px 15px -10px #2e328b; outline: none;}
.btn-pre-game { display: inline-block; vertical-align: middle; padding: 0 12px; height: 40px; border-radius: 30px; line-height: 100%; background-color: #7DA631; text-align: center; font-size: 1.1em; color: #fff; font-weight: 700; letter-spacing: -1px; box-shadow: 0 6px 12px -6px #2e328b; outline: none; }

.fw-800 { font-weight: 800 !important; }
.fw-900 { font-weight: 900 !important; }


/* remodal */
.remodal {
	padding: 35px 10px;
	background-color: #fff;
	font-size: 1.2em;
	color: #1f1f1f;
	letter-spacing: -1px;
	text-align: center;
	border: 0;
	border-radius: 10px !important;
}
.remodal .remodal-p-alert {
	font-size: 1.5em !important;
	color: #1f1f1f;
	letter-spacing: -1px;
	text-align: center;
}


/* 페이징 */
paging { }
paging ul {
	text-align: center; margin: 30px 0;
}
paging ul li {
	display: inline-block; vertical-align: middle; margin:0 3px; width:36px; height: 36px; border: 1px solid #ddd; border-radius: 5px; text-align: center; line-height: 35px; font-size: 1.2em; font-weight: 500; color: #6b6b6b;
	cursor:pointer;
}
paging .pg_current {
	cursor:default;
	background: #373737;
}
paging .pg_current span {
	color: #fff;
}
paging .pg_first {
	background: url(/resources/app/v2/img/common/ico2_first.png) no-repeat 50% 50%;
}
paging .pg_first span {
	font-size:0;
}
paging .pg_prev {
	background: url(/resources/app/v2/img/common/ico2_prev.png) no-repeat 50% 50%;
}
paging .pg_prev span {
	font-size:0;
}
paging .pg_next {
	background: url(/resources/app/v2/img/common/ico2_next.png) no-repeat 50% 50%;
}
paging .pg_next span {
	font-size:0;
}
paging .pg_last {
	background: url(/resources/app/v2/img/common/ico2_last.png) no-repeat 50% 50%;
}
paging .pg_last span {
	font-size:0;
}

/* 떠다니는 메뉴 */
.btn-floating1 {
	position: fixed;
	bottom: 100px;
	right: 10px;
	z-index: 99;
}

/* 리모트 animation */
.status-remote-ani {
	animation-name: ani-status-remote;
	animation-duration: 4s;
	animation-iteration-count: infinite;
	animation-direction: reverse;
	animation-timing-function: linear;
	animation-fill-mode: none;
	animation-delay: 1s;
	animation-fill-mode: forwards;
}
@keyframes ani-status-remote {
	10% {background: #435a8d;}
	25% {background: #c0c;}
	45% {background: #f1c5d1;}
	60% {background: #c7254e;}
	80% {background: #FFFFAF;}
	100% {background: #93CC8D;}
}

.game-win-back {
	background-image: url('/resources/app/v2/img/background_win.png');
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}


/* 마이페이지 기록 */
.mtable-th1 {
	border-top: 1px solid #119AEF !important;
	background-color:#11AAEF !important;
	color: #fff !important;
	padding: 5px 0 !important;
}
.mtable-th1 span {
	color: #fff !important;
}
.mtable-th2 {
	background-color:#fff !important;
}
.mtable-td {
	padding: 4px 0 !important;
}


/* 라이브 anim */
.shadow-layer-anim {
	background-color: rgba(238, 232, 232, 0.3) !important;
}
.room_anim_action {
	position: absolute;
	width: 100%;
}
.room_anim_action_round {
	z-index: 2;
	background-color: #fff;
	border: 1px solid rgba(0,0,0,.1);
	border-radius: 35px;
	padding: 10px 20px;
	width: 85%;
	margin: 0 auto;
	box-shadow: 0 2px 5px 0 rgba(0,0,0,0.25);
	position: relative;
}
.room_anim_action_round .jfiles {
	white-space:nowrap;
	overflow-x: auto;
	text-align:center
}
::-webkit-scrollbar {
  display: none;
}
.room_anim_action_round .jfiles .jfile {
	margin-left: 7px;display:inline-block; }
}
.room_anim_action_round .jfiles .jfile:first-child {
	margin-left: 10px;
}
.room_anim_action_round .jfiles .jfile:last-child {
	margin-right: 10px;
}
.room_anim_action_round .jfiles .jfile img {
	height: 35px;
}
.room_anim_action_round::before {
	display: block;
	content: "";
	position: absolute;
	top: 1px;
	width: 20px;
	height: 40px;
	z-index: 3;
	left: 19px;
	background: -webkit-gradient(linear, right top, left top, from(rgba(255, 255, 255, 0.01)), to(rgba(255, 255, 255, 0.9)));
	background: -webkit-linear-gradient(right, rgba(255, 255, 255, 0.01), rgba(255, 255, 255, 0.9));
	background: linear-gradient(to left, rgba(255, 255, 255, 0.01), rgba(255, 255, 255, 0.9));
}
.room_anim_action_round::after {
	display: block;
	content: "";
	position: absolute;
	top: 1px;
	width: 20px;
	height: 40px;
	z-index: 3;
	right: 19px;
	background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0.01)), to(rgba(255, 255, 255, 0.9)));
	background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0.01), rgba(255, 255, 255, 0.9));
	background: linear-gradient(to right, rgba(255, 255, 255, 0.01), rgba(255, 255, 255, 0.9));
}
.room_anim_action_text {
	position: relative;
	z-index: 4;
	top: -1px;
	width: -moz-fit-content;
	width: fit-content;
	border-radius: 0 0 15px 15px;
	box-shadow: 0 5px 5px 0 rgba(0,0,0,0.25);
	border-top: none;
	border-left: 1px solid rgba(0,0,0,.1);
	border-right: 1px solid rgba(0,0,0,.1);
	border-bottom: 1px solid rgba(0,0,0,.1);
	margin: 0 auto;
	text-align:center;
	padding:5px 15px;
	font-size: 1rem;
	font-weight: bold;
	background-color: #fff;
}


/* scoreboard anim */
.scoreboard-anim {
	clear: both;
	display: flex;
	position: absolute;
	bottom: 50px;
	right: 70px;
}
.scoreboard-anim div {
	border: 1px solid #ccc;
	border-radius: 9px;
	background: #fff;
	padding: 2px 5px;
	margin-right: 8px;
	font-weight: bold;
	font-size: 1.05rem;
	display: flex;
	align-items: center;
	justify-content: center;
}
.scoreboard-anim div img {
	height: 20px;
}


/* remote anim */
.remote-anim {
	clear: both;
	display: flex;
	position: absolute;
	bottom: 10px;
	right: 70px;
}
.remote-anim div {
	border: 1px solid #ccc;
	border-radius: 9px;
	background: #fff;
	padding: 2px 5px;
	margin-right: 8px;
	font-weight: bold;
	font-size: 1.05rem;
	display: flex;
	align-items: center;
	justify-content: center;
}
.remote-anim div img {
	height: 20px;
}



/* game list anim */
.on-game-div {
	position: relative;
}
.game-anim {
	clear: both;
	display: flex;
	position: absolute;
	bottom: -20px;
	right: -4px;
}
.game-anim div {
	border: 1px solid #ccc;
	border-radius: 10px;
	background: #fff;
	padding: 2px 5px;
	margin-right: 4px;
	font-weight: bold;
	font-size: 1rem;
	display: flex;
	align-items: center;
	justify-content: center;
}
.game-anim div img {
	height: 18px;
}

.text-line {
    text-decoration: line-through;
}

/* check box
.chk_container {
	display: block;
	position: relative;
	padding-left: 27px;
	margin-bottom: 5px;
	cursor: pointer;
	font-size:15px;
	font-weight:bold;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
.chk_container input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
}
.chk_checkmark {
	position: absolute;
	top: 0;
	left: 0;
	height: 20px;
	width: 20px;
	background-color: #eee;
	border:1px solid #ccc;
}
.chk_container .radio {
	border-radius:50%;
}
.chk_container:hover input ~ .chk_checkmark {
	background-color: #ccc;
}
.chk_container input:checked ~ .chk_checkmark {
	background-color: #2196F3;
	border:1px solid #2196F3;
}
.chk_checkmark:after {
	content: "";
	position: absolute;
	display: none;
}
.chk_container input:checked ~ .chk_checkmark:after {
	display: block;
}
.chk_container .chk_checkmark:after {
	left: 7px;
	top: 3px;
	width: 3px;
	height: 8px;
	border: solid white;
	border-width: 0 3px 3px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

*/




/* SNS
.sns_btn {
	position: relative;
	overflow: hidden;
	text-overflow: ellipsis;
	width: 100%;
	display: block;
	padding: 6px 12px 6px 44px;
	margin-bottom: 0;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.42857143;
	text-align: left;
	white-space: nowrap;
	vertical-align: middle;
	-ms-touch-action: manipulation;
	touch-action: manipulation;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	background-image: none;
	border: 1px solid transparent;
	border-radius: 4px;
}
.sns_btn > :first-child {
	position: absolute;
	left: 0;
	top: 0px;
	bottom: 0;
	padding:0 0 0 1px;
	width: 35px;
	line-height: 16px;
	text-align: center;
	vertical-align: middle;
	border-right: 1px solid rgba(0,0,0,0.2);
}
.sns_btn > :first-child img {
	padding-top:7px;
}
.btn-naver {
	color: #fff;
	background-color: #1ec800;
	border-color: #0ea500;
}
.btn-kakao {
	color: #000;
	background-color: #ffde00;
	border-color: #eecf00;
}
.btn-facebook {
	color: #fff;
	background-color: #4065b3;
	border-color: #365598;
}

.as_sns_btn {cursor:pointer;border-radius:2px!important; margin:5px 0; padding:3px 3px;font-weight:bold; text-align:center;background:#fff;}
.as_sns_btn div {width:100%;margin:0 auto;text-align:left;font-size:12px;}
.as_sns_btn img {height:20px;padding-right:3px;}
.as_sns_naver {color:#1dc800;border:1px solid #1dc800;}
.as_sns_facebook {color:#3a559f;border:1px solid #3a559f;}
.as_sns_google {color:#dc4335;border:1px solid #dc4335;}
.as_sns_kakao {color:#ffde00;border:1px solid #ffde00;}
*/

/* 본인인증용 */
.sa-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    display: flex; /* 자바스크립트로 제어하려면 이 부분을 조절 */
    justify-content: center;
    align-items: center;
    padding: 20px;
    z-index: 1000;
}
.sa-popup-layer {
    width: 100%;
    max-width: 320px;
    background: #ffffff;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
    animation: saFadeIn 0.3s ease-out;
}
@keyframes saFadeIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}
.sa-popup-header {
    padding: 25px 20px 15px;
    text-align: center;
}
.sa-popup-header h2 {
    font-size: 1.25rem;
    font-weight: 700;
    color: #1a1a1a;
    letter-spacing: -0.5px;
}
.sa-popup-body {
    padding: 0 24px 24px;
    text-align: center;
}
.sa-popup-body p {
    font-size: 0.95rem;
    color: #4b5563;
    line-height: 1.5;
    margin-bottom: 16px;
}
.sa-reason-box {
    background-color: #f9fafb;
    border-radius: 12px;
    padding: 15px;
    text-align: left;
}
.sa-reason-box ul {
    list-style: none;
}
.sa-reason-box li {
    font-size: 0.85rem;
    color: #6b7280;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
}

.sa-reason-box li:last-child {
    margin-bottom: 0;
}

.sa-reason-box li::before {
    content: "•";
    color: #3b82f6;
    font-weight: bold;
    margin-right: 8px;
}
.sa-popup-footer {
    display: flex;
    border-top: 1px solid #f3f4f6;
}
.sa-btn {
    flex: 1;
    padding: 16px 0;
    border: none;
    background: none;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.2s;
}
.sa-btn-cancel {
    color: #9ca3af;
    border-right: 1px solid #f3f4f6;
}
.sa-btn-confirm {
    color: #3b82f6;
}
.sa-btn:active {
    background-color: #f9fafb;
}
.sa-hidden {
    display: none;
}