:root {
  --background: #fff;
  --menu-background: #f6f6f6;
  --default-font-color: #333d4b;
  --default-font-color-half: #333d4baf;
  --table-header-underline: 1px solid #d0d0d0;
  --table-underline: 1px solid #e9e9e9;
  --white: #fff;
  --active: #2f81fd;
  --box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);

  --icon-background: #d1d1d1; /*좌측메뉴 아이콘 선택이나 오버시 배경*/
  --hover-background-color: #e5f1f9;
  --hover-background-color-half: #e5f1f9c2;

  --panel-background-color: var(--background);
  --popup-background-color: #f5f5f5;
  /* --popup-background-color: #c13131; */
  --popup-title-background-color: #e6e6e6;
  --popup-line: 1px solid #b6b6b6;
  --popup-input-color: #202020;

  --form-background: var(--white);

  --focus: #17bfdd8a;
  --readonly: #f9f9f9;
  --img-filter: invert(0);
}

body.dark_mode {
  --background: #101013;
  --menu-background: #191a1b;
  --default-font-color: #e4e4e5;
  --default-font-color-half: #e4e4e588;
  --table-header-underline: 1px solid #585858;
  --table-underline: 1px solid #3a3a3a;
  --active: #3485eb;
  --box-shadow: 0 2px 4px rgb(0 0 0 / 29%);

  --icon-background: #606060; /*좌측메뉴 아이콘 선택이나 오버시 배경*/
  --hover-background-color: #3d3d3d;
  --hover-background-color-half: #3d3d3d79;

  --popup-background-color: #1d1d21;
  --popup-title-background-color: #2c2c35;
  --popup-line: 1px solid #707070;
  --popup-input-color: #fff;
  --panel-background-color: var(--popup-background-color);

  --form-background: var(--popup-title-background-color);
  --focus: #3d5555;
  --readonly: #3a3a3a;
  --img-filter: invert(0.85);
}

* {
  scrollbar-width: thin;
  scrollbar-color: rgba(224, 224, 255, 0.36) transparent;
  transition:
    width 0.2s ease-in-out,
    padding-left 0.2s ease-in-out;
}

/* 2. html과 body만 스크롤바 두께를 기본(auto)으로 복구 */
html,
body {
  scrollbar-width: auto;
  scrollbar-color: rgba(215, 215, 224, 0.466) transparent;
}

/* 달력 아이콘 스타일링 */
input[type="date"]::-webkit-calendar-picker-indicator {
  /* 1. 색상 변경: filter를 사용하는 것이 가장 효과적입니다 */
  filter: invert(48%) brightness(118%) contrast(119%);
  margin-left: 10px;
  /* 2. 크기 조절 */
  cursor: pointer;
  font-size: 1.2rem;
}

a {
  color: var(--active);
}

audio {
  filter: var(--img-filter);
}
body {
  padding: 0;
  font-family: Noto Sans KR;
  font-size: 0.9rem;
  color: var(--default-font-color);
  background: var(--background);
}

.ui-widget.ui-widget.ui-widget-content {
  border: var(--table-underline);
}
/* 전체 목록 박스 스타일 */
.ui-autocomplete.ui-autocomplete {
  border: var(--table-underline);
  border-radius: 8px;
  max-height: 300px; /* 목록이 너무 길어질 때 스크롤 생성 */
  overflow-y: auto;
  z-index: 1000; /* 다른 요소에 가려지지 않게 설정 */
}

.ui-widget-content.ui-widget-content {
  background: var(--background);
  color: var(--default-font-color);
}

.ui-menu-item.ui-menu-item .ui-state-active {
  background: var(--focus) !important; /* 원하는 배경색 */
  color: var(--default-font-color) !important; /* 원하는 글자색 */
  border: var(--table-underline); /* 테두리 제거 (선택사항) */
}

.page-link,
.page-item.disabled .page-link {
  color: var(--default-font-color);
  background-color: var(--background);
  border: var(--table-underline);
}

@keyframes report_status_ani1 {
  0% {
    background: #1697e7;
    color: #fff;
  }
  50% {
    background: #a9d5f0;
  }
  100% {
    background: #3798d4;
    color: #fff;
  }
}

@keyframes report_status_ani2 {
  0% {
    background: var(--hover-background-color);
  }
  50% {
    background: var(--hover-background-color);
  }
  100% {
    background: var(--hover-background-color);
  }
}

@keyframes height_close {
  from {
    height: 400px;
  }
  to {
    height: 70px;
  }
}

@keyframes colorWave {
  0% {
    filter: hue-rotate(0deg);
  }
  100% {
    filter: hue-rotate(60deg);
  }
}

.btn-primary,
.btn-secondary,
.btn-success,
.bg-primary,
.btn-dark {
  color: #fff !important;
}
.btn-light {
  color: var(--default-font-color);
  background-color: var(--background);
  border: var(--table-header-underline);
}
/* 전체를 감싸는 컨테이너: 텍스트와 스위치를 가로로 정렬 */
.mode-toggle-wrapper {
  display: flex;
  align-items: center; /* 세로 중앙 정렬 */
  gap: 12px; /* 텍스트와 스위치 사이 간격 */
  font-family: sans-serif;
}

.label-text {
  font-size: 14px;
  font-weight: 600;
  color: var(--default-font-color); /* 변수 사용 가능 */
  user-select: none; /* 텍스트 드래그 방지 */
}

/* 스위치 기본 스타일 */
.toggle-container {
  cursor: pointer;
  display: inline-block;
}

.toggle-input {
  display: none;
}

.toggle-switch {
  width: 46px;
  height: 22px;
  background-color: #e9e9ea; /* OFF 상태 (Light) */
  border-radius: 12px;
  position: relative;
  transition: background-color 0.3s;
}

/* ON 상태 (Dark) 배경색 */
.toggle-switch.is-on {
  background-color: #2c3e50; /* 어두운 색상으로 변경 */
}

