/* NEXON Lv2 Gothic 폰트 선언 */
@font-face {
  font-family: 'NEXON Lv2 Gothic';
  src: url('/fonts/NEXON Lv2 Gothic.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: 'NEXON Lv2 Gothic';
  src: url('/fonts/NEXON Lv2 Gothic Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: 'NEXON Lv2 Gothic';
  src: url('/fonts/NEXON Lv2 Gothic Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: 'NEXON Lv2 Gothic';
  src: url('/fonts/NEXON Lv2 Gothic Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
}

/* 사이트 전체 NEXON Lv2 Gothic 폰트 적용 */
* {
  /* font-family: 'NEXON Lv2 Gothic', 'Noto Sans KR', "맑은 고딕", "Malgun Gothic", sans-serif !important; */
  font-family: 'Noto Sans KR', "맑은 고딕", "Malgun Gothic", sans-serif !important;
}

/* 라이트모드 메뉴 활성 상태 */
.menu-item.active>.menu-link:not(.menu-toggle) {
  background: #eeeeee !important;
  color: #333 !important;
}

/* 메뉴 화살표 숨기기 */
.menu-toggle::after {
  display: none !important;
}

/* 서브메뉴창 폭을 200픽셀로 고정 */
.menu-sub {
  width: 200px !important;
  max-width: 200px !important;
  min-width: 200px !important;
  position: absolute !important;
  top: 100% !important;
  /* 부모 메뉴의 100% 아래에 위치 */
  left: 0 !important;
  margin-top: 0 !important;
  z-index: 1550 !important;
}

/* 메인 메뉴 호버 시 서브메뉴 표시 */
.menu-horizontal .menu-inner>.menu-item:hover>.menu-sub {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* 서브메뉴 기본 숨김 */
.menu-horizontal .menu-sub {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

/* 메뉴 아이템에 상대 위치 지정 (서브메뉴의 기준점) */
.menu-horizontal .menu-inner>.menu-item {
  position: relative !important;
  margin-left: 0 !important;
  /* 메뉴 항목 사이 간격 */
  margin-right: 0 !important;
}

/* 메뉴 항목들 사이의 간격 제어 */
.menu-horizontal .menu-inner {
  gap: 0 !important;
  /* 원하는 간격 값으로 조정 (0.1rem, 0.2rem, 0.3rem 등) */
}

/* 메뉴 아이템에 상대 위치 지정 (서브메뉴의 기준점) */
.menu-horizontal .menu-inner>.menu-item {
  position: relative !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}


/* 검색입력창 스타일 개선 */
.layout-navbar .search-input-wrapper {
  /* JavaScript로 동적 위치 계산 */
  position: fixed !important;
  top: 6px !important;
  /* left/right는 JavaScript에서 설정 */
  width: 180px !important;
  max-width: 180px !important;
  height: 42px !important;
  z-index: 1060 !important;
  background: transparent !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* 검색 입력 필드 높이 조정 */
.layout-navbar .search-input-wrapper .form-control.search-input,
.layout-navbar .search-input-wrapper .search-input {
  height: 42px !important;
  line-height: 42px !important;
  box-sizing: border-box !important;
  padding: 0 15px !important;
  border-radius: 12px !important;
}

/* 검색창이 나타날 때 즉시 스타일 적용 - 최고 우선순위 */
.layout-navbar .search-input-wrapper:not(.d-none) .form-control.search-input.border-0,
.layout-navbar .search-input-wrapper:not(.d-none) .form-control.search-input,
.layout-navbar .search-input-wrapper:not(.d-none) .search-input.border-0,
.layout-navbar .search-input-wrapper:not(.d-none) .search-input,
.navbar-search-wrapper.search-input-wrapper:not(.d-none) .form-control.search-input.border-0,
.navbar-search-wrapper.search-input-wrapper:not(.d-none) .form-control.search-input,
.navbar-search-wrapper.search-input-wrapper:not(.d-none) .search-input.border-0,
.navbar-search-wrapper.search-input-wrapper:not(.d-none) .search-input {
  background-color: #dedede !important;
  border: 1px solid #d6d6d6 !important;
  border-width: 1px !important;
  border-style: solid !important;
  border-color: #d6d6d6 !important;
  border-radius: 12px !important;
  color: #333333 !important;
}

/* X 버튼 숨기기 */
.layout-navbar .search-input-wrapper .ti-x {
  display: none !important;
}

.layout-navbar .search-input-wrapper .twitter-typeahead {
  width: 180px !important;
  max-width: 180px !important;
  height: 42px !important;
  position: static !important;
}

/* 검색 폼 스타일 */
.navbar-nav form {
  display: flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: none !important;
}

.navbar-nav form li {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* 검색 자동완성 드롭다운 완전히 숨기기 */
.layout-navbar .search-input-wrapper .navbar-search-suggestion,
.layout-navbar .navbar-search-wrapper .navbar-search-suggestion,
.navbar-search-suggestion,
.tt-menu,
.tt-menu.navbar-search-suggestion,
.twitter-typeahead .tt-menu,
.twitter-typeahead .navbar-search-suggestion,
.twitter-typeahead,
.suggestion,
.suggestions-header {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  width: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

/* 라이트테마에서 검색입력창 배경색 설정 */
[data-bs-theme=light] .layout-navbar .search-input-wrapper .form-control.search-input,
html[data-bs-theme=light] .layout-navbar .search-input-wrapper .form-control.search-input,
body[data-bs-theme=light] .layout-navbar .search-input-wrapper .form-control.search-input,
html.light-style .layout-navbar .search-input-wrapper .form-control.search-input,
body.light-style .layout-navbar .search-input-wrapper .form-control.search-input,
.light-style .layout-navbar .search-input-wrapper .form-control.search-input {
  background-color: #dedede !important;
  border: 1px solid #d6d6d6 !important;
  border-radius: 12px !important;
}

/* 라이트테마에서 검색창이 나타날 때 즉시 스타일 적용 */
[data-bs-theme=light] .layout-navbar .search-input-wrapper:not(.d-none) .form-control.search-input,
[data-bs-theme=light] .layout-navbar .search-input-wrapper:not(.d-none) .search-input,
html[data-bs-theme=light] .layout-navbar .search-input-wrapper:not(.d-none) .form-control.search-input,
html[data-bs-theme=light] .layout-navbar .search-input-wrapper:not(.d-none) .search-input,
body[data-bs-theme=light] .layout-navbar .search-input-wrapper:not(.d-none) .form-control.search-input,
body[data-bs-theme=light] .layout-navbar .search-input-wrapper:not(.d-none) .search-input,
html.light-style .layout-navbar .search-input-wrapper:not(.d-none) .form-control.search-input,
html.light-style .layout-navbar .search-input-wrapper:not(.d-none) .search-input,
body.light-style .layout-navbar .search-input-wrapper:not(.d-none) .form-control.search-input,
body.light-style .layout-navbar .search-input-wrapper:not(.d-none) .search-input,
.light-style .layout-navbar .search-input-wrapper:not(.d-none) .form-control.search-input,
.light-style .layout-navbar .search-input-wrapper:not(.d-none) .search-input {
  background-color: #dedede !important;
  border: 1px solid #d6d6d6 !important;
  border-radius: 12px !important;
  color: #333333 !important;
}

/* 다크테마에서 검색입력창 배경색 설정 */
[data-bs-theme=dark] .layout-navbar .search-input-wrapper .form-control.search-input,
html[data-bs-theme=dark] .layout-navbar .search-input-wrapper .form-control.search-input,
body[data-bs-theme=dark] .layout-navbar .search-input-wrapper .form-control.search-input,
html.dark-style .layout-navbar .search-input-wrapper .form-control.search-input,
body.dark-style .layout-navbar .search-input-wrapper .form-control.search-input,
.dark-style .layout-navbar .search-input-wrapper .form-control.search-input {
  background-color: #333333 !important;
  border: 1px solid #343434 !important;
  border-radius: 12px !important;
  color: #ffffff !important;
}

/* 다크테마에서 검색창이 나타날 때 즉시 스타일 적용 - 최고 우선순위 */
[data-bs-theme=dark] .layout-navbar .search-input-wrapper:not(.d-none) .form-control.search-input.border-0,
[data-bs-theme=dark] .layout-navbar .search-input-wrapper:not(.d-none) .form-control.search-input,
[data-bs-theme=dark] .layout-navbar .search-input-wrapper:not(.d-none) .search-input.border-0,
[data-bs-theme=dark] .layout-navbar .search-input-wrapper:not(.d-none) .search-input,
html[data-bs-theme=dark] .layout-navbar .search-input-wrapper:not(.d-none) .form-control.search-input.border-0,
html[data-bs-theme=dark] .layout-navbar .search-input-wrapper:not(.d-none) .form-control.search-input,
html[data-bs-theme=dark] .layout-navbar .search-input-wrapper:not(.d-none) .search-input.border-0,
html[data-bs-theme=dark] .layout-navbar .search-input-wrapper:not(.d-none) .search-input,
body[data-bs-theme=dark] .layout-navbar .search-input-wrapper:not(.d-none) .form-control.search-input.border-0,
body[data-bs-theme=dark] .layout-navbar .search-input-wrapper:not(.d-none) .form-control.search-input,
body[data-bs-theme=dark] .layout-navbar .search-input-wrapper:not(.d-none) .search-input.border-0,
body[data-bs-theme=dark] .layout-navbar .search-input-wrapper:not(.d-none) .search-input,
html.dark-style .layout-navbar .search-input-wrapper:not(.d-none) .form-control.search-input.border-0,
html.dark-style .layout-navbar .search-input-wrapper:not(.d-none) .form-control.search-input,
html.dark-style .layout-navbar .search-input-wrapper:not(.d-none) .search-input.border-0,
html.dark-style .layout-navbar .search-input-wrapper:not(.d-none) .search-input,
body.dark-style .layout-navbar .search-input-wrapper:not(.d-none) .form-control.search-input.border-0,
body.dark-style .layout-navbar .search-input-wrapper:not(.d-none) .form-control.search-input,
body.dark-style .layout-navbar .search-input-wrapper:not(.d-none) .search-input.border-0,
body.dark-style .layout-navbar .search-input-wrapper:not(.d-none) .search-input,
.dark-style .layout-navbar .search-input-wrapper:not(.d-none) .form-control.search-input.border-0,
.dark-style .layout-navbar .search-input-wrapper:not(.d-none) .form-control.search-input,
.dark-style .layout-navbar .search-input-wrapper:not(.d-none) .search-input.border-0,
.dark-style .layout-navbar .search-input-wrapper:not(.d-none) .search-input {
  background-color: #333333 !important;
  border: 1px solid #343434 !important;
  border-width: 1px !important;
  border-style: solid !important;
  border-color: #343434 !important;
  border-radius: 12px !important;
  color: #ffffff !important;
}

/* 모든 테마에서 검색입력창 기본 스타일 강제 적용 */
.layout-navbar .search-input-wrapper .form-control.search-input.border-0,
.layout-navbar .search-input-wrapper .form-control.search-input {
  background-color: #dedede !important;
  border: 1px solid #d6d6d6 !important;
  border-radius: 12px !important;
}

/* 가장 강력한 우선순위로 배경색 강제 적용 */
.navbar-search-wrapper.search-input-wrapper .form-control.search-input.border-0 {
  background-color: #dedede !important;
  border: 1px solid #d6d6d6 !important;
  border-width: 1px !important;
  border-style: solid !important;
  border-color: #d6d6d6 !important;
  border-radius: 12px !important;
}

/* 최고 우선순위 테두리 강제 적용 - border-0 클래스 무시 */
.layout-navbar .search-input-wrapper .form-control.search-input.border-0:not(.d-none),
.layout-navbar .search-input-wrapper .search-input.border-0:not(.d-none),
.navbar-search-wrapper.search-input-wrapper .form-control.search-input.border-0:not(.d-none),
.navbar-search-wrapper.search-input-wrapper .search-input.border-0:not(.d-none) {
  border: 1px solid #d6d6d6 !important;
  border-width: 1px !important;
  border-style: solid !important;
  border-color: #d6d6d6 !important;
  border-radius: 12px !important;
  background-color: #dedede !important;
}

/* 다크모드에서 최고 우선순위 테두리 강제 적용 */
[data-bs-theme=dark] .layout-navbar .search-input-wrapper .form-control.search-input.border-0:not(.d-none),
[data-bs-theme=dark] .layout-navbar .search-input-wrapper .search-input.border-0:not(.d-none),
html[data-bs-theme=dark] .layout-navbar .search-input-wrapper .form-control.search-input.border-0:not(.d-none),
html[data-bs-theme=dark] .layout-navbar .search-input-wrapper .search-input.border-0:not(.d-none),
body[data-bs-theme=dark] .layout-navbar .search-input-wrapper .form-control.search-input.border-0:not(.d-none),
body[data-bs-theme=dark] .layout-navbar .search-input-wrapper .search-input.border-0:not(.d-none),
html.dark-style .layout-navbar .search-input-wrapper .form-control.search-input.border-0:not(.d-none),
html.dark-style .layout-navbar .search-input-wrapper .search-input.border-0:not(.d-none),
body.dark-style .layout-navbar .search-input-wrapper .form-control.search-input.border-0:not(.d-none),
body.dark-style .layout-navbar .search-input-wrapper .search-input.border-0:not(.d-none),
.dark-style .layout-navbar .search-input-wrapper .form-control.search-input.border-0:not(.d-none),
.dark-style .layout-navbar .search-input-wrapper .search-input.border-0:not(.d-none) {
  border: 1px solid #343434 !important;
  border-width: 1px !important;
  border-style: solid !important;
  border-color: #343434 !important;
  border-radius: 12px !important;
  background-color: #333333 !important;
  color: #ffffff !important;
}

/* 검색입력창 placeholder 완전히 숨기기 */
.layout-navbar .search-input-wrapper .search-input::placeholder,
.layout-navbar .search-input-wrapper .form-control.search-input::placeholder {
  color: transparent !important;
  opacity: 0 !important;
}

.layout-navbar .search-input-wrapper .search-input::-webkit-input-placeholder,
.layout-navbar .search-input-wrapper .form-control.search-input::-webkit-input-placeholder {
  color: transparent !important;
  opacity: 0 !important;
}

.layout-navbar .search-input-wrapper .search-input::-moz-placeholder,
.layout-navbar .search-input-wrapper .form-control.search-input::-moz-placeholder {
  color: transparent !important;
  opacity: 0 !important;
}

.layout-navbar .search-input-wrapper .search-input:-ms-input-placeholder,
.layout-navbar .search-input-wrapper .form-control.search-input:-ms-input-placeholder {
  color: transparent !important;
  opacity: 0 !important;
}



/* 메인메뉴 (점포물건, 빌딩물건) 배경을 글자폭에 맞게 조정 - 모든 상태 */
.menu-horizontal .menu-item>.menu-link {
  padding-right: 1rem !important;
  /* 원래 1rem에서 0.5rem으로 줄임 */
  padding-left: 1rem !important;
  /* 왼쪽도 추가 */
  width: fit-content !important;
  display: inline-block !important;
}

/* 하위메뉴 (전체물건 등) 배경을 전체넓이로 설정 */
.menu-item.active>.menu-link:not(.menu-toggle),
.menu-item>.menu-link:not(.menu-toggle),
.menu-item:hover>.menu-link:not(.menu-toggle) {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  flex: 1 1 auto !important;
}

/* 다크모드 메인메뉴 활성 상태와 호버 상태 */
[data-bs-theme=dark] .menu-horizontal .menu-item.active>.menu-link,
html[data-bs-theme=dark] .menu-horizontal .menu-item.active>.menu-link,
body[data-bs-theme=dark] .menu-horizontal .menu-item.active>.menu-link,
html.dark-style .menu-horizontal .menu-item.active>.menu-link,
body.dark-style .menu-horizontal .menu-item.active>.menu-link,
.dark-style .menu-horizontal .menu-item.active>.menu-link,
[data-bs-theme=dark] .menu-horizontal .menu-item:hover>.menu-link,
html[data-bs-theme=dark] .menu-horizontal .menu-item:hover>.menu-link,
body[data-bs-theme=dark] .menu-horizontal .menu-item:hover>.menu-link,
html.dark-style .menu-horizontal .menu-item:hover>.menu-link,
body.dark-style .menu-horizontal .menu-item:hover>.menu-link,
.dark-style .menu-horizontal .menu-item:hover>.menu-link {
  background: #444444 !important;
  color: #fff !important;
  padding-right: 1rem !important;
  width: fit-content !important;
  display: inline-block !important;
  max-width: fit-content !important;
  min-width: auto !important;
  flex: 0 0 auto !important;
  box-sizing: border-box !important;
}

/* 다크모드 하위메뉴 (전체물건 등) 배경을 전체넓이로 설정 */
[data-bs-theme=dark] .menu-item.active>.menu-link:not(.menu-toggle),
html[data-bs-theme=dark] .menu-item.active>.menu-link:not(.menu-toggle),
body[data-bs-theme=dark] .menu-item.active>.menu-link:not(.menu-toggle),
html.dark-style .menu-item.active>.menu-link:not(.menu-toggle),
body.dark-style .menu-item.active>.menu-link:not(.menu-toggle),
.dark-style .menu-item.active>.menu-link:not(.menu-toggle),
[data-bs-theme=dark] .menu-item>.menu-link:not(.menu-toggle),
html[data-bs-theme=dark] .menu-item>.menu-link:not(.menu-toggle),
body[data-bs-theme=dark] .menu-item>.menu-link:not(.menu-toggle),
html.dark-style .menu-item>.menu-link:not(.menu-toggle),
body.dark-style .menu-item>.menu-link:not(.menu-toggle),
.dark-style .menu-item>.menu-link:not(.menu-toggle),
[data-bs-theme=dark] .menu-item:hover>.menu-link:not(.menu-toggle),
html[data-bs-theme=dark] .menu-item:hover>.menu-link:not(.menu-toggle),
body[data-bs-theme=dark] .menu-item:hover>.menu-link:not(.menu-toggle),
html.dark-style .menu-item:hover>.menu-link:not(.menu-toggle),
body.dark-style .menu-item:hover>.menu-link:not(.menu-toggle),
.dark-style .menu-item:hover>.menu-link:not(.menu-toggle) {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  flex: 1 1 auto !important;
}

/* 라이트모드 메뉴 활성 상태 아이콘과 텍스트 */
.menu-item.active>.menu-link:not(.menu-toggle) i,
.menu-item.active>.menu-link:not(.menu-toggle) .menu-text {
  color: #333 !important;
}

/* 다크모드 메뉴 활성 상태 아이콘과 텍스트 */
[data-bs-theme=dark] .menu-item.active>.menu-link:not(.menu-toggle) i,
html[data-bs-theme=dark] .menu-item.active>.menu-link:not(.menu-toggle) i,
body[data-bs-theme=dark] .menu-item.active>.menu-link:not(.menu-toggle) i,
html.dark-style .menu-item.active>.menu-link:not(.menu-toggle) i,
body.dark-style .menu-item.active>.menu-link:not(.menu-toggle) i,
.dark-style .menu-item.active>.menu-link:not(.menu-toggle) i,
[data-bs-theme=dark] .menu-item.active>.menu-link:not(.menu-toggle) .menu-text,
html[data-bs-theme=dark] .menu-item.active>.menu-link:not(.menu-toggle) .menu-text,
body[data-bs-theme=dark] .menu-item.active>.menu-link:not(.menu-toggle) .menu-text,
html.dark-style .menu-item.active>.menu-link:not(.menu-toggle) .menu-text,
body.dark-style .menu-item.active>.menu-link:not(.menu-toggle) .menu-text,
.dark-style .menu-item.active>.menu-link:not(.menu-toggle) .menu-text {
  color: #fff !important;
}



/* 라이트 모드의 호버 효과 (기본) */
table.dataTable tbody tr.odd:hover,
table.dataTable tbody tr.even:hover {
  background-color: #f8f8f8 !important;
  cursor: pointer !important;
}

/* 다크 모드의 호버 효과 - 모든 가능한 다크 모드 감지 방식에 대응 */
:root[data-bs-theme=dark] table.dataTable tbody tr.odd:hover,
:root[data-bs-theme=dark] table.dataTable tbody tr.even:hover,
html:where([data-bs-theme=dark]) table.dataTable tbody tr.odd:hover,
html:where([data-bs-theme=dark]) table.dataTable tbody tr.even:hover,
html.dark table.dataTable tbody tr.odd:hover,
html.dark table.dataTable tbody tr.even:hover,
body.dark-style table.dataTable tbody tr.odd:hover,
body.dark-style table.dataTable tbody tr.even:hover,
.dark-style table.dataTable tbody tr.odd:hover,
.dark-style table.dataTable tbody tr.even:hover,
html.dark-style table.dataTable tbody tr.odd:hover,
html.dark-style table.dataTable tbody tr.even:hover {
  background-color: #3B3B3B !important;
  cursor: pointer !important;
}



/* 표관련 스타일 */
.table-search {
  padding: 10px 0;
  margin-bottom: 20px;
}

.table-search input {
  padding: 8px;
  border: 1px solid #ddd;
  border-radius: 4px;
  width: 100%;
  max-width: 200px;
}

.sortable {
  cursor: pointer;
}

.sortable:after {
  content: '⇅';
  margin-left: 5px;
  opacity: 0.5;
}

.sortable.asc:after {
  content: '↑';
  opacity: 1;
}

.sortable.desc:after {
  content: '↓';
  opacity: 1;
}


.card-footer {
  background-color: transparent;
  border-top: 1px solid rgba(0, 0, 0, 0.125);
  /* padding: 1.5rem; */
}


.avatar-initial {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  font-size: 14px;
  font-weight: 500;
}

.rounded-1 {
  border-radius: 4px !important;
}

/* 스크롤바 스타일 정의 */

/* 라이트모드 스크롤바 */
:root,
[data-bs-theme=light],
html[data-bs-theme=light],
body[data-bs-theme=light] {
  --bs-scrollbar-track-color: #fafafa;
  --bs-scrollbar-thumb-color: #eeeeee;
}

/* 다크모드 스크롤바 - 모든 가능한 다크모드 감지 */
[data-bs-theme=dark],
html[data-bs-theme=dark],
body[data-bs-theme=dark],
html.dark-style,
body.dark-style,
.dark-style,
html[data-style=dark],
body[data-style=dark],
[data-style=dark] {
  --bs-scrollbar-track-color: #333333 !important;
  --bs-scrollbar-thumb-color: #444444 !important;
}

/* Webkit 브라우저 (Chrome, Safari, Edge) 스크롤바 */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: var(--bs-scrollbar-track-color);
  border-radius: 4px;
}

::-webkit-scrollbar-thumb {
  background: var(--bs-scrollbar-thumb-color);
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--bs-scrollbar-thumb-color);
  opacity: 0.8;
}

::-webkit-scrollbar-corner {
  background: var(--bs-scrollbar-track-color);
}

/* Firefox 스크롤바 */
* {
  scrollbar-width: thin;
  scrollbar-color: var(--bs-scrollbar-thumb-color) var(--bs-scrollbar-track-color);
}

/* 특정 요소에 대한 스크롤바 스타일 */
.modal-body::-webkit-scrollbar,
.layout-page::-webkit-scrollbar,
.content-wrapper::-webkit-scrollbar {
  width: 10px !important;
  /* [ANTIGRAVITY FIX] Increased to 10px */
}

.modal-body::-webkit-scrollbar-track,
.layout-page::-webkit-scrollbar-track,
.content-wrapper::-webkit-scrollbar-track {
  background: var(--bs-scrollbar-track-color);
  border-radius: 3px;
}

.modal-body::-webkit-scrollbar-thumb,
.layout-page::-webkit-scrollbar-thumb,
.content-wrapper::-webkit-scrollbar-thumb {
  background: var(--bs-scrollbar-thumb-color);
  border-radius: 3px;
}

.modal-body::-webkit-scrollbar-thumb:hover,
.layout-page::-webkit-scrollbar-thumb:hover,
.content-wrapper::-webkit-scrollbar-thumb:hover {
  background: var(--bs-scrollbar-thumb-color);
  opacity: 0.8;
}

/* 브랜드 텍스트 스타일 */
.brand-text-large {
  font-size: 1.6rem;
  font-weight: 800;
  letter-spacing: -0.5px;
}


/* 검색 아이콘 */
.search-button i.ti-search {
  font-size: 1.5rem !important;
}

/* 테마 스위처 아이콘 */
.dropdown-style-switcher>a>i {
  font-size: 1.5rem !important;
}

/* 그리드 아이콘 */
.dropdown-shortcuts i.ti-layout-grid-add {
  font-size: 1.5rem !important;
}

/* 드롭다운 내부 큰 아이콘들 */
.dropdown-shortcuts-icon i {
  font-size: 2rem !important;
}


/* 다크모드 푸터 투명도 */
html[data-style=dark] .footer.bg-light {
  background-color: rgba(47, 47, 47, 0.8) !important;
}



/* [ANTIGRAVITY FIX] Forcibly show menu at ALL breakpoints */
.layout-menu-horizontal,
#layout-menu,
aside.layout-menu-horizontal,
.layout-horizontal .layout-menu-horizontal,
.layout-menu,
.menu-horizontal,
.menu-inner,
.menu-item,
.navbar-brand {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  overflow: visible !important;
  flex-wrap: nowrap !important;
}

/* Ensure the layout wrapper doesn't hide it */
.layout-wrapper,
.layout-container,
.layout-page,
.content-wrapper {
  overflow: visible !important;
}

/* Specific fix for width on specific classes if needed, but flex usually handles it */
.layout-menu-horizontal {
  width: 100% !important;
  overflow-x: hidden !important;
}

/* 모바일/태블릿에서 메뉴 간격 조정 */
.layout-menu-horizontal .menu-inner>.menu-item {
  /* [ANTIGRAVITY FIX] Gap to 10px total (5px each side) */
  padding-left: 5px !important;
  padding-right: 5px !important;
  /* [ANTIGRAVITY FIX] Prevent shrinking for overflow calculation */
  flex-shrink: 0 !important;
  white-space: nowrap !important;
}





/* 1000px 이하에서 상단 배너 숨김 (배너 토글 버튼과 무관) */
@media (max-width: 1000px) {

  #banner-section-top,
  #banner-section-bottom {
    display: none !important;
  }

  /* 배너 토글 버튼 숨김 */
  #bannerToggleBtn {
    display: none !important;
  }

  /* 배너 토글 버튼의 부모 li도 숨김 (완전히 공간 제거) */
  #bannerToggleBtn.nav-link {
    display: none !important;
  }

  li:has(#bannerToggleBtn) {
    display: none !important;
  }
}


/* 전체 페이지 가로 스크롤바 강제 숨김 */
html,
body {
  overflow-x: hidden !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
}

/* 레이아웃 래퍼는 overflow: visible을 유지해야 스티키 메뉴가 작동할 수 있으나,
   가로 스크롤바 생성을 막기 위해 max-width를 100%로 제한 */
.layout-wrapper,
.layout-container {
  max-width: 100% !important;
  width: 100% !important;
}

/* 메뉴 영역 오버플로우 숨김 (스크롤바 방지) */
#layout-menu,
.layout-menu-horizontal {
  /* overflow-x: hidden !important; */
  /* 메뉴가 잘리는 것을 방지하려면 hidden을 끄거나, 잘려도 되면 켭니다. 
     사용자 요청: "가로 스크롤바가 하단에 무조건 안나오게". 
     따라서 html/body에서 제어하므로 여기서는 너비만 제한합니다. */
  max-width: 100% !important;
}






.pagination {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 10px 0;
  font-size: 1.5rem;
}

.pagination li {
  margin: 0 3px;
}

.pagination li a {
  display: block;
  padding: 10px 14px;
  text-decoration: none;
  border: 1px solid #ddd;
  border-radius: 4px;
  color: #5a8dee;
}

.pagination li.active a {
  background-color: #5a8dee;
  color: white;
  border-color: #5a8dee;
}

.pagination li a:hover {
  background-color: #f0f0f0;
}


.pagination-container {
  display: flex;
  justify-content: center;
}

/* pagination: 항상 같은 크기의 원형으로 고정 */
.pagination .page-link,
.pagination li a {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  box-sizing: border-box !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  line-height: 1 !important;
}

/* Bootstrap이 첫/마지막에 주는 모서리 라운드(알약형) 무력화 */
.pagination .page-item:first-child .page-link,
.pagination .page-item:last-child .page-link {
  border-radius: 50% !important;
}


