@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard-dynamic-subset.min.css");
html {
  height: 100%;
  font-size: 62.5%;
  scroll-behavior: smooth;
}

body {
  overflow: auto;
  height: 100%;
}
body * {
  font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
  font-optical-sizing: auto;
}
body.dialog_visible {
  overflow: hidden;
}


/* Main content 스타일 */
.main-content {
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  height: 100%;
  width: 100%;
}

.header {
  background-color: #f5f7fa;
}

.header .mobile_header {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
  height: 64px;
  padding: 0 16px;
}

.header .mobile_header .btn--menu {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: 40px;
  background-color: transparent;
  transition: all 0.1s ease-out;
  cursor: pointer;
}

.header .mobile_header .btn--menu .btn_icon,
.header .mobile_header .btn--menu .btn__icon {
  width: 24px;
  height: 24px;
}
.header .mobile_header .btn--menu .btn_icon path,
.header .mobile_header .btn--menu .btn__icon path {
  fill: #85878b;
  transition: all 0.1s ease-out;
}
.header .mobile_header .btn--menu:hover,
.header .mobile_header .btn--menu:focus {
  background-color: #eceff6;
}
.header .mobile_header .btn--menu.primary {
  background-color: #1462df;
}
.header .mobile_header .btn--menu.primary .btn_icon path,
.header .mobile_header .btn--menu.primary .btn__icon path {
  fill: #fff;
}
.header .mobile_header .btn--menu.primary:hover,
.header .mobile_header .btn--menu.primary:focus {
  background-color: #1257c6;
}
.header .mobile_header .btn--menu.toner {
  border: 1px solid #1462df;
  background-color: transparent;
}
.header .mobile_header .btn--menu.toner .btn_icon path,
.header .mobile_header .btn--menu.toner .btn__icon path {
  fill: #1462df;
}
.header .mobile_header .btn--menu.toner:hover,
.header .mobile_header .btn--menu.toner:focus {
  background-color: #edf4ff;
}
.header .mobile_header .btn--menu.warning:hover,
.header .mobile_header .btn--menu.warning:focus {
  background-color: transparent;
}
.header .mobile_header .btn--menu.warning:hover .btn_icon path,
.header .mobile_header .btn--menu.warning:hover .btn__icon path,
.header .mobile_header .btn--menu.warning:focus .btn_icon path,
.header .mobile_header .btn--menu.warning:focus .btn__icon path {
  fill: #e8001f;
}
.header .mobile_header .link--home {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 112px;
  transform: translate(-50%, -50%);
}
.header .mobile_header .link--home img {
  width: 100%;
}
.header .scrim--nav {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 100;
  width: 100%;
  height: 100%;
  background-color: rgba(9, 40, 80, 0.33);
  opacity: 0;
  visibility: hidden;
  transition: all 0.2s ease-out;
}
.header .scrim--nav.visible {
  opacity: 1;
  visibility: visible;
}
.header .sidebar {
  display: flex;
  flex-direction: column;
  gap: 32px 0;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 101;
  width: 100%;
  height: 100%;
  padding: 24px 0;
  background-color: #f5f7fa;
  opacity: 0;
  visibility: hidden;
  transform: translateX(-100%);
  transition: all 0.2s ease-out;
  box-shadow: 0 0 8px rgba(0, 45, 122, 0.15);
}

.header .sidebar .nav .depth1__item:hover .depth1__txt,
.header .sidebar .nav .depth1__item:focus .depth1__txt {
  color: #818bff;
}