.toggle-handle {
  width: 18px;
  height: 18px;
  background-color: white;
  border-radius: 50%;
  position: absolute;
  top: 2px;
  left: 2px;
  transition: transform 0.3s;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

/* ON 상태일 때 버튼 이동 */
.is-on .toggle-handle {
  transform: translateX(24px);
}

.report_info_box {
  display: flex;
  color: var(--default-font-color);
  font-size: 11px;
  padding: 5px 10px;
  justify-content: space-between;
}

.i_contents {
  width: 100%;
  /* padding-bottom: 100px; */
}

.bottom_gap {
  height: 150px;
}
.pcode {
  background: var(--icon-background);
  padding: 2px 10px;
  border-radius: 10px;
}

.fsize1 {
  font-size: 0.8rem;
}

.btn {
  color: var(--default-font-color);
}

button:active,
select:active {
  background-color: var(--active) !important;
}

.xbtn {
  position: absolute;
  margin-top: 10px;
  right: 20px;
  top: 10px;
}

.span2 {
  grid-column: span 2;
}

/*목록 검색용*/
/* 검색창 */
.search_form {
  margin: 0 0 25px;
  align-items: center;
  gap: 10px;
  display: grid;
}

.search_input {
  border-radius: 10px;
  background-color: var(--form-background);
  padding: 5px 10px 5px 40px;
  border: var(--table-header-underline);

  color: var(--default-font-color);

  /* 배경으로 돋보기 넣기 */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23999' d='M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 12px center; /* 왼쪽에서 12px 띄우고 중앙 정렬 */
  background-size: 18px; /* 아이콘 크기 조절 */
}
/* 
.search_input:focus-visible {
  outline: 1px solid #c5c6c5;
} */
/* 
.search_gray select {
  background-color: #f1f1f1;
} */

.form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  padding: 15px 8px;
  gap: 15px;
  align-items: end;
}

.form:not(:has(*)) {
  padding: 0;
  display: none; /* 아예 공간 자체를 지우고 싶을 때 */
}

.symbol {
  display: inline-block;
  opacity: 0.5;
  zoom: 0.85;
}

.field {
  position: relative;
  grid-column: 1 / -1;
}

.field2,
.field2_fix {
  grid-column: auto;
}

.field > input::placeholder {
  color: transparent;
  transition: color 0.2s ease-in-out;
}

/* 포커스가 가거나 글자가 입력될 때만 보이게 하고 싶다면 */
.field > input:focus::placeholder {
  color: var(--default-font-color);
}

.field > .xblue {
  color: #0072ff;
}

.field > .xgreen {
  color: #0aa71c;
}

.field > label {
  width: max-content;
  font-size: 0.9rem;
  color: var(--default-font-color);
  position: absolute;
  top: 6px;
  left: 0px;
  height: 100%;
  padding: 0 0.75rem;
  pointer-events: none;
  border: 1px solid transparent;
  transform-origin: 0 0;
  transition:
    opacity 0.1s ease-in-out,
    transform 0.1s ease-in-out;
}

.field > .long_label {
  font-size: 0.6rem !important;
  word-wrap: break-word;
  width: 120px;
  top: 2px;
}

.field > .currency-symbol {
  position: absolute;
  width: 40px;
  right: -7px;
  top: 9px;
  opacity: 0.5;
}

.field > input,
.field > select,
.field > textarea,
.field > .like_input {
  width: 100%;
  border: none;
  /* border-bottom: 1px solid #ddd; */
  font-size: 0.85rem;
  padding: 6px 25px 6px 6px;
}
.field > input {
  padding-right: 6px;
}

.field .symbol-gap {
  padding-right: 40px;
}

.field > .add_padding {
  padding: 12px 20px;
}

input,
select,
textarea {
  background-color: var(--form-background);
  border-radius: 10px;
  border: var(--table-underline);
}

.field > input,
.field > select,
.field > textarea,
.field > .like_input {
  background-color: var(--form-background);
  border-radius: 10px;
  border: var(--table-underline);
  padding-left: 80px;
  color: var(--popup-input-color);

  /* background-image: radial-gradient(#d0d0d0, transparent);
  background-size: 100% 1px;
  background-repeat: no-repeat;
  background-position: bottom; */
}

select:focus,
.field > input:focus,
.field > select:focus,
.field > textarea:focus,
.search_input:focus {
  outline: none;
  box-shadow: inset var(--box-shadow);
  border-color: var(--focus);

  /* background-image: radial-gradient(#3182f6, transparent);
  background-size: 100% 1px;
  background-repeat: no-repeat;
  background-position: bottom; */
}

/* .field > select,
.field > input {
  background-color: #fff;
} */
.field > select option {
  background-color: var(--background); /* 목록 배경색 */
  color: var(--default-font-color); /* 글자색 */
  padding: 10px; /* 대부분의 브라우저에서 무시됨 */
}
/* label이 앞에 있을때.. */
/* 1. input에 포커스가 있거나 */
/* 2. input에 값이 들어있을 때 (placeholder가 안 보일 때) */
/* .field 내부의 label 스타일을 변경하라 */
/* .field:has(input:focus) label, .field:has(input:not(:placeholder-shown)) label,.field:has(input:focus) label {
  opacity: .65;
  transform: scale(.85) translateY(-.5rem) translateX(.15rem);
} */

/* label이 뒤에 있을때 */
.field > input:focus ~ label,
.field > textarea:focus ~ label,
.field > input:not(:placeholder-shown) ~ label,
.field > textarea:not(:placeholder-shown) ~ label,
.field > select ~ label,
.field > .like_label {
  opacity: 0.65;
  transform: scale(0.85);
}

.field select {
  appearance: none;
  background-color: var(--form-background);
  /* 공백과 인코딩을 수정한 올바른 데이터 URI */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23808080' stroke-width='3' d='M2 5l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-size: 12px; /* 화살표 크기가 너무 크다면 조절하세요 */
}

.field > textarea {
  background: var(--background);
  border-radius: 10px;
}

.btn_bar {
  margin: 20px 0 5px;
  display: grid;
  row-gap: 5px;
}

.btn_group_2way {
  display: grid;
  /* 너비가 최소 150px이며, 남은 공간을 1배율(1fr)로 채우는 열을 가능한 많이 배치 */
  grid-template-columns: auto auto;
  border-radius: 10px;
  gap: 5px;
  background: #ebebeb;
  color: #808080;
}

.btn_group_2way > .bttn {
  border: 0;
  border-radius: 5px;
  margin: 5px;
  color: rgb(134, 134, 134);
  background: transparent;
  padding: 5px;
}

