/* 사이드바 공통 변수 */
:root { 
	--sidebar-w: 320px; 
	
	/* theme text color */
	--ttc-default:#353535;
    --ttc-higher:#050505;
    --ttc-high:#353535;
    --ttc-low:#555555;
    --ttc-lower:#757575;
    --ttc-muted:#959595;
    --ttc-muteder:#b5b5b5;
    --ttc-black:#000000;
    --ttc-white:#ffffff;
    --ttc-primary:#3949ab;
    --ttc-atag:#000000;
    /* theme background */
    --tbg-default:#ffffff;
    --tbg-higher:#353535;
    --tbg-high:#555555;
    --tbg-low:#757575;
    --tbg-lower:#959595;
    --tbg-muted:#d5d5d5;
    --tbg-muteder:#f5f5f5;
    --tbg-black:#000000;
    --tbg-white:#ffffff;
    --tbg-primary:#3949ab;
    --tbg-bg-color:#ffffff;
    /* theme border color */
    --tbc-default:rgba(0,0,0,0.125);
    --tbc-primary:rgba(0,0,0,0.125);
    --tbc-higher:#dee2e6;
    --tbc-low:#757575;
}

.left {
  text-align: center;   /* 가운데 정렬 */
  display: inline-block; /* 세로로 안 떨어지게 */
}

/* 바디에 hide-summary 클래스가 붙으면 SUMMARY 숨김 */
.hide-summary #summary-box { display:none; }



/* 셀 기본: 줄바꿈 허용 */
#myTable td{
  white-space: normal;
  word-break: break-all;   /* 지갑주소/아이디 같은 긴 문자열도 줄바꿈 */
}

/* 셀을 오버레이 기준점으로 */
.user-cell{
  position: relative;
  overflow: visible;       /* 오버레이가 잘리면 visible */
}


/* 액션 버튼: 오버레이로 띄우기(폭을 밀지 않게) */
.user-cell .hover-actions{
  position: absolute;
  left: 100%;
  bottom: 0%;             /* 또는 top:50%; transform:translate(-50%,-50%) */
  transform: translateX(-50%);
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  max-width: 240px;        /* 필요 시 제한 */
  padding: 4px 6px;
  background: rgba(255,255,255,.9);
  border-radius: 6px;
  box-shadow: 0 2px 6px rgba(0,0,0,.08);
  opacity: 0;
  pointer-events: none;    /* 안 보일 때 클릭 막기 */
  z-index: 3;
}

table.user_list tbody tr:last-child .hover-actions { bottom:100% !important; }
table.user_list tbody tr:first-child .hover-actions { bottom:-100% !important; }

/* 호버/포커스일 때만 보이게 */
.user-cell:hover .hover-actions,
.user-cell:focus-within .hover-actions{
  opacity: 1;
  pointer-events: auto;
}

/* 아이디는 살짝 흐리게만 (줄바꿈은 유지됨) */
.user-cell:hover .user-id,
.user-cell:focus-within .user-id{
  opacity: .3;
}

/* 버튼이 셀 안에서 줄 안 늘리게(자체는 한 줄 유지) */
.user-cell .hover-actions .btn{
  white-space: nowrap;
  padding: 2px 6px;
  font-size: 12px;
}

/* ====== 레이아웃(본문 컨테이너)만 좌측 여백 적용 ====== */
.layout-main, .layout-main .main-content, .layout-main .content-wrapper {
  transition: margin-left .2s ease;
}

/* 데스크톱: 좌측 내비 여백 유지 */
@media (min-width: 992px) {
  .layout-main,
  .layout-main .main-content,
  .layout-main .content-wrapper {
    margin-left: var(--sidebar-w);
  }
}

/* 모바일: 좌측 여백 제거 */
@media (max-width: 991.98px) {
  .layout-main,
  .layout-main .main-content,
  .layout-main .content-wrapper {
    margin-left: 0 !important;
  }
}


/* ====== 좌측 내비게이션 전용 규칙(.navigation) ====== */
/* 기본(펼침) */
.navigation { width: var(--sidebar-w); transition: width .2s ease; }
.navigation .navigation-menu-tab { width: 72px; }

/* 데스크톱에서는 고정 배치 */
@media (min-width: 992px) {
  .navigation {
    position: fixed; top: 0; left: 0; bottom: 0;
  }
}