.header .sidebar.visible {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}
.header .sidebar .title_wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 40px;
  padding: 0 16px 0 24px;
}
.header .sidebar .title_wrap .link--home {
  width: 128px;
}
.header .sidebar .title_wrap .link--home img {
  width: 100%;
}
.header .sidebar .title_wrap .btn--close {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: 40px;
  background-color: transparent;
  transition: all 0.1s ease-out;
  cursor: pointer;
}
.header .sidebar .title_wrap .btn--close .btn_icon,
.header .sidebar .title_wrap .btn--close .btn__icon {
  width: 24px;
  height: 24px;
}
.header .sidebar .title_wrap .btn--close .btn_icon path,
.header .sidebar .title_wrap .btn--close .btn__icon path {
  fill: #85878b;
  transition: all 0.1s ease-out;
}
.header .sidebar .title_wrap .btn--close:hover,
.header .sidebar .title_wrap .btn--close:focus {
  background-color: #eceff6;
}
.header .sidebar .title_wrap .btn--close.primary {
  background-color: #1462df;
}
.header .sidebar .title_wrap .btn--close.primary .btn_icon path,
.header .sidebar .title_wrap .btn--close.primary .btn__icon path {
  fill: #fff;
}
.header .sidebar .title_wrap .btn--close.primary:hover,
.header .sidebar .title_wrap .btn--close.primary:focus {
  background-color: #1257c6;
}
.header .sidebar .title_wrap .btn--close.toner {
  border: 1px solid #1462df;
  background-color: transparent;
}
.header .sidebar .title_wrap .btn--close.toner .btn_icon path,
.header .sidebar .title_wrap .btn--close.toner .btn__icon path {
  fill: #1462df;
}
.header .sidebar .title_wrap .btn--close.toner:hover,
.header .sidebar .title_wrap .btn--close.toner:focus {
  background-color: #edf4ff;
}
.header .sidebar .title_wrap .btn--close.warning:hover,
.header .sidebar .title_wrap .btn--close.warning:focus {
  background-color: transparent;
}
.header .sidebar .title_wrap .btn--close.warning:hover .btn_icon path,
.header .sidebar .title_wrap .btn--close.warning:hover .btn__icon path,
.header .sidebar .title_wrap .btn--close.warning:focus .btn_icon path,
.header .sidebar .title_wrap .btn--close.warning:focus .btn__icon path {
  fill: #e8001f;
}
.header .sidebar .nav {
  height: 100%;
  overflow-y: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.header .sidebar .nav::-webkit-scrollbar {
  display: none;
}
.header .sidebar .nav .depth1 {
  transition: all 0.1s ease-out;
}
.header .sidebar .nav .depth1.selected .depth1__item {
  border-color: #1462df;
  background-color: #fff;
}
.header .sidebar .nav .depth1.selected .depth1__icon path {
  fill: #1462df;
}
.header .sidebar .nav .depth1.selected .depth1__txt {
  color: #1462df;
}
.header .sidebar .nav .depth1.selected .icon--unfold {
  transform: rotate(180deg);
}
.header .sidebar .nav .depth1.selected .depth2_list {
  display: block;
}
.header .sidebar .nav .depth1__item {
  display: flex;
  align-items: center;
  gap: 0 16px;
  min-height: 60px;
  padding: 8px 24px 8px 20px;
  border-left: 4px solid transparent;
  background-color: transparent;
  cursor: pointer;
  background: #818bff;
}
.header .sidebar .nav .depth1__item:hover,
.header .sidebar .nav .depth1__item:focus {
  background-color: #eceff6;
}

/* 사이드바 hover시 색상 변경 추가부분입니다 */

.header .sidebar .nav .depth1__item:hover .depth1__txt,
.header .sidebar .nav .depth1__item:focus .depth1__txt {
  color: #818bff;
}
.header .sidebar .nav .depth1__item:hover .depth1__icon path,
.header .sidebar .nav .depth1__item:focus .depth1__icon path {
  fill: #818bff;
}
.header .sidebar .nav .depth1__item:hover .icon--unfold path,
.header .sidebar .nav .depth1__item:focus .icon--unfold path {
  fill: #818bff;
}

/*  */

.header .sidebar .nav .depth1__icon {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
}
.header .sidebar .nav .depth1__icon path {
  fill: #ffffff;
  transition: all 0.1s ease-out;
}
.header .sidebar .nav .depth1__txt {
  flex-grow: 1;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.33;
  color: #727272;
  transition: all 0.1s ease-out;
  color: #ffffff;
}

.header .sidebar .nav .icon--unfold {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  transform: rotate(0);
  transition: all 0.1s ease-out;
}
.header .sidebar .nav .icon--unfold path {
  fill: #ffffff;
}
.header .sidebar .nav .depth2_list {
  display: none;
}
.header .sidebar .nav .depth2__item {
  display: flex;
  align-items: center;
  min-height: 48px;
  padding: 8px 24px 8px 64px;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.33;
  color: #727272;
  transition: all 0.1s ease-out;
  transition: all 0.1s ease-out;
}
.header .sidebar .nav .depth2__item:hover,
.header .sidebar .nav .depth2__item:focus {
  background-color: #eceff6;
}
.header .sidebar .nav .depth2__item.selected {
  color: #1462df;
}
.header .sidebar .account_wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0 16px;
  padding-top: 24px;
}
.header .sidebar .account_wrap .account {
  display: flex;
  align-items: center;
  gap: 0 16px;
  padding-left: 24px;
}

.header .sidebar .account_wrap .img_wrap {
  overflow: hidden;
  width: 40px;
  height: 40px;
  border-radius: 40px;
}

