/* snb css */
.sidebar-container {
  position: relative;
  box-sizing: border-box;
  display: none;
}

summary {
  list-style-type: none;
}

summary::-webkit-details-marker {
  display: none;
}

summary.nav__item--active{
  display: flex;
  align-items: center;
  gap: 7px;
  font-weight: 800;
  background-color: #fff;
  border-radius: 100px;
}

details.depth2 summary .menu-title {
  display: flex;
  align-items: center;
  gap: 22px;
  font-size: 14px;
  line-height: 1.57;
  padding-left: 20px;
}

.sidebar-bottom {
	position: absolute;
	bottom: 0;
	padding: 16px;
	box-sizing: border-box;
	width: 100%;
}

.sidebar-bottom li {
	display: flex;
	align-items: center;
	height: 50px;
	position: relative;
}

.noticeBtn,
.logoutBtn {
  cursor: pointer;
  display: flex;
	align-items: center;
	gap: 13px;
}

.account {
	display: flex;
    align-items: center;
    gap: 13px;
}

.account img:nth-of-type(2) {
	position: absolute;
	right: 0;
}

.userName {
	position: relative;
}

.userName:after {
	content: "/";
	position: absolute;
	right: -10px;
}

.sidebar-container.show details.depth1 summary .menu-title {
	gap: 12px;
}

.sidebar-main-menu {
  width: 240px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background-color: #000C17;
}

/*메뉴 재수정 css*/
.sidebar-main-menu > ul:nth-child(1) {
display: flex;
flex-direction: column;
gap: 15px;
scroll-behavior: smooth;
  overflow-y: scroll;
  overflow-x: hidden;
}

.sidebar-main-menu > ul > .depth1 {
display: flex;
  align-items: center;
  gap: 7px;
  padding: 10px;
  width: 100%;
cursor: pointer;
position: relative;
font-size: 15px;
}

.sidebar-main-menu > ul > .depth1:before {
content: url(../assets/icon/assignment_icon.svg);
  position: absolute;
  top: 12px;
}

.sidebar-main-menu > ul > .depth1:hover {
font-weight: 700;
  color: var(--text-color-white);
  background-color: #1d66ab;
  border-radius: 7px;
  color: #fff;
}

.sidebar-main-menu > ul > .depth1:hover:before,
.sidebar-main-menu > ul > .depth1.active:before {
filter: brightness(0) invert(1);
}

.sidebar-main-menu > ul > .depth1.active {
font-weight: 700;
  color: var(--text-color-white);
  background-color: #1d66ab;
  border-radius: 7px;
  color: #fff;
}

.sidebar-main-menu > ul > .depth1 > a {
padding-left: 27px;
}

.sidebar-main-menu > ul::-webkit-scrollbar {
  width: 6px;
  height: 100%;
  display: none;
}

.sidebar-main-menu > ul::-webkit-scrollbar-thumb {
  width: 6px;
  max-height: 10%;
  border-radius: 6px;
  background: #1b609f;
}

.sidebar-main-menu > ul::-webkit-scrollbar-track {
  background: transparent;
}

/*2뎁스 메뉴 css*/
.depth2 summary {
display: flex;
  align-items: center;
  gap: 7px;
  padding: 13px 16px;
  width: 100%;
  cursor: pointer;
  position: relative;
  background-color: #01254B;
}

.depth2 summary:hover {
font-weight: 700;
  color: #012167;
  background-color: var(--color-primary-hover);
  color: #fff;
}

.depth2 summary:hover:before,
.depth2 summary.active:before {
filter: brightness(0) invert(1);
}

.depth2 summary:before {
/*content: url(../assets/icon/assignment_icon.svg);*/
/*content: url(../assets/icon/menu_icon_03.svg);*/
  position: absolute;
  top: 12px;
}

.depth2 .submenu-title {
font-size: 16px;
}

.depth2 .details-submenu {
cursor: pointer;
position: relative;
}

.depth2 .details-submenu::before {
  content: '';
    position: absolute;
    top: 20px;
    bottom: 20px;
    left: 20px;
    width: 1px;
    z-index: 2;
    background-color: #6c7a89;
}

.depth2 .details-submenu li {
	display: flex;
	/*padding: 10px 0 10px 40px;*/
	padding: 0 0 0 40px;
	align-items: center;
	height: 40px;
	font-size: 14px;
	font-weight: 400;
	position: relative;
	background-color: #011A33;
	color: #ADADAD;
}

.depth2 .details-submenu li:before {
	position: absolute;
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #ADADAD;
  left: 17px;
  top: 16px;
}

.depth2 .details-submenu li:hover {
font-weight: bold;
background-color: #00458c80;
color: #fff;
}