.btn_group_2way > .bttn:hover {
  color: rgb(15, 90, 182);
}

.btn_group_2way > .active {
  background: var(--white);
  color: #4b4b4b;
  box-shadow: var(--box-shadow);
}

.btn_group_2way > .active:hover {
  color: #4b4b4b;
}

.gray01 {
  color: #ddd;
}

.alignLeft {
  text-align: left !important;
  justify-content: left !important;
}

.alignCenter {
  text-align: center !important;
  justify-content: center !important;
}

.alignRight {
  text-align: right !important;
  justify-content: right !important;
}

/* Firefox */
input::-moz-placeholder {
  color: #bebebe;
}

/* IE */
input:-ms-input-placeholder {
  color: #bebebe;
}

/* Edge */
input::-ms-input-placeholder {
  color: #bebebe;
}

.overlap {
  width: 400px;
  position: absolute;
  z-index: 3;
  top: 100px;
  padding: 20px;
  /* margin: 0 auto; */
  left: 0;
  right: 0;
  /* width:100%; */
  border-radius: 20px;
  overflow: unset;
  z-index: 99999;
  border-end-end-radius: 20px;
  border-end-start-radius: 20px;
}

.overlap::-webkit-scrollbar {
  display: none;
}

.overlap600 {
  width: 600px;
}

#overlapback,
.overlapback {
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  z-index: 99998;
  background: rgba(0, 0, 0, 0.5);
}

/* 트랜지션 구현부분 */
.v-enter {
  /*transform: translateY(-600px);*/
  transform: scale(0.8);
  opacity: 0.1;
  transform: translateY(-100px);
}

.v-enter-active {
  /* active entering style */
  transition: all 0.3s ease;
}

.v-enter-to {
}

.v-leave-active {
  /* active entering style */
  transition: all 0.3s ease;
}
.v-leave-to {
  /* ending style */
  transform: scale(0.8);
  transform: translateY(-100px);
  opacity: 0;
}

.map_tree {
  display: grid;
  grid-template-columns: auto;
  justify-items: start; /* 모든 항목을 왼쪽 정렬 */

  /* border-bottom: 1px solid #dbdbdb; */
  align-items: baseline;
  padding: 0 10px;
  transition:
    width 0.3s ease,
    font-size 0.5s ease,
    color 0.5s ease;
}

.map_tree .map_branch {
  font-size: 14px;
}

.map_tree .map_branch > span {
  margin: 0 5px;
  font-size: 0.7rem;
}

.map_tree .map_title {
  font-size: 36px;
  color: var(--default-font-color);
  font-weight: 500;
}

.spacing32 {
  display: block;
  height: 32px;
}

.spacing16 {
  display: block;
  height: 16px;
}

.right_arrow {
  font-size: 0.5rem;
  color: #7285ed;
}

.input-container {
  position: relative;
  display: inline-block;
  width: 150px;
}
.input-container input {
  text-align: right;
  padding-right: 30px; /* 여유 공간을 확보합니다 */
}
.input-container .currency-symbol {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none; /* 클릭 이벤트가 input에 전달되도록 합니다 */
}

.report_reason_date {
  margin: 10px 0px;
  padding: 10px 20px;
  font-size: 12px;
  border-radius: 20px;
  background: #fff;
}

/*테이블구조 리스트 목록 과헤더*/
.clist,
.clist_header {
  display: grid;
  font-size: 0.85rem;
  /* grid-template-columns: 70px 100px 100px 80px; //개별페이지 입력.*/
  /* border-bottom: 1px solid #393939; */
}

.clist:nth-last-child(-n + 1) {
  border-bottom: 0;
}

.clist_header > div {
  font-weight: 500;
}

.clist > div,
.clist_header > div {
  white-space: nowrap; /* 자동 줄바꿈 방지 */
  padding: 5px;
  text-align: center;
  justify-content: center;
  display: flex;
  overflow: clip; /*flex로 하니 글자가 좌우 컬럼 글자와 겹쳐서 추가함.  auto값을 주면 모바일에서 축소되는 버그가 발생해서 clip으로 사용함.*/
  align-items: center;
  border-bottom: var(--table-underline);
}

.clist .cols2 {
  grid-column: span 2;
}

.clist .rows2 {
  grid-row: span 2;
  display: grid; /*높이 중앙정렬을 위해 반드시 넣어야함.*/
}

.dialogList {
  display: grid;
  width: 100%;
}

.dialogList div {
  padding: 10px;
  border-bottom: var(--table-underline);
}

.dialogList div {
  text-align: center;
}

/*normal box에서 사용할 가로폭 정의*/
.normal_width_step300 {
  width: 300px;
}
.normal_width_step400 {
  width: 400px;
}
.normal_width_step500 {
  width: 500px;
}
.normal_width_step600 {
  width: 600px;
}
.normal_width_step700 {
  width: 700px;
}
.normal_width_step800 {
  width: 800px;
}
.normal_width_step900 {
  width: 900px;
}
.normal_width_step1000 {
  width: 1000px;
}
.normal_width_step1100 {
  width: 1100px;
}
.normal_width_step1200 {
  width: 1200px;
}
.normal_width_step1300 {
  width: 1300px;
}
.normal_width_step1400 {
  width: 1400px;
}
.normal_width_step1500 {
  width: 1500px;
}
.normal_width_step1600 {
  width: 1600px;
}
.normal_box_header {
  font-size: 1.7rem;
  font-weight: 500;
  border-bottom: 1px solid #666666;
}

/*2025-01-07 기본 내부상자*/
.normal_empty_box {
  margin-top: 20px;
  border-radius: 1.2rem;
  border: 1px solid #b8b8b8;
  box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
  padding-top: 1rem;
}

.normal_blue_box {
  margin-top: 20px;
  border-radius: 20px;
  border: 1px solid #5187fc;
  padding: 20px 20px;
  background: #fff;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  font-size: 0.9rem;
}

.normal_blue_box .normal_blue_box_header {
  border: 1px solid #b8b8b8;
  border-top-left-radius: 1.2rem;
  border-top-right-radius: 1.2rem;
  background-color: #fff;
  /* color: #ffffff; */
  padding: 0.5rem 1rem;
  font-size: 1.3rem;
  font-weight: 500;
}

