/* #region utility class */
/* 검색엔진 고려한 숨기기, 로고, 제목, 링크 등, 버튼은 aria-label과 title */
.visually-hidden{ overflow: hidden; position: absolute; width: 0; height: 0; }

/* 선택자 */
::selection{ background: var(--primary); color: var(--white, #fff); }
.reverse-selection::selection, .reverse-selection *::selection{ background: var(--white, #fff); color: var(--primary); }

/* 말줄임표 */
.ellipsis{ overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; min-height: 1lh; white-space: normal; word-break: break-all; }
.ellipsis--lines-2{ -webkit-line-clamp: 2; height: 2lh; }
.ellipsis--lines-3{ -webkit-line-clamp: 3; height: 3lh; }
.ellipsis--lines-4{ -webkit-line-clamp: 4; height: 4lh; }

/* 정렬 */
.text-center{ text-align: center; }
.text-left{ text-align: left; }
.text-right{ text-align: right; }

/* show, hide */
@media(min-width: 768px){
    #body .show-mob{ display: none; }
}
@media(min-width: 1280px){
    #body .show-tab{ display: none; }
}
@media(min-width:2561px){
    #body .show-qhd{ display: none; }
}
@media(max-width:2560px){
    #body .hide-qhd{ display: none; }
}
@media(max-width: 1279px){
    #body .hide-tab{ display: none; }
}
@media(max-width: 767px){
    #body .hide-mob{ display: none; }
}
/* #endregion */