/* 모바일: 화면 밖으로 숨기고 토글로 열기 */
@media (max-width: 991.98px) {
  .navigation {
    position: fixed; top: 0; left: -100%; bottom: 0;
    z-index: 1040; width: var(--sidebar-w);
    transition: left .2s ease;
  }
  .navigation.open { left: 0; }
}

/* 접힘(아이콘만) */
body.nav-collapsed .navigation { width: 72px; }
body.nav-collapsed .navigation .navigation-menu-body { display: none !important; }

/* 접힘 + 마우스 올림(flyout 임시 펼침) */
body.nav-collapsed.nav-flyout .navigation { width: var(--sidebar-w); }
body.nav-collapsed.nav-flyout .navigation .navigation-menu-body { display: block !important; }

/* 접힘일 때 본문 여백 축소 */
body.nav-collapsed .layout-main,
body.nav-collapsed .layout-main .main-content,
body.nav-collapsed .layout-main .content-wrapper { margin-left: 62px; }

body.nav-collapsed.nav-flyout .layout-main,
body.nav-collapsed.nav-flyout .layout-main .main-content,
body.nav-collapsed.nav-flyout .layout-main .content-wrapper { margin-left: var(--sidebar-w); }

/* 모바일에서 열렸을 때 배경 딤(선택) */
.sidebar-backdrop {
  position: fixed; inset: 0; display: none;
  background: rgba(0,0,0,.35); z-index: 1030;
}
.navigation.open + .sidebar-backdrop { display: block; }

/* 모바일에서 내비 열리면 바디 스크롤 잠금 */
body.sidebar-open { overflow: hidden; }

/* ====== 오른쪽 설정 패널 전용 규칙(#settings) ====== */
/* 주의: 좌측 내비와 선택자를 완전히 분리 */
.sidebar-group > #settings {
  position: fixed;
  top: 0; right: 0; left: auto !important;   /* 오른쪽 기준 */
  width: 320px; height: 100%;
  background: #fff;
  box-shadow: -2px 0 8px rgba(0,0,0,.12);
  z-index: 1100;
  transition: right .25s ease;
}

/* 닫힘 상태: 화면 밖 */
.sidebar-group > #settings.closed { right: -320px; }

/* 본문 여백 규칙 영향 차단(안전장치) */
.sidebar-group > #settings,
.sidebar-group > #settings * { margin-left: 0 !important; }


.help-inline {
	position: absolute;
	padding-top: 5px;
}

/*----- Adm Form Table -----*/
.adm-form-table {position:relative;border-width:1px;border-style:solid}
.adm-form-table.adm-search-box {border-width:2px}
.adm-form-table .adm-form-header {position:relative;padding:15px 10px;font-size:1.25rem;border-bottom-width:1px;border-bottom-style:solid;z-index:2}
.adm-form-table .width-50px {width:50px}
.adm-form-table .width-80px {width:80px}
.adm-form-table .width-100px {width:100px}
.adm-form-table .width-150px {width:150px}
.adm-form-table .width-200px {width:200px}
.adm-form-table .width-250px {width:250px}
.adm-form-table .width-300px {width:300px}
.adm-form-table .width-350px {width:350px}
.adm-form-table .width-400px {width:400px}
.adm-form-table .width-450px {width:450px}
.adm-form-table .width-500px {width:500px}

.adm-form-table .max-width-100px {max-width:100px}
.adm-form-table .max-width-150px {max-width:150px}
.adm-form-table .max-width-200px {max-width:200px}
.adm-form-table .max-width-250px {max-width:250px}
.adm-form-table .max-width-300px {max-width:300px}
.adm-form-table .max-width-350px {max-width:350px}
.adm-form-table .max-width-400px {max-width:400px}
.adm-form-table .max-width-450px {max-width:450px}
.adm-form-table .max-width-500px {max-width:500px}
.adm-form-table .adm-form-info, .adm-form-table .adm-form-cont {padding:15px;border-bottom-width:1px;border-bottom-style:solid}
.adm-form-tr-wrap {position:relative;display:flex}
.adm-form-tr {display:flex;border-bottom-width:1px;border-bottom-style:solid}
.adm-form-tr.tr-f {width:100%}
.adm-form-tr.tr-l, .adm-form-tr.tr-r {width:50%}
.adm-form-tr.tr-t, .adm-form-tr.tr-t {width:33.33%}