.normal_blue_box .normal_blue_box_content {
  border-bottom-left-radius: 1.2rem;
  border-bottom-right-radius: 1.2rem;
  background-color: #fff;
  padding: 0.5rem 1rem;
}

.normal_blue_box .normal_blue_box_content2 {
  background-color: #fff;
  padding: 0.5rem 1rem;
}

.normal_empty_box .normal_empty_box_content2 {
  border-bottom-left-radius: 1.2rem;
  border-bottom-right-radius: 1.2rem;
  padding: 0.5rem 1rem;
}

.normal_blue_box .normal_blue_box_bt {
  display: grid;
  grid-auto-flow: column;
  /* border-top: 1px solid #98bec9; */
  background-color: #fff;
  overflow: hidden;
  border-bottom-left-radius: 1.2rem;
  border-bottom-right-radius: 1.2rem;
  padding: 0;
  height: 50px;
}

.normal_blue_box .normal_blue_box_bt button {
  border-radius: 0 !important;
}

/*화이트박스*/

.normal_white_box {
  border-radius: 15px;
  /* border: 1px solid #ececec; */
  padding: 20px;
  background: var(--panel-background-color);
  box-shadow: var(--box-shadow);
}

.normal_white_box .normal_white_box_header {
  border: var(--table-underline);
  /* color: #ffffff; */
  padding: 0.5rem 1rem;
  font-size: 1.3rem;
  font-weight: 500;
}

.normal_white_box .normal_white_box_bt {
  display: grid;
  grid-auto-flow: column;
  /* border-top: 1px solid #98bec9; */
  background-color: var(--background);
  overflow: hidden;
  padding: 0;
  height: 50px;
}

.normal_white_box .normal_white_box_bt button {
  border-radius: 0 !important;
}

/*블랙계열의 상자*/
.section_box {
  /* padding: 7px; */
  /* width: calc(100% - 0px); */
  /* display: inline-block; */
  margin: 0 auto;
  align-items: baseline;
  display: grid;
  gap: 10px;
  /* background: var(--background); */
}

.section_box .section_header {
  display: grid;
  justify-content: center;
  align-items: baseline;
}

.section_tit,
.section_sub_tit {
  font-size: 1.5rem;
  font-weight: 500;
  align-items: center;
  margin: 5px 20px 5px;
}

.section_tit {
  /* display: grid;
  grid-template-columns: auto auto;
  justify-content: space-between;
  margin: 20px 0px 0px 20px; */
}

.mobile_only {
  display: none;
}

.pc_only {
  display: block;
}

.form-floating > .form-control {
  height: calc(3rem + 2px);
}

.form-control {
  background-color: var(--background);
  color: var(--default-font-color);
  background-clip: padding-box;
  border: var(--table-underline);
}

.form-control:disabled,
.form-control[readonly] {
  background-color: var(--readonly);
  opacity: 1;
}

.input-group-text {
  /* background-color: var(--icon-background); */
  color: var(--default-font-color);
  border: var(--table-underline);
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  transition: background-color 5000s ease-in-out 0s; /* 배경색 변화를 영구히 지연 */
  -webkit-text-fill-color: var(
    --default-font-color
  ) !important; /* 글자색 강제 */
}
a,
article,
button,
div,
img,
input,
li,
p,
section,
span,
table,
ul {
  word-break: keep-all;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 500 !important;
  word-break: keep-all;
}

label {
  font-size: 0.8rem;
  font-weight: 400;
  display: block;
}

table {
  padding: 0 0px;
  box-shadow: var(--box-shadow);
}

table tbody {
  /* background: var(--background); */
}

tbody,
td,
tfoot,
th,
thead,
tr {
  border-color: var(--table-underline);
  border-style: solid;
  border-width: 0;
}

table thead {
  font-size: 0.925rem;
  font-weight: 500;
}

.table td,
.table th {
  vertical-align: middle;
  align-items: center;
}

td {
  font-size: 0.76rem;
  /* padding: 0.1rem !important; */
  color: var(--default-font-color);
  text-wrap-mode: nowrap;
  white-space: nowrap;
  border-bottom: var(--table-underline);
}
.table > :not(:first-child) {
  border-top: var(--table-header-underline);
}

.table thead th {
  border-bottom: var(--table-header-underline);
  font-weight: 500;
  height: 40px;
}

.link {
  color: #0459c1;
}

.nav_article_count {
  color: #808080;
  display: block;
  margin-left: 5px;
  font-size: 12px;
}

.round-box {
  display: block;
  padding: 0 7px;
  border-radius: 7px;
  color: #fff;
}
.round-box-info {
  background: #37d1dc;
}

.td_box {
  display: flex;
  align-items: center;
  height: 40px;
  width: 100%;
}
.logo {
  background: url("../img/form_standard_icon.png") no-repeat;
  padding-left: 38px;
  filter: grayscale(50%);
}
.ex {
  font-size: 10px;
  color: #808080;
}

.split {
  font-size: 9px;
  color: #dcdcdc;
  margin: 0 10px;
}

.split2 {
  font-size: 0.6rem;
  margin: 0 4px;
  border-left: 1px solid #fff;
  border-right: 1px solid #6f6f6f;
  display: inline-block;
  width: 0px;
  height: 10px;
}

.lunar {
  float: right;
  font-size: 11px;
  color: #a8a8a8;
}

.admin {
  position: fixed;
  bottom: 50px;
}

.user_img {
  background-image: url("../img/human_avatar.png");
  background-size: 1%;
}

.member_card {
  display: inline-block;
  margin: 10px;
  width: 270px;
  height: 110px;
}

.form-control-sm {
  /* font-size: 0.75rem; */
}

@keyframes grow {
  0% {
    transform-style: preserve-3d;
    transform: scale(0.8) translateY(30px) perspective(600px) rotateX(90deg);
    opacity: 0;
  }
  100% {
    transform-style: preserve-3d;
    transform: scale(1);
  }
}

.up_img {
  animation-name: up_img_grow;
  animation-duration: 0.5s;
}

@keyframes up_img_grow {
  from {
    transform: scale(1) rotate(0turn);
  }
  to {
    transform: scale(2.2) rotate(0turn);
  }
}

.document_image {
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.3);
  border: var(--table-header-underline);
  border-radius: 7px;
  margin: 5px;
}