.depth2 .details-submenu li.active {
	font-weight: bold;
	background-color: #00458C;
	color: #fff;
}

.depth2 .details-submenu li.active:before,
.depth2 .details-submenu li:hover:before {
  position: absolute;
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #0084BD;
  left: 17px;
  top: 16px;
}

.depth2 .details-submenu li a {
	width: 100%;
	height: 100%;
    align-content: center;
}

.depth2 summary.active,
.depth2.active summary {
font-weight: 700;
  color: var(--text-color-white);
  background-color: var(--color-primary);
  color: #fff;
}

.depth2.active summary:before {
filter: brightness(0) invert(1);
}

.depth2 summary .ic-submenu-open {
  display: none;
}

.alertCenter {
	position: absolute;
  bottom: 3%;
    left: 110%;
  z-index: 99;
  background-color: rgb(250 250 250 / 95%);
  padding: 16px;
  box-shadow: 0px 1px 5px #ababab;
  display: none;
  border-radius: 4px;
  width: 425px;
  max-height: 560px;
  min-height: 317px;
    overflow-y: auto;
    box-sizing: border-box;
}

/*.alertCenter.active {
  display: block;
}*/

.alertCenter__tit {
	padding-bottom: 16px;
	width: 100%;
    border-bottom: 2px solid #999;
    display: inline-block;
    color: #000C17;
    font-weight: 600;
    text-align: center;
}

.alertCenter ul li {
	font-size: 15px;
	color: #000C17;
	position: relative;
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 16px 0;
    border-bottom: 1px solid #999;
    cursor: pointer;
    width: 100%;
    word-break: keep-all;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.alertCenter ul li:first-child {
	padding-top: 16px;
}

.alertCenter ul li:last-child {
	margin-bottom: 0;
}

.alertCenter ul li span {
	color: #6b6b6b;
	font-weight: 600;
}

.alertCenter .closeBtn {
	position: absolute;
    top: 20px;
    right: 1px;
    display: none;
}

.alertCenter ul li:hover .closeBtn {
	display: block;
}

/*.alertCenter ul li p {
	font-weight: 500;
}*/

.alertCenter__none {
	display: none;
	padding: 50px 20px;
    text-align: center;
    color: #000C17;
    transform: translate(0%, 50%);
}

.unread {
	font-weight: bold;
}

.alertCenter::-webkit-scrollbar {width: 8px;}
.alertCenter::-webkit-scrollbar-thumb {background-color: var(--color-primary); border-radius: 4px;}
.alertCenter::-webkit-scrollbar-track {background: #fff; border-radius: 4px;}


.alertMessage {
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: absolute;
  background-color: rgb(250 250 250 / 95%);
  padding: 16px;
  box-shadow: 0px 1px 5px #ababab;
  border-radius: 4px;
  max-width: 450px;
  width: 450px;
    bottom: 165px;
    left: 58px;
    z-index: 9999;
    animation: alertSlide 0.7s ease;
}

.alertMessage p {
	color: #000C17;
    font-weight: 600;
    cursor: pointer;
}

.closeBtn {
	width: 12px;
    height: 12px;
    display: inline-block;
  border: none;
  cursor: pointer;
  background: url("../assets/icon/close_icon.svg") no-repeat center;
}

.noticetNum {
	position: absolute;
    top: 0px;
    left: 15px;
    border: 2px solid #ff362e;
    color: #ffffff;
    border-radius: 7px;
    width: 23px;
    height: 23px;
    text-align: center;
    background-color: #ff362e;
    font-size: 13px;
    font-weight: 700;
    line-height: 18px;
}

/*관리자 대시보드 사이드 메뉴*/
.nav {
  display: flex;
  flex-direction: column;
  gap: 24px;
  min-width: 244px;
  padding: 24px 16px;
  border-radius: 24px;
  background-color: var(--dark-100);
}

.nav-wrap {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  gap: 16px;
  padding: 16px;
  border-right: 8px;
  border-radius: 8px;
  background-color: var(--dark-200);
}

.nav-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.nav-list li {
  position: relative;
  padding: 6px 8px;
}

.nav-list li a {
  position: relative;
  display: inline-block;
  width: 100%;
  font-size: var(--font-size-sm);
}

.nav-list li a:hover:after {
  top: -3px;
  transition: all 0.2s ease;
}

.nav-list li a:after {
  content: "";
  background: url("../assets/icon/icon_btn_arrow_right.svg") no-repeat;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
  height: 20px;
  transition: all 0.2s ease;
}

.nav .profill {
  width: 26px;
  height: 26px;
  font-size: var(--font-size-sm);
}

.admin-info {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

/*.admin-info > div {
	display: flex;
	align-items: center;
	gap: 8px;
}*/