.header .sidebar .account_wrap .account__thumbnail {
  width: 100%;
  height: auto;
  object-fit: cover;
  object-position: center;
}
.header .sidebar .account_wrap .account__name {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.33;
  color: #444444;
  transition: all 0.1s ease-out;
}
.header .sidebar .account_wrap .btn_group {
  display: flex;
  align-items: center;
  gap: 0 8px;
  padding-right: 13px;
}
.header .sidebar .account_wrap .btn--edit {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: 40px;
  background-color: transparent;
  transition: all 0.1s ease-out;
  cursor: pointer;
}
.header .sidebar .account_wrap .btn--edit .btn_icon,
.header .sidebar .account_wrap .btn--edit .btn__icon {
  width: 24px;
  height: 24px;
}
.header .sidebar .account_wrap .btn--edit .btn_icon path,
.header .sidebar .account_wrap .btn--edit .btn__icon path {
  fill: #85878b;
  transition: all 0.1s ease-out;
}
.header .sidebar .account_wrap .btn--edit:hover,
.header .sidebar .account_wrap .btn--edit:focus {
  background-color: #eceff6;
}
.header .sidebar .account_wrap .btn--edit.primary {
  background-color: #1462df;
}
.header .sidebar .account_wrap .btn--edit.primary .btn_icon path,
.header .sidebar .account_wrap .btn--edit.primary .btn__icon path {
  fill: #fff;
}
.header .sidebar .account_wrap .btn--edit.primary:hover,
.header .sidebar .account_wrap .btn--edit.primary:focus {
  background-color: #1257c6;
}
.header .sidebar .account_wrap .btn--edit.toner {
  border: 1px solid #1462df;
  background-color: transparent;
}
.header .sidebar .account_wrap .btn--edit.toner .btn_icon path,
.header .sidebar .account_wrap .btn--edit.toner .btn__icon path {
  fill: #1462df;
}
.header .sidebar .account_wrap .btn--edit.toner:hover,
.header .sidebar .account_wrap .btn--edit.toner:focus {
  background-color: #edf4ff;
}
.header .sidebar .account_wrap .btn--edit.warning:hover,
.header .sidebar .account_wrap .btn--edit.warning:focus {
  background-color: transparent;
}
.header .sidebar .account_wrap .btn--edit.warning:hover .btn_icon path,
.header .sidebar .account_wrap .btn--edit.warning:hover .btn__icon path,
.header .sidebar .account_wrap .btn--edit.warning:focus .btn_icon path,
.header .sidebar .account_wrap .btn--edit.warning:focus .btn__icon path {
  fill: #e8001f;
}
.header .sidebar .account_wrap .btn--signout {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: 40px;
  background-color: transparent;
  transition: all 0.1s ease-out;
  cursor: pointer;
}
.header .sidebar .account_wrap .btn--signout .btn_icon,
.header .sidebar .account_wrap .btn--signout .btn__icon {
  width: 24px;
  height: 24px;
}
.header .sidebar .account_wrap .btn--signout .btn_icon path,
.header .sidebar .account_wrap .btn--signout .btn__icon path {
  fill: #85878b;
  transition: all 0.1s ease-out;
}
.header .sidebar .account_wrap .btn--signout:hover,
.header .sidebar .account_wrap .btn--signout:focus {
  background-color: #eceff6;
}
.header .sidebar .account_wrap .btn--signout.primary {
  background-color: #1462df;
}
.header .sidebar .account_wrap .btn--signout.primary .btn_icon path,
.header .sidebar .account_wrap .btn--signout.primary .btn__icon path {
  fill: #fff;
}
.header .sidebar .account_wrap .btn--signout.primary:hover,
.header .sidebar .account_wrap .btn--signout.primary:focus {
  background-color: #1257c6;
}
.header .sidebar .account_wrap .btn--signout.toner {
  border: 1px solid #1462df;
  background-color: transparent;
}
.header .sidebar .account_wrap .btn--signout.toner .btn_icon path,
.header .sidebar .account_wrap .btn--signout.toner .btn__icon path {
  fill: #1462df;
}
.header .sidebar .account_wrap .btn--signout.toner:hover,
.header .sidebar .account_wrap .btn--signout.toner:focus {
  background-color: #edf4ff;
}
.header .sidebar .account_wrap .btn--signout.warning:hover,
.header .sidebar .account_wrap .btn--signout.warning:focus {
  background-color: transparent;
}
.header .sidebar .account_wrap .btn--signout.warning:hover .btn_icon path,
.header .sidebar .account_wrap .btn--signout.warning:hover .btn__icon path,
.header .sidebar .account_wrap .btn--signout.warning:focus .btn_icon path,
.header .sidebar .account_wrap .btn--signout.warning:focus .btn__icon path {
  fill: #e8001f;
}

@media screen and (min-width: 600px) {
  .header .sidebar {
    max-width: 316px;
  }
}
@media screen and (min-width: 1280px) {
  .header .mobile_header {
    display: none;
  }
  .header .scrim--nav {
    display: none;
  }
  .header .sidebar {
    width: 316px;
    position: relative;
    padding: 32px 0 24px;
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
    box-shadow: none;
    max-width: 250px;
  }
  .header .sidebar .title_wrap .btn--close {
    display: none;
  }
  .header .sidebar .account_wrap {
    gap: 0 24px;
  }
}