.member_card_in {
  transition: all 0.2s;
  position: absolute;
  display: block;
  padding: 10px;
  border: var(--table-underline);
  border-left: 0;
  border-top: 3px solid #1dcfa3;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  width: 270px;
  height: 106px;
  border-radius: 10px;
  background: var(--background);

  justify-content: space-around;

  animation-name: grow;
  animation-duration: 0.8s;
}

.member_card_in:hover {
  /* border-radius: 5px;
  height:107px; */
  /* padding:5px; */
  /* position: absolute; */
  /* border:1px solid #0cdcb9; */
  border-top: 4px solid #a0cf1d;
  background: var(--hover-background-color);
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.1);
  /* z-index:999999;
  transform:scale(1.05); */
}

.member_card_info {
  padding: 10px;
  text-align: right;
}

.member_card_info span {
  text-align: right;
  line-height: 170%;
  font-size: 13px;
  color: var(--default-font-color);
}

.vacation_free {
  position: absolute;
  font-size: 11px;
  color: var(--default-font-color);
  margin-left: 99px;
  margin-top: 5px;
  height: 20px;
}

.vacation_free span {
  color: var(--default-font-color);
  padding: 1px 10px;
  font-size: 14px;
  border-radius: 2px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #33ac02;
}

.xrank {
  position: absolute;
  display: block;
  border-radius: 5px;
  font-size: 11px;
  color: var(--default-font-color-half);
  padding: 1px 3px;
  background-color: #f8db37;
  margin-left: 30px;
  margin-top: 26px;
}

.xrank_4 {
  background-color: #e78dfd;
}

.pic_auth_info {
  margin: 7px;
  transition: all 0.3s;
  display: block;
  height: 80px;
  width: 80px;
  border-radius: 50%;
  overflow: hidden;
  animation-name: grow;
  animation-duration: 0.5s;
  text-align: center;
  box-shadow:
    0 0 5px rgba(0, 0, 0, 0.5),
    inset 0 0 5px rgb(22, 10, 0, 0.3);
  border: 4px solid #fff;
  background-size: 50px;
  background-position-x: center;
  background-position-y: 15px;
  background-repeat: no-repeat;
  background-color: #f1f1f1;
}
.pic_auth_info span {
  display: block;
  width: 80px;
  height: 90px;
  overflow: hidden;
}

.pic_auth_info img {
  width: 100%;
}

.pic_auth {
  transition: all 0.3s;
  display: block;
  height: 166px;
  border-radius: 10px;
  overflow: hidden;
  animation-name: grow;
  animation-duration: 0.5s;
  text-align: center;
  box-shadow:
    0 0 10px rgba(0, 0, 0, 0.2),
    inset 0 0 20px rgb(22, 10, 0);
  border: 4px solid #fff;
  cursor: pointer;
}

.pic_auth span {
  display: block;
  width: 100px;
  height: 120px;
  overflow: hidden;
}

.pic_auth img {
  width: 100%;
}

.pic_auth:hover {
  /* transform:scale(1.012); */
  /* border:3px solid rgba(255, 255, 255, 0.688); */
  border: 4px solid #1fb8dc;
  box-shadow: 0 0 20px rgb(17, 169, 203);
  cursor: pointer;
}

.pic_auth:hover > img {
  transform: scale(1.012);
}

.sel_pic_auth,
.sel_pic_auth:hover {
  border: 4px solid #ffe478;
  box-shadow:
    0 0 10px rgb(0, 0, 0),
    inset 0 0 20px rgb(22, 10, 0);
}

.pic_user_box_sm {
  position: absolute;
  display: block;
  width: 60px;
  height: 60px;
  overflow: hidden;
  border-radius: 2px;
}

.pic_user_box_sm img {
  transition: all 0.3s;
  width: 100%;
}

.member_card_in:hover > .pic_user_box_sm img {
  animation-name: up_img_grow;
  animation-duration: 0.5s;
}

.pic_user_box_xs {
  width: 30px;
  height: 30px;
}

.float_left {
  float: left;
}
.interaction_box {
  width: 99%;
  /* max-width:900px; */
  /* margin-right: 235px !important; */
  /* background: #fff; */
  /* background:#fff; */
  /* border-radius: 20px; */
  /* border: 1px solid #dcdcdc; */
  /* box-shadow: 0 0 5px rgba(0,0,0,0.1); */
  /* box-shadow: rgb(20 20 20 / 4%) 2px 7px 16px 0px, rgb(20 20 20 / 0%) 0px 1px 5px 0px; */
}

.i_header {
  /* position:fixed;
  left:265px;
  top:46px;
  width:100%;
  display:none;
  padding:20px 20px 5px;
  background: #fff;
  border-left:0;
  box-shadow: 0 0 10px rgba(0,0,0,0.1);
  z-index:2; */
  /* margin-left: 12px; */
  margin-bottom: 30px;
  /* border-bottom: 1px solid #adadad; */
}

.display_show {
  display: block !important;
}

.interaction_box .i_contents {
  width: 100%;
  display: block;
  padding: 0px;
}

.info_card {
  display: grid;
  font-size: 14px;
  margin: 10px;
}

.info_card h5 {
  margin-bottom: 10px;
  border-bottom: 1px solid #999;
  padding-bottom: 10px;
}

.save_area {
  position: relative;
  width: 100%;
  padding: 0px 20px 25px;
}

.back_black {
  /* background:#4b4b4b !important; */
}

#top_nav {
  display: grid;
  grid-template-columns: auto 80px 80px;
  position: fixed;
  height: 54px;
  transition: all 0.5s;
  transition-timing-function: ease-out;
  z-index: 10;
  width: 100%;
  top: 0;
  left: 0;
  padding-left: 20px;
  background-color: var(--menu-background);
  color: var(--default-font-color);
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.05);
  border-bottom: var(--table-header-underline);
}

#top_nav .top_logo {
  display: grid;
  margin-left: 0px;
  font-size: 1.4rem;
  font-weight: 500;
  height: 100%;
  align-content: center;
  color: var(--default-font-color);
  grid-template-columns: 50px auto;
  align-items: center;
}

#top_nav .add {
  display: none;
}

#left_nav .add i {
  transition: all ease 0.1s;
}