.adm-form-tr.tr-r {border-left-width:1px;border-left-style:solid}
.adm-form-tr.tr-t {border-left-width:1px;border-left-style:solid}
.adm-form-td {position:relative}
.adm-form-td.td-l {flex-shrink:0;width:150px;padding:10px;border-right-width:1px;border-right-style:solid;display:flex;align-items:center;word-break:keep-all}
.adm-form-td.td-l .label {line-height:1.5;padding:0;margin-bottom:0}
.adm-form-td.td-r {flex-grow:1;position:relative;padding:10px}
.adm-form-td.td-t {flex-grow:1;position:relative;padding:10px}
.adm-form-td.td-rs {padding:10px 230px 10px 10px}
.adm-form-td .table-list-eb table {margin-bottom:0}
.adm-form-table .inline-group > span {display:inline-block}
.adm-form-table .inline-group .search-btns {margin-left: 10px;}
.adm-form-table .inline-group .search-btns button {margin-bottom:3px;}
.adm-form-table > div:last-child .adm-form-tr, .adm-form-table > div:last-child.adm-form-tr, .adm-form-table > div:last-child.adm-form-info, .adm-form-table > div:last-child.adm-form-cont {border-bottom-width:0}
.adm-form-td-rs {position:absolute;top:0;right:0;height:100%;padding:0 10px;display:flex;align-items:center;border-left-width:1px;border-left-style:solid}
.adm-form-td-rs-all {z-index:1}
@media (max-width:1199px) {
	.adm-form-tr-wrap {display:block}
	.adm-form-tr.tr-l, .adm-form-tr.tr-r {width:100%}
	.adm-form-tr.tr-t, .adm-form-tr.tr-t {width:100%}
	.adm-form-tr.tr-r {border-left:0}
	.adm-form-table > .adm-form-tr-wrap > .adm-form-tr:first-child {border-bottom-width:1px;border-bottom-style:solid}
}
@media (max-width:991px) {
	.adm-form-tr.adm-sm-100 {display:block}
	.adm-form-tr.adm-sm-100 .adm-form-td {width:100%}
	.adm-form-tr.adm-sm-100 .adm-form-td.td-l {border-right-width:0;border-bottom-width:1px;border-bottom-style:solid}
	.adm-form-td.td-rs {padding:10px 115px 10px 10px;min-height:65px}
	.adm-form-td-rs .inline-group {margin:0}
	.adm-form-td-rs .inline-group .checkbox {float:inherit;margin:0}
}
@media (max-width:576px) {
	.adm-form-td.td-l {width:100px}
}


