*{-webkit-tap-highlight-color:transparent;}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
section{max-width:100%;margin:0 auto;}

.marginTr{display:none;}

.pcOn{display:table-cell;}
.mobileOn{display:none;}

.pcWarp{width:100%;display:table-cell;}
.pcWarp li{margin-right:20px;float:left;}
.mobileWarp{display:none;}
.scroll-hint {display:none;}
.mobileOn500{
	display: none;
}
.text-box-wrap {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 5px;
	margin-bottom: 10px;
}


/* .pTable 가로스크롤 - 1400px 미만일 때 */
@media screen and (max-width: 1399px) {
	.table-container {
		overflow-x: auto;
		overflow-y: hidden;
		width: 100%;
		position: relative;
	}
	
	.pTable,
	.gTable2 {
		width: 100%;
		min-width: 1200px; /* 최소 너비 설정 */
		margin: 0;
	}
	
	/* 가로스크롤바 스타일링 */
	.table-container::-webkit-scrollbar {
		height: 8px;
	}
	
	.table-container::-webkit-scrollbar-track {
		background: #f1f1f1;
		border-radius: 4px;
	}
	
	.table-container::-webkit-scrollbar-thumb {
		background: #4c30a5;
		border-radius: 4px;
	}
	
	.table-container::-webkit-scrollbar-thumb:hover {
		background: #362382;
	}
	
	/* 스크롤 힌트 */
	.scroll-hint {
		position: fixed;
		bottom: 20px;
		right: 20px;
		background: rgba(76, 48, 165, 0.9);
		color: white;
		padding: 10px 15px;
		border-radius: 20px;
		font-size: 14px;
		z-index: 1000;
		animation: bounce 2s infinite;
        display: block;
	}
	
	@keyframes bounce {
		0%, 20%, 50%, 80%, 100% {
			transform: translateY(0);
		}
		40% {
			transform: translateY(-10px);
		}
		60% {
			transform: translateY(-5px);
		}
	}
}

/* 768px 이하에서 추가 모바일 스타일 */
@media screen and (max-width: 768px) {
	.table-container {
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
	}
	
	.pTable {
		min-width: 1000px;
	}
	
	.aTbl2.aTbl {
		min-width: 1000px;
	}
	.radio-wrap label {
		display: inline-block;
		margin-bottom: 8px; /* 줄 간격 */
	}
	.radio-wrap input {
		margin-right: 5px;
	}
	.mobileOn{
		display: block;
	}
	.pageTitle-wrap .pageTitle01{
		font-size: 16px;
		padding: 8px 10px;
	}
	.text-box-wrap {
        flex-direction: column;   /* 세로 배치 */
        align-items: flex-start;  /* 왼쪽 정렬 */
    }

    .text-box-wrap .btn-group {
        width: 100%;
        display: flex;
        gap: 3px;
    }
}
@media screen and (max-width: 500px) {
	.mobileOn500{
		display: block;
	}
}