#left_nav .add:hover {
  z-index: 20000;
  /* font-size:26px;
  transform: scale(1.3); */
}

#left_nav .add:hover i {
  transform: scale(1.1);
  text-shadow: 5px 5px 5px rgba(0, 0, 0, 0.1);
}

.row {
  margin: 0 !important;
}

.ptitle_color {
  color: #fff;
  margin-right: 5px;
}

table,
.table {
  color: var(--default-font-color);
  font-size: 14px;
}

ol,
ul {
  font-size: 14px;
  line-height: 180%;
}

.b_white {
  /* background: linear-gradient(330deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.1) 100%); */
}

.b_purple {
  /* background: linear-gradient(330deg, rgba(118, 127, 252, 0.1) 0%, rgba(7, 171, 247, 0.1) 100%); */
}

.b_red {
  /* background: linear-gradient(330deg, rgba(252, 118, 118, 0.1) 0%, rgba(240, 146, 4, 0.1) 100%); */
}

#left_nav {
  display: flex;
  flex-direction: column;
  align-items: center;
  transition: all 0.4s;
  transition-timing-function: ease;
  z-index: 9;
  position: fixed;
  top: 0;
  bottom: 0;
  width: 54px;
  padding-top: 60px;
  background-color: var(--menu-background);
  border-right: var(--table-header-underline);
  font-size: 12px;
  overflow-y: scroll;
  /* &::-webkit-scrollbar {
    display: none;
    outline: none; /* 포커스 시 생기는 선 제거 */
  /* border: none; 혹시 모를 테두리 제거 */
  /* }  */
  /* 1. 크롬, 사파리, 엣지 (WebKit 기반) */
  &::-webkit-scrollbar {
    display: none;
  }

  /* 2. 파이어폭스 (현재 상단에 쓰신 속성 덮어쓰기) */
  scrollbar-width: none;

  /* 3. 인터넷 익스플로러, 구형 엣지 */
  -ms-overflow-style: none;
}

.gxe9ll7 {
  font-weight: 500;
  color: #00132b94;
  margin-top: 4px;
}

.gxe9ll6 {
  display: flex;
  align-items: center;
  margin-bottom: 2px;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  color: #aab2bd;
  /* filter: opacity(0.6); */
  /* color: #000c1ecc; */
  /* background-color: #0019364f; */
}

.gxe9ll5 {
  width: 48px;
  height: 64px;
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-shrink: 0;
}

.gxe9ll5,
.gxe9ll6 {
  justify-content: center;
}

.gxe9ll4,
.gxe9ll5 {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.lopen {
  -webkit-transform: translateX(0px) !important;
}

.big_cate {
  cursor: pointer;
  transition: all 0.2s ease;
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #76808d;
}

.big_cate:hover .gxe9ll6,
.bselect > .gxe9ll6 {
  background-color: var(--icon-background);
  color: var(--default-font-color);
}
.big_cate:hover span,
.bselect > span {
  color: var(--default-font-color);
}

.big_cate .fa {
  font-size: 20px;
}

.big_cate .icon_desc {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.6;
  color: #00132b94;
}

.big_cate .balloon {
  background: #2c2c2c;
  color: #dcdcdc;
  border-radius: 5px;
  padding: 5px 7px;
  font-size: 12px;
  position: absolute;
  margin-left: 55px;
  margin-top: 10px;
  display: none;
  z-index: 10px;
}

.bedge {
  display: block;

  height: 18px;
  width: 18px;
  color: #fff;
  line-height: 18px;
  text-align: center;
  font-size: 0.4rem;
  font-weight: 600;
  border-radius: 50%;
  box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.1);
  background: rgb(197, 57, 40);
  color: #fff;
  position: absolute;
  margin-left: 28px;
  margin-top: -5px;
}

.big_cate:hover .balloon {
  display: block;
}

#sub_nav {
  transition: all 0.2s;
  z-index: 8;
  position: fixed;
  top: 40px;
  bottom: 0;
  -webkit-transform: translateX(-250px);
  width: 250px;
  color: var(--default-font-color);
  border-right: var(--table-underline);
  box-shadow: var(--box-shadow);
  padding: 10px 5px;
  font-size: 14px;
  /* filter: opacity(0.6); */
  background: var(--menu-background);
}

#sub_nav:after {
  /* background-image: url("data:image/png;base64,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");   */
  top: 0;
  left: 0;
  position: absolute;
  background-size: 100%;
  opacity: 0.3 !important;
  z-index: -1;
  content: "";
  width: 100%;
  height: 100%;
}

#sub_nav .sub_title {
  transition: all 0.1s;
  border-radius: 5px;
  margin: 0 7px;
  display: flex;
  height: 35px;
  padding: 2px 15px 2px 25px;
  -ms-flex-align: center;
  align-items: center;

  font-size: 14px;
  font-weight: 500;
}

#sub_nav .mtitle {
  opacity: 0.5;
  display: block;
  font-size: 15px;
  font-weight: 500;
  padding: 25px 0 5px 20px;
  margin-bottom: 10px;
  border-bottom: 1px solid var(--table-underline);
}

#sub_nav .sub_title:hover {
  background: var(--hover-background-color-half);
  color: var(--default-font-color);
}

.sub_open:hover {
  /* color: #fff; */
  background: var(--hover-background-color-half) !important;
  color: var(--default-font-color);
}

@keyframes pumping {
  0% {
    border-radius: 50%;
  }
  15% {
    border-radius: 30%;
    border-color: #fcef42;
  }
  65% {
    border-radius: 30%;
    border-color: #56f8f3;
  }
  100% {
    border-radius: 50%;
  }
}

@keyframes sub_title_ani {
  from {
    background: #8df5af;
    box-shadow:
      inset 0 0 5px rgba(0, 0, 0, 0.1),
      0 0 3px rgba(0, 0, 0, 0.2);
  }
  to {
    background: #fff146;
    box-shadow:
      inset 0 0 5px rgba(0, 0, 0, 0.1),
      0 0 4px rgba(0, 0, 0, 0.2);
  }
}

#sub_nav i {
  font-size: 16px;
  color: #939393;

  font-weight: 300;
}

#sub_nav .i_cover {
  display: flex;
  width: 10px;
  height: 18px;
  margin-right: 20px;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
}

.open {
  -webkit-transform: translateX(53px) !important;
}