/*----- Page Contents -----*/
/* Adm Info Box */
.adm-info-box {border-color:var(--tbc-higher)}
/* Pg Anchor Tab */
@media (min-width: 1200px) {
    .pg-anchor-in .nav-tabs li a {color:var(--ttc-muted)}
    .pg-anchor-in .nav-tabs li a:hover {color:var(--ttc-higher)}
    .pg-anchor-in .nav-tabs li a.active {color:var(--ttc-higher);border:1px solid var(--tbc-low);border-bottom:1px solid #fff}
    .pg-anchor-in .tab-bottom-line {background-color:var(--tbc-low)}
}
@media (max-width: 1199px) {
    .pg-anchor-in {border-color:var(--tbc-higher)}
    .pg-anchor-in .nav-tabs li a {border-color:var(--tbc-default);color:var(--ttc-muted)}
    .pg-anchor-in .nav-tabs li a.active {border-color:var(--tbc-default);background-color:var(--tbg-muteder);color:#ab0000}
    .pg-anchor-in .nav-tabs li:nth-child(1) a, .pg-anchor-in .nav-tabs li:nth-child(2) a, .pg-anchor-in .nav-tabs li:nth-child(4) a, .pg-anchor-in .nav-tabs li:nth-child(5) a, .pg-anchor-in .nav-tabs li:nth-child(7) a, .pg-anchor-in .nav-tabs li:nth-child(8) a, .pg-anchor-in .nav-tabs li:nth-child(10) a, .pg-anchor-in .nav-tabs li:nth-child(11) a {border-color:var(--tbc-default)}
}

/* Adm Form Table */
.adm-form-table {border-color:var(--tbc-default)}
.adm-form-table.adm-search-box {border-color:var(--tbc-higher)}
.adm-form-table .adm-form-header {background-color:var(--tbg-muteder);border-color:var(--tbc-default);color:var(--ttc-higher)}
.adm-form-table .adm-form-info, .adm-form-table .adm-form-cont {border-color:var(--tbc-default)}
.adm-form-top {border-color:var(--tbc-default)}
.adm-form-tr {border-color:var(--tbc-default)}
.adm-form-td.td-l {background-color:var(--tbg-muteder);border-color:var(--tbc-default);color:var(--ttc-higher)}
.adm-form-tr-wrap .adm-form-tr:first-child {border-color:var(--tbc-default)}
.adm-form-td-rs {border-color:var(--tbc-default)}
.adm-form-td-rs-all {background-color:var(--tbg-default)}
@media (max-width:991px) {
	.adm-sm-100 .adm-form-td.td-l {border-color:var(--tbc-default)}
}

/* admin - theme */
.themeBox {
	float: left;
	border: 1px solid #ddd;
	padding: 10px;
	margin: 0 20px 20px 0
}
.themeBox:nth-of-type(4n+0) {
	margin-right: 0
}
.theme_inner {
	z-index: 60;
	position: relative
}
.pcimg {
    position: relative;
    width: 100%;
    height: auto;
}

.theme_img {
    position: absolute;
    left: 7.1%; /* PC 화면 내부 좌측 정렬 */
    top: 7%; /* PC 화면 내부 상단 정렬 */
    width: 86%; /* PC 화면 비율에 맞게 설정 */
    height: 60%; /* PC 화면 높이에 맞게 설정 */
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden; /* 넘치는 부분 숨김 */
}

.theme_img img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* 이미지 비율 유지하며 꽉 차게 */
}
.theme_inner .overlay:hover {
	opacity: 0.8
}

.theme_inner .overlay {
	z-index: 100;
	position: absolute;
	left: 6.8%;
	top: 7%;
	width: 86.3%;
	height: 60%;
	background-color: #000;
	opacity: 0;
	transition: all 0.3s;
	cursor: pointer
}
.theme_inner .theme_btn {
	z-index: 120;
	position: absolute;
	left: 50%;
	top: 50%;
	margin-left: -60px;
	margin-top: -20px;
	background: none;
	color: #fff;
	font-size: 16px;
	border: 2px solid #fff;
	border-radius: 15px;
	width: 130px;
	height: 50px;
	font-weight: bold
}
.theme_inner .theme_btn:hover {
	transition: all 0.3s;
	background-color: #fff;
	color: #000
}
.theme_info {
	border: 1px solid #ddd;
	padding: 10px;
	margin: 12px
}
.theme_info label {
	font-size: 15px;
	font-weight: bold;
	margin-bottom: 10px;
}
.theme_info .price {
	text-indent: 30px
}
.theme_info .free {
	font-weight: bold;
	text-indent: 30px;
	color: #df1f00;
	margin-top: 5px;
	letter-spacing: 1px;
	font-size: 11px
}
.theme_info .left {
	margin-left: 10px;
	margin-bottom: 10px;
}
.theme_info .right {
	text-align: right;
	margin-right: 10px;
	margin-bottom: 10px;
}
.theme_info .skin_by {
	color: #aeaeae
}
.theme_btn_row {
	display: none
}

.content-body .section0 {
	height: 40px;
	line-height: 40px;
	border-bottom: 1px solid #999;
	margin: 30px 0 20px 0;
}
.content-body .section0 li {
	display: inline-block;
	padding: 0 20px;
	text-align: center;
	border: 1px solid #dcdcdc;
	margin: 0;
	border-right: none;
	border-bottom: none;
	background: #f1f1f1;
	box-sizing:border-box;
	margin-bottom: -1px;
	height: 40px;
}
.content-body .section0 li:first-child {
	height: 40px;
}
.content-body .section0 li.on {
	background: #fff;
	border: 1px solid #999;
	border-bottom:none;
}
.content-body .section0 li a{
	display: block;
}
.content-body .section0 li.off {
	height: 39px;
}
.content-body .section0 li.off:last-child {
	border-right: 1px solid #dcdcdc;
}
.content-body .section0 li.off.on {
	border-right:1px solid #999;
	height: 40px;
}

.alert-dismissible .close {
    position: absolute;
    top: 0;
    right: 0;
    padding: .75rem 1.25rem;
    color: inherit;
}
button.close {
    padding: 0;
    background-color: transparent;
    border: 0;
}
.close {
    float: right;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
    color: #000;
    text-shadow: none;
    opacity: .5;
}

/* toast */
.toast-box {
    visibility: hidden;
    background-color: #333;
    color: white;
    text-align: center;
    padding: 10px 20px;
    border-radius: 10px;
    position: fixed;
    z-index: 9999;
    left: 50%;
    transform: translateX(-50%);
    top: 30px; /* top-center 기준 위치 */
    min-width: 200px;
    font-size: 14px;
    box-shadow: 0 4px 8px rgba(0,0,0,0.3);
}

.toast-box.show {
    visibility: visible;
}

/* 위치 클래스 */
.top-center {
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
}

.bottom-center {
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
}

.top-right {
    top: 30px;
    right: 30px;
}

.bottom-right {
    bottom: 30px;
    right: 30px;
}


/* 떠다니는 버튼 */
.save-fab-btn {
    position: fixed;
    top: 12%;
    right: 28px;
    transform: translateY(-50%);
    z-index: 9999;
    background-color: #6c5ce7;
    color: white;
    border: none;
    width: 100px;
    height: 36px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.2);
    font-size: 18px;
    cursor: pointer;
    transition: background-color 0.2s;
}