.sub_open {
  background: var(--hover-background-color);
  color: var(--default-font-color);
  /* animation-name:sub_open_ani;  
  animation-iteration-count: infinite;
  animation-duration: 2.5s; */
}

/* .sub_open span {
  color: #020202;
} */

@keyframes sub_open_ani {
  from {
    background: #363838;
    box-shadow:
      inset 0 0 5px rgba(0, 0, 0, 0.1),
      0 0 3px rgba(0, 0, 0, 0.2);
  }
  to {
    background: #55bb9a;
    box-shadow:
      inset 0 0 5px rgba(0, 0, 0, 0.1),
      0 0 4px rgba(0, 0, 0, 0.2);
  }
}

.logout {
  display: grid;
  align-items: center;
  justify-content: center;
}

.logout i {
  font-size: 1.4rem !important;
}

.ready_open_title {
  transition: all 0.3s;
  transition-timing-function: ease-in-out;
}

.close_obj {
  opacity: 0 !important;
  margin-top: -40px !important;
}

#contents {
  transition: all 0.3s;
  transition-timing-function: ease-in-out;
  padding: 0px 0px;
  margin-left: 385px;
  margin-top: 100px;
  /* overflow: hidden scroll; */

  /* height: 100vh; */
  height: 93vh;
  margin-bottom: 100px;
  scrollbar-width: 30px !important;
}

#contents::-webkit-scrollbar {
  width: 50px !important;
  background-color: rgb(222, 15, 15);
}

.btn-mint {
  color: #fff;
  background-color: #9ac7c7;
  border-color: #83b7b7;
}

.btn-gray {
  color: #454444;
}

.bottom_border {
  border-bottom: 1px solid #888;
}

#loginbox,
#joinbox {
  transition: all 0.3s;
  transition-timing-function: ease-in-out;

  margin: auto;

  display: block;
  background: var(--background);
  padding: 50px;
  border-radius: 30px;
  border: var(--table-underline);
  box-shadow: var(--box-shadow);
  margin-bottom: 40px;
}

#loginbox {
  width: 500px;
  margin-top: 100px;
}

#joinbox {
  width: 700px;
  margin-top: 30px;
}

.cursor {
  cursor: pointer;
}

.cursor:hover {
  color: #212529;
}

#top_nav .cursor:hover {
  color: #fff;
}

.adesc {
  font-size: 0.9rem;
}

.description {
  padding: 10px 15px;
}

.desc_img {
  margin: 15px;
  width: 50%;
  border: 2px dashed #808080;
}

.info_box {
  display: block;
  position: fixed;
  right: -300px;
  width: 300px;
  bottom: 0;
  top: 107px;

  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAMAAAAp4XiDAAAAUVBMVEWFhYWDg4N3d3dtbW17e3t1dXWBgYGHh4d5eXlzc3OLi4ubm5uVlZWPj4+NjY19fX2JiYl/f39ra2uRkZGZmZlpaWmXl5dvb29xcXGTk5NnZ2c8TV1mAAAAG3RSTlNAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAvEOwtAAAFVklEQVR4XpWWB67c2BUFb3g557T/hRo9/WUMZHlgr4Bg8Z4qQgQJlHI4A8SzFVrapvmTF9O7dmYRFZ60YiBhJRCgh1FYhiLAmdvX0CzTOpNE77ME0Zty/nWWzchDtiqrmQDeuv3powQ5ta2eN0FY0InkqDD73lT9c9lEzwUNqgFHs9VQce3TVClFCQrSTfOiYkVJQBmpbq2L6iZavPnAPcoU0dSw0SUTqz/GtrGuXfbyyBniKykOWQWGqwwMA7QiYAxi+IlPdqo+hYHnUt5ZPfnsHJyNiDtnpJyayNBkF6cWoYGAMY92U2hXHF/C1M8uP/ZtYdiuj26UdAdQQSXQErwSOMzt/XWRWAz5GuSBIkwG1H3FabJ2OsUOUhGC6tK4EMtJO0ttC6IBD3kM0ve0tJwMdSfjZo+EEISaeTr9P3wYrGjXqyC1krcKdhMpxEnt5JetoulscpyzhXN5FRpuPHvbeQaKxFAEB6EN+cYN6xD7RYGpXpNndMmZgM5Dcs3YSNFDHUo2LGfZuukSWyUYirJAdYbF3MfqEKmjM+I2EfhA94iG3L7uKrR+GdWD73ydlIB+6hgref1QTlmgmbM3/LeX5GI1Ux1RWpgxpLuZ2+I+IjzZ8wqE4nilvQdkUdfhzI5QDWy+kw5Wgg2pGpeEVeCCA7b85BO3F9DzxB3cdqvBzWcmzbyMiqhzuYqtHRVG2y4x+KOlnyqla8AoWWpuBoYRxzXrfKuILl6SfiWCbjxoZJUaCBj1CjH7GIaDbc9kqBY3W/Rgjda1iqQcOJu2WW+76pZC9QG7M00dffe9hNnseupFL53r8F7YHSwJWUKP2q+k7RdsxyOB11n0xtOvnW4irMMFNV4H0uqwS5ExsmP9AxbDTc9JwgneAT5vTiUSm1E7BSflSt3bfa1tv8Di3R8n3Af7MNWzs49hmauE2wP+ttrq+AsWpFG2awvsuOqbipWHgtuvuaAE+A1Z/7gC9hesnr+7wqCwG8c5yAg3AL1fm8T9AZtp/bbJGwl1pNrE7RuOX7PeMRUERVaPpEs+yqeoSmuOlokqw49pgomjLeh7icHNlG19yjs6XXOMedYm5xH2YxpV2tc0Ro2jJfxC50ApuxGob7lMsxfTbeUv07TyYxpeLucEH1gNd4IKH2LAg5TdVhlCafZvpskfncCfx8pOhJzd76bJWeYFnFciwcYfubRc12Ip/ppIhA1/mSZ/RxjFDrJC5xifFjJpY2Xl5zXdguFqYyTR1zSp1Y9p+tktDYYSNflcxI0iyO4TPBdlRcpeqjK/piF5bklq77VSEaA+z8qmJTFzIWiitbnzR794USKBUaT0NTEsVjZqLaFVqJoPN9ODG70IPbfBHKK+/q/AWR0tJzYHRULOa4MP+W/HfGadZUbfw177G7j/OGbIs8TahLyynl4X4RinF793Oz+BU0saXtUHrVBFT/DnA3ctNPoGbs4hRIjTok8i+algT1lTHi4SxFvONKNrgQFAq2/gFnWMXgwffgYMJpiKYkmW3tTg3ZQ9Jq+f8XN+A5eeUKHWvJWJ2sgJ1Sop+wwhqFVijqWaJhwtD8MNlSBeWNNWTa5Z5kPZw5+LbVT99wqTdx29lMUH4OIG/D86ruKEauBjvH5xy6um/Sfj7ei6UUVk4AIl3MyD4MSSTOFgSwsH/QJWaQ5as7ZcmgBZkzjjU1UrQ74ci1gWBCSGHtuV1H2mhSnO3Wp/3fEV5a+4wz//6qy8JxjZsmxxy5+4w9CDNJY09T072iKG0EnOS0arEYgXqYnXcYHwjTtUNAcMelOd4xpkoqiTYICWFq0JSiPfPDQdnt+4/wuqcXY47QILbgAAAABJRU5ErkJggg==);

  background-color: #f9f9f9;
  padding-top: 10px;

  transition: all 0.2s;
  /* transition-property: background-color, color;
  transition-duration: 1s; */
  transition-timing-function: ease-in-out;
}

.sub_subject {
  font-size: 1.1rem;
  font-weight: 500;
  border-bottom: var(--table-header-underline);
  margin: 5px 0 5px;
  padding-bottom: 5px;
}

.under_sub {
  padding-left: 10px;
}

@keyframes box_header {
  0% {
    border-top: 6px solid #1dcfa3;
  }
  50% {
    border-top: 6px solid #d95e13;
  }
  100% {
    border-top: 6px solid #a3d913;
  }
}

.report_history_box {
  background: var(--popup-background-color);
}

.report_history_title {
  background: var(--popup-title-background-color);
}

.report_history_who {
  /* color: var(--default-font-color); */
  color: #808080;
}

.report_pic_box {
  background: var(--popup-background-color);
  display: flex;
  width: 70px;
  height: 70px;
  margin: auto;
  overflow: hidden;
  border-radius: 10px;
  border: 3px solid #fff;
  box-shadow: var(--box-shadow);
  margin-top: 10px;
}

.report_pic_box img {
  transition: all 0.3s;
  width: 100%;
  height: 120%;
  margin-top: 0px;
}

.report_pic_info {
  display: flex;
  justify-content: center;
  margin: 10px;
}
.report_pic_info span {
  line-height: normal;
}
.report_pic_info .auther {
  display: block;
  background: #39bda7;
  color: #fff;
  border-radius: 10px;
  padding: 1px 5px;
  margin-right: 5px;
  font-size: 11px;
}

.report_status_box {
  position: absolute;
  bottom: 0px;
  display: flex;
  width: 100%;
  justify-content: center;
  margin-top: 10px;
}

.report_status {
  position: absolute;
  bottom: 0px;
  font-size: 16px;
  padding: 10px;
  width: 100%;
  display: flex;
  justify-content: center;
  margin: auto;
  margin-top: 10px;
}

.report_proceeding {
  animation-name: report_status_ani1;
  animation-iteration-count: infinite;
  animation-duration: 3s;
}

.report_approved {
  background: #f5f5f5;
}

.report_disapproved {
  background: #f0f0f0;
}

.report_empty {
  display: table;
  width: 100%;
  height: 100px;
}
.report_empty span {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
  color: #bdbdbd;
  font-size: 30px;
}

.application_vacation_ea,
.free_vacation_ea,
.making {
  border-radius: 10px;
  padding: 1px 6px;
}
.making {
  background: #eee7cc;
}
.application_vacation_ea {
  background: #ddc622;
}
.free_vacation_ea {
  background: #27d8b5;
}

.free_vacation_ea_box {
  display: inline-block;
  border-radius: 12px;
  background: #42b84d;
  /* width: 50px; */
  text-align: center;
  color: #fff;
  padding: 2px 15px;
}

.xdate {
  font-size: 0.8rem;
  /* font-style: italic; */
}

.tit_label {
  /* margin-left:20px; */
  padding-bottom: 5px;
  margin-top: 20px;
  font-weight: 600;
  font-size: 1.2rem;
  border-bottom: 1px solid #dcdcdc;
  display: block;
  /* padding-left: 10px; */
}

.search_box {
  transition: height 0.4s ease;
  display: grid;
  /* grid-template-columns: 10% 90%; */
  gap: 10px;
  margin: 5px 0px 10px;
  padding: 0px;
  overflow: hidden;
}

.search_close {
  animation: height_close 0.2s ease-out forwards;
}

.search_date_box {
  display: grid;
  gap: 10px;
}

.search_box .sub_box {
  margin: 5px;
}

.date_style,
.search_keyword {
  width: 125px;
  display: inline-block;
}

.timelapse {
  padding: 1px 3px;
  color: #fff;
  font-size: 0.7rem;
  font-weight: 400;
  background: var(--icon-background);
  border-radius: 10px;
}

.btn-info {
  color: #fff;
}

.hyper {
  color: #5e8a9d !important;
  text-decoration: underline;
}

.function_btn_zone {
  display: grid;
  grid-template-columns: 120px 120px;
  gap: 5px;
  position: absolute;
  top: -70px;
  right: 5px;
}
/* 
.custom-options-list {
  position: absolute;
  top: 105%;
  right: 0;

  width: max-content;
  min-width: 100%;

  background: var(--form-background, #fff);
  border: 1px solid #ccc;
  border-radius: 7px;
  margin: 0;
  padding: 5px 0;
  list-style: none;
  z-index: 999;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
  max-height: 250px;
  overflow-y: auto;
  text-align: left;
}

.custom-options-list li {
  padding: 8px 15px;
  color: var(--default-font-color);
}

.custom-options-list li:hover {
  background-color: rgba(0, 0, 0, 0.05);
}

.custom-options-list li.active {
  background-color: var(--hover-background-color);
  font-weight: bold;
}

.custom-arrow {
  position: absolute;
  right: 10px;
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid #808080;
} */