.save-fab-btn:hover {
    background-color: #5a4cd3;
}

.ck-editor__editable {
	height: auto !important; /* 높이를 자동 조정 */
	min-height: 300px !important; /* 최소 높이 고정 */
	overflow-y: hidden; /* 스크롤바 숨김 */
}

/* DataTables 스크롤 헤더/바디 조정 */
.dt-scroll-body thead {
    height: 0 !important;
    line-height: 0 !important;
    visibility: hidden;
    overflow: hidden;
}
.dt-scroll-head {
    margin-bottom: 0 !important;
}
.dt-scroll-body,
.dt-layout-table .dt-scroll > div[style] {
    padding-top: 0 !important;
}


/* 1) 헤더 타이포 공통 */
.table thead th,
table.dataTable thead th,
table.dataTable thead td {
    font-weight: 600;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    line-height: 1.2;
}

/* 2) 테이블 헤더 경계선 */
.table thead th {
    border-top: none;
    border-bottom-width: 1px;
    border-bottom-color: #dee2e6;
}

/* 라이트 테이블 헤더 */
.table-light th {
    background-color: #f0f4f7;
}

/* 테이블 셀 */
.table:not(.table-bordered) td {
    vertical-align: middle;
    line-height: 1;
    white-space: nowrap;
}

/* table-bordered 헤더 위 테두리 */
.table.table-bordered thead th,
.table.table-bordered thead td {
    border-top: 1px solid #dee2e6 !important;
}

/* Dropdown 메뉴 위치 */
.table .dropdown-menu {
    margin-top: 0;
}

/* 큰 테이블 셀 패딩 */
.table.table-lg td {
    padding: 1.3rem 0.75rem;
}

/* 선택된 행 강조 */
.table tr.tr-selected {
    background-color: whitesmoke;
}

/* 스트라이프 행 */
.table.table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(0, 0, 0, 0.03);
}

/* 반응형 스택 테이블 */
.table-responsive-stack tr {
    display: flex;
    flex-direction: row;
}

.table-responsive-stack td,
.table-responsive-stack th {
    display: block;
    flex: 1 1 auto;
}


.table.dataTable {
    border-collapse: collapse !important;
}
.table.dataTable tbody > tr:first-child > td {
    border-top: 0;
}

/* DataTables 헤더 정렬 클래스에도 타이포 유지 */
table.dataTable thead .sorting,
table.dataTable thead .sorting_asc,
table.dataTable thead .sorting_desc {
    font-weight: 600;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* DataTables 기본 정렬 아이콘 숨기기 */
table.dataTable thead .sorting:before,
table.dataTable thead .sorting:after,
table.dataTable thead .sorting_asc:before,
table.dataTable thead .sorting_asc:after,
table.dataTable thead .sorting_desc:before,
table.dataTable thead .sorting_desc:after {
    display: none !important;
}

/* 테이블 최소폭 & 고정 */
#myTable {
    min-width: 1000px;
    white-space: nowrap;
    width: 100% !important;
}

#myTable thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    background: #fff;
}

#myTable.table-fixed {
    table-layout: fixed;
    width: 100%;
    min-width: 1000px;
    white-space: nowrap;
}

/* 숫자 폭 흔들림 방지 */
#myTable td,
#myTable th {
    font-variant-numeric: tabular-nums;
}

/* DataTables wrapper & scroll full width */
div.dataTables_wrapper,
div.dataTables_scroll,
div.dataTables_scrollHead,
div.dataTables_scrollBody {
    width: 100% !important;
}

div.dataTables_scrollHead table,
div.dataTables_scrollBody table,
#myTable {
    width: 100% !important;
    table-layout: auto;
}
