
/* =========================================================
		font 및 font style 설정
========================================================= */ 
/* @font-face {
	font-family: "NEXON Lv2 Gothic";
	src: url("../../assets/vendors/NEXON_Lv2_Gothic/NEXON Lv2 Gothic.woff") format("woff");
	font-weight: normal;
	font-style: normal;
} */
@font-face {
	font-family: "NexonLv2Gothic";
	src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_20-04@2.1/NEXON Lv2 Gothic Light.woff") format("woff");
	font-weight: 300;
	font-display: swap;
}

@font-face {
	font-family: "NexonLv2Gothic";
	src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_20-04@2.1/NEXON Lv2 Gothic.woff") format("woff");
	font-weight: normal;
	font-display: swap;
}

@font-face {
	font-family: "NexonLv2Gothic";
	src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_20-04@2.1/NEXON Lv2 Gothic Bold.woff") format("woff");
	font-weight: 700;
	font-display: swap;
}

/* 
@font-face {
    font-family: 'NanumBarunGothic';
    src: url('//cdn.jsdelivr.net/font-nanumlight/1.0/NanumBarunGothicWeb.eot');
    font-weight: 400;
    font-display: swap;
}

@font-face {
    font-family: 'NanumBarunGothic';
    src: url('//cdn.jsdelivr.net/font-nanumlight/1.0/NanumBarunGothicWebLight.eot');
    font-weight: 300;
    font-display: swap;
}
@font-face {
    font-family: 'NanumBarunGothic';
    src: url('//cdn.jsdelivr.net/font-nanumlight/1.0/NanumBarunGothicWebBold.eot');
    font-weight: 700;
    font-display: swap;
}
:root {
	--bs-font-sans-serif: "NanumBarunGothic", "NEXON Lv2 Gothic", "Open Sans", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
		"Segoe UI Symbol", "Noto Color Emoji";
	--bs-font-monospace: "NanumBarunGothic", "NEXON Lv2 Gothic", "SFMono-Regular", "Menlo", "Monaco", "Consolas", "Liberation Mono", "Courier New", "monospace";
	--bs-body-font-size: 14px;
} */

body {
	font-family: "NexonLv2Gothic", "NEXON Lv2 Gothic", "Open Sans", system-ui,
		-apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans",
		"Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
		"Segoe UI Symbol", "Noto Color Emoji";
	color: dimgrey;
	font-size: 14px;
}

pre {
	font-size: 12px;
	font-family: "NexonLv2Gothic", "NEXON Lv2 Gothic", "Open Sans", system-ui,
		-apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans",
		"Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
		"Segoe UI Symbol", "Noto Color Emoji";
}

.h1, .h2, .h3, .h4, .h5, .h6,
 h1,  h2,  h3,  h4,  h5,  h6 
{
	font-family: "NexonLv2Gothic", "Open Sans", system-ui, -apple-system,
		"Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans",
		"Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
		"Segoe UI Symbol", "Noto Color Emoji";
}




/* =========================================================
		메뉴 top 과 nav 관련 스타일
========================================================= */ 
.duke-fixed-site-top {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	width: 100%;
	z-index: 1000;
	background: #25476a;
}

.duke-fixed-menu-top {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	width: 100%;
	z-index: 1000;
	background-color: #45b39d;
	padding-left: 20px;
}

.duke-card-header {
	background-color: #45b39d;
}

.duke-nav-tabs {
	min-height: 1.1rem;
	line-height: 1.3;
}

.duke-nav-tabs .duke-nav-link {
	min-height: 1.1rem;
	width: 7.6rem;
	padding-left: 0.3rem;
	padding-right: 0.1rem;
}

.duke-fixed-nav-top {
	position: fixed;
	top: 65px;
	right: 0;
	left: 0;
	width: 100%;
	z-index: 2000;
	height: 40px;
	padding-left: 5px;
}

.nav:not(.nav-pills) .nav-link.active {
	background-color: #17a589;
	color: #ffffff;
	border: 2px solid #17a589;
	border-bottom: 3px solid #17a589;
	font-weight: 500;
}

.breadcrumb-item>a {
	font-weight: 400;
	text-decoration: none;
	font-size: 0.8rem;
	color: #186a3b;
	vertical-align: middle;
}

.breadcrumb-item+.breadcrumb-item::before {
	font-size: 0.8rem;
	color: #186a3b;
	font-weight: 700;
	vertical-align: middle;
	padding-top: 3px;
}


.leftSideMenuOpenIcon {
	color: #abebc6;
	width: 0.7rem !important;
	height: 0.7rem !important;
	border-top: 1px solid #45b39d;
	border-left: 1px solid #45b39d;
}

.leftSideMenuOpenLayer {
	top: 0px;
	left: 0px;
	z-index: 9999;
	position: fixed;
}
.table> :not(caption)>*>* {
	padding: 0.15rem 0.1rem;
}

/* =========================================================
   🧰 tab 관련
========================================================= */


.tabbable .nav-tabs {
	overflow-x: auto;
	overflow-y: hidden;
	flex-wrap: nowrap;
}

.tabbable .nav-tabs .nav-link {
	white-space: nowrap;
}

.cardTabsProfile>div>ul>li:nth-child(n)>button {
	font-size: 0.9rem;
	padding-top: 0.3rem !important;
	padding-bottom: 0.2rem !important;
	border-radius: 0px;
}

.tab-base .nav-callout .nav-link {
	min-height: 1.5rem;
	padding-top: 0.3rem;
	padding-bottom: 0.2rem;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}

/* =========================================================
   🧰 nav-link nav-callout
========================================================= */
.nav-link {
	padding: 0.3rem 0.8rem;
	border-bottom: 0.01px solid #efefef !important;
}

.nav-callout .nav-link.active {
	background-color: #45b39d !important;
	color: #ffffff;
	border: unset !important;
	font-weight: 500;
}
.nav-link {
	min-width: 6rem;
}
.nav-callout {
	border-bottom: 0px;
}

.nav-callout .nav-link {
	background-color: #f4f6f6;
}

.nav-callout .nav-link.active {
	box-shadow: unset;
	border: unset !important;
}



.sectionGrpTitle  {
	font-size:16px !important;
}
.sectionGrpTitle i.bi {
	font-size:16px !important;
}
/* =========================================================
   🧰 Utility
========================================================= */

.rounded-lg {
	border-radius: 1rem !important;
}

.overflow-y-auto {
	overflow-y: auto;
	overflow-x: hidden;
}


.row>* {
	margin-top: 0rem;
	padding-right: calc(var(--bs-gutter-x) * 0.3);
	padding-left: calc(var(--bs-gutter-x) * 0.35);
	margin-bottom: 0rem;
	min-height:35px;
	 
}
 


.contentTabMainRowWrapLayer {
	border-radius: 8px;
	min-height: 70vh;
}

.searchAreaWrapLayer {
	background-color: #e8f6f3;
	border: 2px solid #73c6b6 !important;
	box-shadow: unset;
}

.marginTopMinus1px {
	margin-top: -1px;
}

.boxShadowUnset {
	box-shadow: unset;
}

.gridTitle {
	color: #566573;
	font-size: 0.95rem;
	font-weight: 700;
}

.timeline .tl-time:not(:empty) {
	min-width: 5rem;
	text-align: end;
}

.spanDiv {
	color: #186a3b;
	opacity: 0.3;
}
 
.bi-patch-question-fill {
	color: rgb(38, 166, 154) !important;
}

/* .content-full-page {
     z-index: 9999;
}
/* -- CONTENT VIEW -- */
/* ---------------------------------------------- */
.content-full-page {
	position: fixed;
	inset: 0;
	/* z-index: 999999;
     */
	z-index: 1050;
	border-radius: 0 !important;
}

/* -- SINGLE CONTENT VIEW -- */
/* ---------------------------------------------- */
.body-sc>.root {
	position: relative;
	height: 100vh;
	overflow: hidden;
	/* z-index: 999999;
     */
	z-index: 1000;
}
 
.content__wrap {
	padding: 0.9rem 0.9rem !important;
	padding-top: 1rem;
	padding-bottom: 1rem;
	/* border-left:6px solid rgb(69, 179, 157);
  border-right:6px solid rgb(69, 179, 157); */

}

 

.sectionGrp {
	margin-bottom:10px;
}



/* =========================================================
   width height 스타일
========================================================= */
.w-70 {
	width: 70% !important;
}
.w-90px {
	width: 90px !important;
}
.h-95 {
	height: 95px !important;
}

.minHeightUnset {
	min-height: unset;
}
/* =========================================================
   badge 스타일
========================================================= */
.badge {
	font-weight: 400;
}
/* =========================================================
   card 스타일
========================================================= */
.card.fullChangeLayer.content-full-page {
	padding: 10px !important;
	overflow-y: auto !important;
}
.card-title {
	font-size: 0.9rem;
	margin-bottom: 0.3rem;
}

 
.card[class*=bg-] .card-header {
	background-color: #fff;
	border-bottom: 0px;
}

/* =========================================================
   modal 스타일
========================================================= */
.modal-backdrop {
	z-index: 999;
}

.modal-ps-2 {
	padding-left: 0.5rem;
}

.modal-ps-3 {
	padding-left: 1rem !important;
}

.modalMaxHeight {
	height: 86vh;
	max-height: 810px !important;
}
#modalImage {
	max-height: 70vh;
	object-fit: contain;
}

/* =========================================================
   font color 스타일
========================================================= */
.error-code {
	font-size: 6rem !important;
}
 
.fs-55 {
	font-size: 0.83rem !important;
}


.color-plus {
	color: #45b39d;
}

.color-close {
	color: #0b5345;
	font-weight: 700;
}

.text-plus {
	color: #2980b9;
}

.dubleThinArrow {
	color: #aeb6bf;
}

.searchAreaWrapLayer.text-secondary label.form-label { 
  color: #45b39d; /* 원하는 색상 */
  font-weight: 600;
}
.searchAreaWrapLayer.text-secondary label.form-label::before {
	color: #45b39d;
}
/* .searchAreaWrapLayer.text-secondary label.form-check-label { 
  color: #45b39d;  
} */
 
.form-check-label {
	color: #737373;
}

/* =========================================================
   border 스타일
========================================================= */
.border-dot-right {
	border-right: 1px dotted rgba(0, 0, 0, 0.07) !important;
}

.border-dot-left {
	border-left: 1px dashed rgb(38, 166, 154) !important;
}

.border-solid-bottom {
	border-bottom: 1px solid #73c6b6 !important;
	/* border-bottom: 1px solid #27AE60 !important; */

	/* border-bottom: 1px dashed #fff !important; */
}
.border-secondary-dashed-bottom {
	/* border-bottom: 1px dashed #73c6b6 !important; */
	border-bottom: 1px dashed #dfdfdf !important;
	/* border-bottom: 1px dashed #fff !important; */
}

.border-dot-bottom {
	border-bottom: 1px dotted rgba(0, 0, 0, 0.07) !important;
	
}

.border-dot-top {
	border-top: 1px dotted rgba(0, 0, 0, 0.07) !important;
}


.flieUploadTableBorder {
	border-bottom: 3px solid #e8f6f3 !important;
}

.contackBorder {
	border-top: 2px solid #fff !important;
	border-bottom: 2px solid #fff !important;
	border-left: 5px solid #fff !important;
	border-right: 5px solid #fff !important;
}

.border-light-blue {
	border-color: #a2d9ce !important;
}

.bg-light-green {
	background-color: #45b39d;
}

.border-light-deepGreen {
	border-color: #45b39d;
}

.border-light-green {
	border: 2px solid #73c6b6 !important;
}
.border-grid-center {
	border-right: 1px dashed #dfdfdf;
}

.border-modal-center {
	border-right: 1px dashed #45b39d;
}

.modal-content-border {
	border: 5px solid #ffffff;
}

.border-vertical-division {
	border-right: 1px solid #dfdfdf;
}
 

/* =========================================================
   widget  drag & drop 스타일
========================================================= */
.grid-stack-item-content {
  position: relative !important; /* 기준점 */
}

/* 헤더를 위에 겹치기 */
.widget-header {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;

  background-color: transparent !important; /* 투명 */
  border-bottom: none !important;

  z-index: 20 !important; /* body 위 */
  cursor: grab !important;
}

/* body가 헤더 뒤로 가려지지 않게 여백 */
.widget-body {
  /* padding-top: 47px !important;   */
}
.widget-header {
  background-color: rgba(248, 249, 250, 0.7) !important;
  backdrop-filter: blur(4px) !important;
  border-bottom: 1px solid #dfdfdf !important; 
  opacity: 0;
  transition: opacity 0.2s;
}

.grid-stack-item-content:hover .widget-header {
  opacity: 1;
}

.widget-header {
  pointer-events: auto;
}

.widget-body {
  pointer-events: auto;
}

/* =========================================================
   flatpickr 스타일
========================================================= */
.flatpickr-day.selected {
	color: #ffffff !important;
}




/* =========================================================
   🏷️ Label / Required 표시
========================================================= */

/* 기본 라벨 */
.form-label {
	margin: 0.2rem 0;
	font-size: 0.85rem;
	color: #696969;
}

/* 기본 필수 표시 (*) */
.form-label::before {
	content: "*";
	display: inline-block;
	margin-right: 0.2rem;
	color: #696969;
	vertical-align: middle;
}

/* 라벨이 없는 영역용 */
.form-none-label {
	margin-bottom: 0.2rem;
	font-weight: 600;
	font-size: 0.85rem;
	min-height: 1.2rem;
}

.form-none-label::before {
	content: "";
	display: inline-block;
	margin-right: 0.2rem;
}

/* 필수 라벨 (붉은색) */
.form-required,
.form-required::before {
	content: "*";
	color: crimson !important;
	font-weight: 400;
}


/* =========================================================
   ✏️ Input / Select / Textarea 기본 스타일
========================================================= */

.form-control {
	padding: 0.35rem 0.5rem;
	font-size: 0.9rem;
	border: 1px solid #dfdfdf;
	border-radius: 0.3375rem;
}

textarea.form-control {
	min-height: 1rem;
}

/* Select 기본 */
.form-select {
	/* padding: 0.37rem 1rem 0.3rem 0.5rem; */
	padding: 0.27rem 1rem 0.2rem 0.5rem;
	font-size: 14px;
	border: 1px solid #dfdfdf;
	border-radius: 0;
	background-position: right 0.2rem center;
	background-size: 18px 16px;
	padding-right: 1.5rem;
}
.input-group> :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
	margin-left: 0px;
}
.tui-datepicker-input>input {
	border-radius: 0.3375rem;
}

/* =========================================================
   🎯 Focus / Disabled 상태
========================================================= */

.form-control:focus,
.form-select:focus {
	background-color: #fef9e7;
	border-color: #fcf3cf;
	outline: 0;
}

.form-control:disabled,
.form-control[readonly] {
	background-color: #f8f9f9;
	border-color: #f8f9f9;
}


/* =========================================================
   🚨 Required 시각 표시 (req-r / req-b / req-d)
========================================================= */

/* 공통 Required 표시 (좌측 상단 삼각형) */
.req-d,
input.req-r:not([type="radio"]):not([type="checkbox"]),
textarea.req-r,
.form-select.req-r,
input.req-b:not([type="radio"]):not([type="checkbox"]),
textarea.req-b,
.form-select.req-b {
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 6px 6px;
	border-top-left-radius: 0;
}

/* 빨간 Required */
.req-r {
	background-image: url("data:image/svg+xml,...red...");
}

/* 민트 Required */
.req-b {
	background-image: url("data:image/svg+xml,...mint...");
}


/* =========================================================
   ☑️ Checkbox / Radio 기본
========================================================= */
.groupRadioBaseLayer {
	margin-bottom: 15px;
	border-radius: 6px;
}
.form-check-input[type="checkbox"] {
	border-radius: 0.15rem;
}

.form-check-input[type="radio"] {
	border-radius: 50%;
	border-width: 3px;
	background-color: unset !important;
}

/* Checkbox Checked */
.form-check-input[type="checkbox"]:checked {
	background-color: #45b39d;
	border-color: #45b39d;
}

/* Radio Checked */
.form-check-input[type="radio"]:checked {
	background-color: #45b39d;
	border-color: #45b39d;
	border-width: 5px !important;
}
.form-check-input:focus{
	background-color: #45b39d;
	border-color: #45b39d;
}
.chainComboBorder {
	border: 1px solid #dfdfdf;
	/* border:1px solid #aeb6bf;
     */
}

/* =========================================================
   ⭐ 특수 Checkbox 스타일
========================================================= */

/* 별점 */
.form-check-input.star {
	width: 25px;
	height: 25px;
	background-color: #fff !important;
}

/* 세금메일 */
.form-check-input.taxMailCheck {
	width: 26px;
	height: 26px;
}

/* 고정 체크 */
.form-check-input.fixCheck {
	width: 24px;
	height: 24px;
	margin-top: -2px;
}

/* 체크리스트 펜슬 */
.form-check-input.checkListPencil {
	width: 26px !important;
	height: 26px !important;
	background-color: #ffffff !important;
}


/* =========================================================
   🧱 Floating / Dropdown / File Input
========================================================= */

.form-floating > label {
	color: #afafaf;
}

.form-floating > .form-control,
.form-floating > .form-select {
	height: calc(3rem + 2px);
	line-height: 1.25;
}

/* Dropdown caret */
.dropdown-toggle::after {
	border-top: 0.45em solid !important;
	border-right: 0.45em solid transparent !important;
	border-left: 0.45em solid transparent !important;
}

/* File input */
input[type="file"]::file-selector-button {
	background: #26a69a;
	color: #ffffff;
}

.dropdown-toggle::after {
	vertical-align: middle;
}


/* =========================================================
		boostrap alert 관련 스타일
========================================================= */ 
/* bootstrap alter 관련 style */
.alert-container {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9991100;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	pointer-events: none;
	/* 클릭 방지 */
	background-color: transparent;
}

.alert {
	box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
	margin: 10px;
	/*min-width: 300px !important;
    */
	width: 450px;
	max-width: 95% !important;
	pointer-events: auto;
	/* Alert 내부는 클릭 허용 */
	transform: translateY(-50%);
	/* 세로 정렬 보정 */
}

.alert-icon {
	font-size: 1.2rem;
	margin-right: 10px;
}





/* =========================================================
		image carousel or gallery 관련 스타일
========================================================= */ 
.carousel-control-next-icon {
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23a2d9ce' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E");
}

.carousel-control-prev-icon {
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23a2d9ce' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E");
}

.noneImg {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200' fill='%23a2d9ce' viewBox='0 0 16 16'%3E%3Cpath d='M6.002 5.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0'/%3E%3Cpath d='M1.5 2A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2zm13 1a.5.5 0 0 1 .5.5v6l-3.775-1.947a.5.5 0 0 0-.577.093l-3.71 3.71-2.66-1.772a.5.5 0 0 0-.63.062L1.002 12v.54L1 12.5v-9a.5.5 0 0 1 .5-.5z'/%3E%3C/svg%3E");
}

.img-gallery {
	width: 98% !important;
	height: 98%;
	object-fit: contain;
	border-radius: 5px;
	border: 5px solid #ffffff;
}

.image-box {
	width: 100%;
	aspect-ratio: 1 / 1 !important;
	overflow: hidden;
	margin: 0 auto;
	background: repeating-conic-gradient(#f4f6f6 0 45deg, #ffffff 0 90deg) 0/29px 29px;
}

.img-gallery-white {
	width: 98% !important;
	height: 100%;
	object-fit: contain;
}

.image-box-white {
	width: 97%;
	aspect-ratio: 1 / 1 !important;
	overflow: hidden;
	margin: 0 auto;
	background: repeating-conic-gradient(#f4f6f6 0 45deg, #ffffff 0 90deg) 0/29px 29px;
	border: 2px solid #ffffff;
	border-radius: 5px;
}

.image-box-default {
	width: 97%;
	aspect-ratio: 1 / 1 !important;
	overflow: hidden;
	margin: 0 auto;
}

.image-effect {
	filter: brightness(0.9) contrast(1.2) saturate(1.5) hue-rotate(15deg) drop-shadow(2px 4px 6px rgba(0, 0, 0, 0.3));
}





/* =========================================================
		loading 스타일
========================================================= */  

.loading-state {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.3);
	z-index: 9999;
	display: flex;
	justify-content: center;
	align-items: center;
}

.loading {
	width: 100px;
	height: 100px;
	border-radius: 50%;
	border: 10px solid #ddd;
	border-top-color: orange;
	animation: loading 1s linear infinite;
}

@keyframes loading {
	to {
		transform: rotate(360deg);
	}
}

.loading-spinner {
	display: none;
	/* Hidden by default */
	width: 20px;
	height: 20px;
	border: 3px solid rgba(255, 255, 255, 0.3);
	border-radius: 50%;
	border-top-color: #fff;
	animation: spin 1s ease-in-out infinite;
	margin-left: 10px;
}

@keyframes spin {
	to {
		-webkit-transform: rotate(360deg);
	}
}





/* =========================================================
		Cursor(커서) 스타일
========================================================= */  
.pointerCursor {
	cursor: pointer;
}





/* =========================================================
		플로팅 창 컨테이너
========================================================= */  
/* 1. 플로팅 창 컨테이너: 모든 이벤트 통과 설정 */
#floatingWindow {
	position: fixed;
	top: 50px;
	/* 초기 위치 */
	left: 50px;
	/* 초기 위치 */
	width: 300px;
	height: 250px;
	z-index: 999999999;
	/* 항상 최상위에 위치 */
	/* ⭐⭐⭐ 핵심: 모든 마우스 이벤트(클릭, 호버 등)를 아래 요소로 통과시킴 ⭐⭐⭐ */
	pointer-events: none;
	/* 창의 시각적 요소 */
	/* background-color: rgba(255, 255, 255, 0.7);
     */
	/* 반투명 배경 */
	background-color: #fff;
	/* 반투명 배경 */
	border: 3px solid rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important;
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1),
		0 4px 6px -2px rgba(0, 0, 0, 0.05);
	border-radius: 6px;
	overflow: hidden;
	will-change: transform;
	/* 드래그 성능 최적화 */
}

/* 2. 드래그 핸들: 이벤트 통과를 해제하고 드래그 가능하게 설정 */
#dragHandle {
	height: 30px;
	cursor: move;
	/* ⭐⭐⭐ 핵심: 이 요소만 마우스 이벤트를 다시 받도록 설정 ⭐⭐⭐ */
	pointer-events: auto;
	user-select: none;
	/* 드래그 시 텍스트 선택 방지 */
}

.disableButiful {
	opacity: 1 !important;
}

.moveDrag {
	cursor: move;
}





/* =========================================================
		레이아웃 디자이너 관련 스타일
========================================================= */  
* {
	box-sizing: border-box;
}

/* 툴바 스타일 */
#toolbar {
	background-color: #fff;
	padding: 15px;
	margin-bottom: 20px;
	border-radius: 8px;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

/* GridStack에 12x10 격자 선 표시 CSS */
.grid-stack {
	background-color: #ffffff;
	border-radius: 8px;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
	width: 100%;
	background-image: repeating-linear-gradient(0deg,
			#d6d3d1 0,
			#d6d3d1 1px,
			transparent 1px,
			transparent 70px),
		repeating-linear-gradient(90deg,
			transparent 0,
			transparent calc(100% / 12 - 1px),
			#d6d3d1 calc(100% / 12 - 1px),
			#d6d3d1 calc(100% / 12));

	background-size: 100% 70px, 100% 100%;
	background-repeat: repeat-y, no-repeat;
	background-position: left top, left top;
	/* 위젯 마진 제거 */
	padding: 0;
	/* border: 1px solid #ddd; */
}

/* 그리드 아이템 컨테이너 스타일 */
.grid-stack-item-content {
	display: flex;
	flex-direction: column;
	border: 1px solid #ddd;
	/* 위젯 마진 제거 */
	border-top-left-radius: 8px;
	border-top-right-radius: 8px;
	background-color: #ffffff;
	font-weight: 500;
	overflow: hidden;
	position: relative;
	height: 100%;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);

}

/* 드래그 핸들 전용 헤더 영역 (위젯 타이틀) */
.widget-header {
	padding: 10px 15px;
	background-color: #f8f9fa;
	border-bottom: 1px solid #eee;
	font-size: 1em;
	font-weight: 600;
	color: #333;
	display: flex;
	justify-content: space-between;
	align-items: center;
	cursor: grab;
	/* 드래그 가능함을 명시 */
	user-select: none;

	/* Z-Index와 포지션 설정으로 드래그 이벤트 우선순위 확보 */
	position: relative;
	z-index: 10;
	max-height: 47px !important;
}

/* 위젯 본문 영역 (내용) */
.widget-body {
	padding: 10px 15px;
	flex-grow: 1;
	overflow: auto;
	font-size: 0.9em;
}

/* Bootstrap 미리보기 영역 스타일 */
#bootstrapPreview {
	padding: 20px;
	margin-top: 30px;
	background-color: #ffffff;
	border-radius: 8px;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

/* 미리보기 카드 간 마진 제거 */
#bootstrapPreview .card {
	margin: 0;
	border-radius: 0;
}

.border-grid-stack {
	border-color: #A6A09B !important;
}
.layerBack {
	background-color: #FAFAF9;
	border: 3px solid #D4D4D4 !important;
}




/* =========================================================
   border 관련
========================================================= */
/* =========================================================
   배경(background) 색상관련
========================================================= */
.bg-blueGreen {
	background-color: #138d75;
	border-color: #138d75;
}

.bg-modal-content-green {
	background-color: #45b39d;
	border-color: #45b39d;
}

.bg-default {
	background-color: #e8f6f3; 
}
.bg-light-white {
	background-color: #f1f5f9 !important;
}

.bg-modal-green {
	background-color: #45b39d;
}

.bg-light-blue {
	background-color: #e8f6f3;
	/* background-color: #ebf5fb;
     */
}
/* 위젯 색상 클래스 (Bootstrap 변환 시 사용될 색상) */
.bg-color-0 {
	background-color: #0d6efd;
	color: white;
}

.bg-color-1 {
	background-color: #198754;
	color: white;
}

.bg-color-2 {
	background-color: #0dcaf0;
	color: black;
}

.bg-color-3 {
	background-color: #ffc107;
	color: black;
}

.bg-color-4 {
	background-color: #dc3545;
	color: white;
}

.bg-color-5 {
	background-color: #6c757d;
	color: white;
}

.bg-color-6 {
	background-color: #212529;
	color: white;
}

.bg-color-7 {
	background-color: #f8f9fa;
	color: black;
	border: 1px solid #ddd;
}





/* =========================================================
   logger view에서 사용되는 css 
========================================================= */
/* 시스템 로그 설정 */
#log-container {
	width: 100%;
	height: 70vh;
	/* Adjust height as needed */
	background-color: #272822;
	/* Highlight.js 테마의 배경색과 일치 */
	border: 1px solid #343a40;
	/* Dark border */
	overflow-y: scroll;
	font-family: "Fira Code", "Cascadia Code", "Consolas", "Monaco", monospace;
	/* Monospace font */
	font-size: 0.9em;
	padding: 0;
	/* Highlight.js 내부 padding을 사용하므로 여기서 0 */
	border-radius: 5px;
	line-height: 1.4;
}

/* Highlight.js가 적용될 <pre><code> 요소의 스타일 */
#log-container pre {
	margin: 0;
	/* 기본 마진 제거 */
	padding: 15px;
	/* Highlight.js 내부 패딩 */
	background-color: #272822;
	/* 배경색 통일 */
	color: #f8f8f2;
	/* 기본 텍스트 색상 통일 */
	white-space: pre-wrap;
	/* 줄 바꿈 유지 */
	word-break: break-all;
	/* 긴 단어 강제 줄 바꿈 */
}

#log-container code {
	display: block;
	/* 각 로그 라인이 별도의 블록으로 보이도록 */
}

code[class*="language-"],
pre[class*="language-"] {
	font-family: "NexonLv2Gothic", Consolas, Monaco, "Andale Mono", monospace;
}

/* Highlight.js가 제공하는 클래스를 활용한 추가적인 로그 레벨 색상 */
/* 이 부분은 Highlight.js 테마에 따라 다르게 보일 수 있습니다. */
.hljs-error {
	color: #f92672;
}

/* Highlight.js의 에러 색상 */
.hljs-warning {
	color: #fd971f;
}

/* Highlight.js의 경고 색상 */
.hljs-info {
	color: #66d9ef;
}

/* 사용자 정의 정보 색상 */
/* 서버 메시지 등에 대한 클래스 */
.server-message {
	color: #e6db74;
	/* Yellow for server messages */
}

/* Prism 토큰별 색상 강조 */
.token.error {
	color: #ff6b6b;
}

.token.warning {
	color: #f1c40f;
}

.token.info {
	color: #ffffff;
}

/* .token.info {
     color: #00bcd4;
}
 */
.token.timestamp {
	color: #bd93f9;
	text-decoration: underline;
	cursor: pointer;
}

.token.ip {
	color: #50fa7b;
}

.server-message {
	color: #888;
	font-style: italic;
}

.session {
	color: #e6db74;
}

.oracleKeyword {
	color: #66d9ef;
}

.jsFileNm {
	color: #f1c40f;
}

.session-id-highlight {
	/* Prism.js나 다른 CSS를 덮어쓰기 위해 !important 사용 */
	color: #ffc107 !important;
	/* 부트스트랩 Warning Color (노란색) */
	font-weight: bold;
}




/* =========================================================
   📱 모바일 기타
========================================================= */
.mob-px-3 {
	padding-right: 1rem !important;
	padding-left: 1rem !important;
}

.mob-p-1 {
	padding: 0.25rem !important;
}

.mob-display-block {
	display: none;
}
.mob-nav-link-border-bottom {
	border-bottom: 1px solid #45b39d !important;
}

/* =========================================================
   📱 Small Mobile (max-width: 400px)
========================================================= */
@media (max-width: 400px) {

	/* 아이콘 크기 조정 */
	.bi-patch-minus-fill {
		font-size: 1.2rem !important;
	}

	/* 모바일 패딩 유틸 */
	.mob-px-3 {
		padding-inline: 0.5rem !important;
	}

	.mob-p-1 {
		padding: 0 !important;
	}

	/* 모바일 표시 제어 */
	.mob-display-none {
		display: none !important;
	}

	.mob-display-block {
		display: unset !important;
	}
}





/* =========================================================
   📱 Mobile (max-width: 575.98px / Bootstrap xs)
========================================================= */
@media (max-width: 575.98px) {

	/* 모바일 카드/배경 제거 */
	.mobile-bg-none,
	.mob-bg-card-none {
		background: white !important;
		border: none !important;
		box-shadow: none !important;
	}

	.mob-bg-card-none {
		padding-inline: 5px !important;
	}

	/* 모바일 컨텐츠 패딩 */
	.content__wrap {
		padding-top: 1rem !important;
		padding-left:0.5rem !important;
		padding-right:0.7rem !important;
		padding-bottom: 1rem !important;
		border-left: 0;
		border-right: 0;
		overflow-x: hidden;
	}
	.mob-px-0 {
		padding-left:0px;
		padding-right:0px;
	}
}





/* =========================================================
   📱 Mobile & Tablet (max-width: 600px)
========================================================= */
@media (max-width: 600px) {

	/* 모달 스타일 최소화 */
	.modal-content-border {
		border: 0;
	}

	.modal-dialog {
		margin: 0;
	}

	.shadow-modal {
		padding: 0;
		box-shadow: none;
	}

	/* 모달 패딩 유틸 */
	.modal-ps-2 { padding-left: 0.1rem; }
	.modal-ps-3 { padding-left: 0.5rem !important; }

	.modal-pe-4,
	.modal-ps-4,
	.modal-pe-0 {
		padding-inline: 0.5rem !important;
	}

	.ps-phoneView-0 {
		padding-left: 10px !important;
	}

	/* 기타 UI */
	.contackBorder {
		border: 0 !important;
	}

	.tui-ico-date,
	.md-size-display-none {
		display: none !important;
	}

	.tui-datepicker-input > input {
		text-align: center !important;
	}
}





/* =========================================================
   📱 Mobile & Tablet (max-width: 768px)
========================================================= */
@media (max-width: 768px) {

	/* 상단 여백 */
	.mob-pt-5 {
		padding-top: 2.5rem;
	}

	/* 모바일 네비게이션 border 제거 */
	.mob-nav-link-border-bottom {
		border-bottom: 0 !important;
	}
}


/* =========================================================
   💻 Tablet & Small Desktop (max-width: 991px)
========================================================= */
@media (max-width: 991px) {

	/* 모달 패딩 축소 */
	.modal-pe-4,
	.modal-pe-0 {
		padding-right: 0.1rem !important;
	}

	.modal-ps-4 {
		padding-left: 0.1rem !important;
	}

	/* 중앙 구분선 제거 */
	.border-grid-center,
	.border-modal-center {
		border-right: 0;
	}
	.border-vertical-division {
		border-right: unset;
	}
}


/* =========================================================
   💻 Tablet 이상 (min-width: 601px)
========================================================= */
@media (min-width: 601px) {

	/* 모달 그림자 복원 */
	.shadow-modal {
		padding: 1rem;
		box-shadow: 0 1rem 3rem rgba(55, 60, 67, 0.175);
	}
}


/* =========================================================
   💻 Desktop (min-width: 768px 이상)
========================================================= */
@media (min-width: 768px) {

	/* 공통 컨텐츠 패딩 */
	.content__wrap {
		padding-inline: 0.9rem !important;
	}
}


/* =========================================================
   💻 Large Desktop (min-width: 992px)
========================================================= */
@media (min-width: 992px) {

	/* 모달 좌우 패딩 */
	.modal-pe-4 {
		padding-right: 1.5rem !important;
	}

	.modal-ps-4 {
		padding-left: 1.5rem !important;
	}

	/* 큰 모달 최대 너비 */
	.modal-lg,
	.modal-xl {
		max-width: 990px;
	}
}


/* =========================================================
   📱 Extra Mobile Modal Styling (max-width: 500px)
========================================================= */
@media (max-width: 500px) {

	/* 모바일 모달 하단 라운드 */
	.modal {
		border-bottom: 8px solid #fff;
		border-bottom-left-radius: 5px;
		border-bottom-right-radius: 5px;
	}
}






/* 
@media (max-width: 400px) {
	.bi-patch-minus-fill {
		font-size: 1.2rem !important;
	}
 
	.mob-px-3 {
		padding-right: 0.5rem !important;
		padding-left: 0.5rem !important;
	}

	.mob-p-1 {
		padding: 0rem !important;
	}

	.mob-display-none {
		display: none;
	}

	.mob-display-block {
		display: unset;
	}
}

@media (max-width: 600px) {
	.modal-content-border {
		border: 0px solid #ffffff;
	}

	.modal-ps-2 {
		padding-left: 0.1rem;
	}

	.shadow-modal {
		padding: 0rem;
		box-shadow: unset;
	}

	.modal-dialog {
		margin: 0rem;
	}

	.ps-phoneView-0 {
		padding-left: 10px !important;
	}

	.modal-ps-3 {
		padding-left: 0.5rem !important;
	}

	.modal-pe-4 {
		padding-right: 0.5rem !important;
		padding-left: 0.5rem !important;
	}

	.modal-ps-4 {
		padding-right: 0.5rem !important;
		padding-left: 0.5rem !important;
	}

	.modal-pe-0 {
		padding-right: 0.5rem !important;
		padding-left: 0.5rem !important;
	}

	.contackBorder {
		border: 0px !important;
	}

	.tui-ico-date {
		display: none;
	}

	.md-size-display-none {
		display: none;
	}

	.tui-datepicker-input>input {
		text-align: center !important;
	}

 
}

@media (max-width: 768px) {
	.mob-pt-5 {
		padding-top: 2.5rem;
	}
}

@media (max-width: 991px) {
	.modal-pe-4 {
		padding-right: 0.1rem !important;
	}

	.modal-ps-4 {
		padding-left: 0.1rem !important;
	}

	.modal-pe-0 {
		padding-right: 0.1rem;
	}

	.border-grid-center {
		border-right: 0px;
	}

	.border-modal-center {
		border-right: 0px;
	}
}

@media (min-width: 601px) {
	.shadow-modal {
		padding: 1rem;
		box-shadow: 0 1rem 3rem rgba(55, 60, 67, 0.175);
	}
}

@media (min-width: 992px) {
	.modal-pe-4 {
		padding-right: 1.5rem !important;
	}

	.modal-ps-4 {
		padding-left: 1.5rem !important;
	}
}


@media (min-width: 992px) {

	.modal-lg,
	.modal-xl {
		max-width: 990px;
	}
}
@media (max-width: 500px) {
	.modal {
		border-bottom: 8px solid #fff;
		border-bottom-left-radius: 5px;
		border-bottom-right-radius: 5px;
	}
}
 
@media (min-width: 768px) {
	.content__wrap {
		padding-inline: 0.9rem !important;
	}
}

@media (min-width: 992px) {
	.content__wrap {
		padding-inline: 0.9rem !important;
	}
}

@media (min-width: 1200px) {
	.content__wrap {
		padding-inline: 0.9rem !important;
	}
}


@media (max-width: 575.98px) {
	.mobile-bg-none {
		background: white !important;
		border: none !important;
		box-shadow: none !important;
		 카드/버튼 그림자도 제거하고 싶을 때  
	}

	.mob-bg-card-none {
		background: white !important;
		border: none !important;
		box-shadow: none !important;
		 카드/버튼 그림자도 제거하고 싶을 때 
		padding-left: 7px !important;
		padding-right: 7px !important;
	}

	.content__wrap {
		padding: 0.9rem 0.9rem !important;
		padding-top: 1rem;
		padding-bottom: 1rem;
		border-left: 0px;
		border-right: 0px;

	}
}

모바일(<= 576px)에서만 border-bottom 적용 
@media (max-width: 768px) {
	.mob-nav-link-border-bottom {
		border-bottom: 0 !important;
	}
} */




/* =========================================================
		form input 관련 스타일
========================================================= */ 
/* 
.form-label {
	margin-top: 0.2rem;
	margin-bottom: 0.2rem;
	font-size: 0.85rem;
	color: #696969;
}

.form-label::before {
	content: "*";
	font-family: nifty-demo-icons !important;
	font-style: normal;
	font-weight: 400 !important;
	font-variant: normal;
	text-transform: none;
	line-height: 1em;
	display: inline-block;
	text-decoration: inherit;
	text-align: center;
	vertical-align: middle;
	color: #696969;
	margin-right: 0.2rem;
	margin-bottom: 0.3rem;
}

.form-none-label {
	margin-bottom: 0.2rem;
	font-weight: 600;
	font-size: 0.85rem;
	min-height: 1.2rem;
}

.form-none-label::before {
	content: "";
	font-family: nifty-demo-icons !important;
	font-style: normal;
	font-weight: 400 !important;
	font-variant: normal;
	text-transform: none;
	line-height: 1em;
	display: inline-block;
	text-decoration: inherit;
	text-align: center;
	vertical-align: middle;
	color: dimgray;
	margin-right: 0.2rem;
	margin-bottom: 0.3rem;
}


.form-required::before {
	content: "*";
	color: crimson !important;
	margin-bottom: 0.2rem;
}

.form-required {
	content: "*";
	color: crimson !important;
	font-weight: 400;
	margin-bottom: 0.2rem;
}

.form-control {
	padding: 0.35rem 0.5rem;
	font-size: 0.9rem;
	border: 1px solid #dfdfdf;
	border-radius: 0.3375rem;
}

.form-control:focus {
	color: black;
	background-color: #fef9e7;
	border-color: #fcf3cf;
	outline: 0;
	border: 2px;
	 
}

.form-select:focus {
	color: black;
	background-color: #fef9e7;
	border-color: #fcf3cf;
	outline: 0;
	border: 2px;
	
}

.form-select {
	padding: 0.37rem 1rem 0.5rem 0.5rem;
	background-position: right 0.2rem center;
	font-size: 14px;
	background-image: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='16px' height='16px' fill='%23646464' class='bi bi-caret-down-fill' viewBox='0 0 16 16' data-originalfillcolor='%239b1fe8' transform='rotate(0) scale(1, 1)'%3E%3Cpath d='M7.247 11.14 2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/%3E%3C/svg%3E");
	background-size: 18px 16px;
	padding-right: 1.5rem;
	padding-left: 0.5rem;
	border: 1px solid #dfdfdf;
	border-radius: 0rem;
}


textarea.form-control {
	min-height: 1rem;
}
.req-d {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 122.88 122.87'%3E%3Cpath fill='rgb(191, 201, 202)' fill-opacity='0.6' d='M0.01,122.87 0,0.01 122.88,0 0.01,122.87'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 6px 6px;
	border-top-left-radius: 0px;
	margin-top: -1px;
}

label.req-r::before {
	content: "*";
	color: rgb(38, 166, 154) !important;
	margin-bottom: 0.2rem;
}

label.req-r {
	content: "*";
	color: rgb(38, 166, 154) !important;
	font-weight: 400;
	margin-bottom: 0.2rem;
}

label.req-b::before {
	content: "*";
	color: rgb(38, 166, 154) !important;
	margin-bottom: 0.2rem;
}

label.req-b {
	content: "*";
	color: rgb(38, 166, 154) !important;
	font-weight: 400;
	margin-bottom: 0.2rem;
}

.form-check-input:checked[type="checkbox"] {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%2345b39d' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
	background-color: #fff;
	border-color: #dfdfdf;
}

.form-switch .form-check-input:checked {
	background-position: right center;
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e") !important;
	background-color: #45b39d;
}

.form-floating>label {
	color: #afafaf;
}

.form-check-input[type="radio"] {
	border-radius: 50%;
	background-color: unset !important;
	border-width: 3px;
}

.form-check-input:checked[type="radio"].bg-secondary {
	background-color: rgba(var(--bs-secondary-rgb)) !important;
	border-width: 5px;
}

.form-check-input:checked[type="radio"].bg-warning {
	background-color: rgba(var(--bs-warning-rgb)) !important;
}

.form-check-input:checked[type="radio"].bg-danger {
	background-color: rgba(var(--bs-danger-rgb)) !important;
}

.form-check-input:checked[type="radio"].bg-primary {
	background-color: rgba(var(--bs-primary-rgb)) !important;
	border-width: 5px;
}

.form-floating>.form-control,
.form-floating>.form-select {
	height: calc(3rem + 2px);
	line-height: 1.25;
}

.form-control:disabled,
.form-control[readonly] {
	background-color: #f8f9f9;
	border-color: #f8f9f9;
}

.form-check-input[type="checkbox"] {
	border-radius: 0.15rem;
}

.form-check-input[type="checkbox"]:checked {
	background-color: #45b39d;
	border-color: #45b39d;
}

.form-check-input[type="checkbox"]:focus {
	border-color: #45b39d;
}

.form-check-input[type="radio"]:focus {
	border-color: #1d8348;
}

.form-check-input[type="radio"]:checked {
	background-color: #1d8348;
	border-color: #1d8348;
	border-width: 5px !important;
}

.form-check-input.star {
	width: 25px;
	height: 25px;
	margin-top: 3px;
	background-color: #fff !important;
}

.form-check-input.star:checked[type="checkbox"] {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='rgb(38, 166, 154)' viewBox='0 0 16 16'%3E%3Cpath d='M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z'/%3E%3C/svg%3E");
	background-repeat: no-repeat !important;
	background-size: 26px 26px !important;
	background-position: center !important;
	background-color: #fff !important;
	border-color: #ffffff !important;
	width: 25px;
	height: 25px;
	margin-top: 3px;
	
}

.form-check-input.taxMailCheck {
	width: 26px;
	height: 26px;
	margin-top: 2px;
	background-color: #fff !important;
}

.form-check-input.taxMailCheck:checked[type="checkbox"] {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(38, 166, 154)' viewBox='0 0 16 16'%3E%3Cpath d='M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414zM0 4.697v7.104l5.803-3.558zM6.761 8.83l-6.57 4.026A2 2 0 0 0 2 14h6.256A4.5 4.5 0 0 1 8 12.5a4.49 4.49 0 0 1 1.606-3.446l-.367-.225L8 9.586zM16 4.697v4.974A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-1.965.45l-.338-.207z'/%3E%3Cpath d='M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-1.993-1.679a.5.5 0 0 0-.686.172l-1.17 1.95-.547-.547a.5.5 0 0 0-.708.708l.774.773a.75.75 0 0 0 1.174-.144l1.335-2.226a.5.5 0 0 0-.172-.686'/%3E%3C/svg%3E");
	background-repeat: no-repeat !important;
	background-size: 26px 20px !important;
	background-position: center !important;
	background-color: #fff !important;
	border-color: rgba(0, 0, 0, 0.2095) !important;
	width: 26px;
	height: 26px;
	margin-top: 2px;
}

input.req-r:not([type="radio"]):not([type="checkbox"]):not(.form-control.is-valid):not(.form-control.is-invalid) {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 122.88 122.87'%3E%3Cpath fill='rgb(223,86,69)' fill-opacity='0.6' d='M0.01,122.87 0,0.01 122.88,0 0.01,122.87'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 6px 6px;
	border-top-left-radius: 0px;
}

textarea.req-r {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 122.88 122.87'%3E%3Cpath fill='rgb(223,86,69)' fill-opacity='0.6' d='M0.01,122.87 0,0.01 122.88,0 0.01,122.87'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 6px 6px;
	border-top-left-radius: 0px;
}

.form-select.req-r {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 122.88 122.87'%3E%3Cpath fill='rgb(223,86,69)' fill-opacity='0.6' d='M0.01,122.87 0,0.01 122.88,0 0.01,122.87'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 6px 6px;
	border-top-left-radius: 0px;
	appearance: auto; 
}
 
input.req-b:not([type="radio"]):not([type="checkbox"]):not(.form-control.is-valid):not(.form-control.is-invalid) {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 122.88 122.87'%3E%3Cpath fill='rgb(38,166,154)' fill-opacity='0.6' d='M0.01,122.87 0,0.01 122.88,0 0.01,122.87'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 6px 6px;
	border-top-left-radius: 0px;
}

textarea.req-b {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 122.88 122.87'%3E%3Cpath fill='rgb(38,166,154)' fill-opacity='0.6' d='M0.01,122.87 0,0.01 122.88,0 0.01,122.87'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 6px 6px;
	border-top-left-radius: 0px;
}

.form-select.req-b {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 122.88 122.87'%3E%3Cpath fill='rgb(38,166,154)' fill-opacity='0.6' d='M0.01,122.87 0,0.01 122.88,0 0.01,122.87'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 6px 6px;
	border-top-left-radius: 0px;
	appearance: auto; 
}

.rounded-lg {
	border-radius: 1rem !important;
}

.overflow-y-auto {
	overflow-y: auto;
	overflow-x: hidden;
}

.form-check-input.fixCheck {
	width: 24px;
	height: 24px;
	margin-top: -2px;
	background-color: #fff !important;
}

.form-check-input.fixCheck:checked[type="checkbox"] {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%2326a69a' viewBox='0 0 16 16'%3E%3Cpath d='M9.828.722a.5.5 0 0 1 .354.146l4.95 4.95a.5.5 0 0 1 0 .707c-.48.48-1.072.588-1.503.588-.177 0-.335-.018-.46-.039l-3.134 3.134a6 6 0 0 1 .16 1.013c.046.702-.032 1.687-.72 2.375a.5.5 0 0 1-.707 0l-2.829-2.828-3.182 3.182c-.195.195-1.219.902-1.414.707s.512-1.22.707-1.414l3.182-3.182-2.828-2.829a.5.5 0 0 1 0-.707c.688-.688 1.673-.767 2.375-.72a6 6 0 0 1 1.013.16l3.134-3.133a3 3 0 0 1-.04-.461c0-.43.108-1.022.589-1.503a.5.5 0 0 1 .353-.146'/%3E%3C/svg%3E");
	background-repeat: no-repeat !important;
	background-size: 26px 20px !important;
	background-position: center !important;
	background-color: #fff;
	border-color: rgba(0, 0, 0, 0.2095) !important;
	width: 24px;
	height: 24px;
	margin-top: -2px;
}

.form-check-input-lg {
	width: 26px;
	height: 26px;
}

.form-check-input.checkListPencil {
	width: 26px !important;
	height: 26px !important;
	background-color: #ffffff !important;
}

.form-check-input.checkListPencil:checked[type="checkbox"] {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%2326a69a' viewBox='0 0 16 16'%3E%3Cpath d='M15.502 1.94a.5.5 0 0 1 0 .706L14.459 3.69l-2-2L13.502.646a.5.5 0 0 1 .707 0l1.293 1.293zm-1.75 2.456-2-2L4.939 9.21a.5.5 0 0 0-.121.196l-.805 2.414a.25.25 0 0 0 .316.316l2.414-.805a.5.5 0 0 0 .196-.12l6.813-6.814z'/%3E%3Cpath fill-rule='evenodd' d='M1 13.5A1.5 1.5 0 0 0 2.5 15h11a1.5 1.5 0 0 0 1.5-1.5v-6a.5.5 0 0 0-1 0v6a.5.5 0 0 1-.5.5h-11a.5.5 0 0 1-.5-.5v-11a.5.5 0 0 1 .5-.5H9a.5.5 0 0 0 0-1H2.5A1.5 1.5 0 0 0 1 2.5z'/%3E%3C/svg%3E");
	background-repeat: no-repeat !important;
	background-size: 26px 20px !important;
	background-position: center !important;
	background-color: #ffffff;
	border-color: rgba(0, 0, 0, 0.2095) !important;
	width: 26px !important;
	height: 26px !important;
	 
}

.dropdown-toggle::after {
	display: inline-block;
	vertical-align: middle;
	content: "";
	border-top: 0.45em solid !important;
	border-right: 0.45em solid transparent !important;
	border-bottom: 0;
	border-left: 0.45em solid transparent !important;
}

.dropdown-menu.tags-menu>li:nth-child(n)>a.is-active {
	background-color: #73c6b6 !important;
	font-weight: 700 !important;
	font-size: 1rem;
	color: #ffffff !important;
}

.dropdown-menu.tags-menu>li:nth-child(n)>a:hover {
	font-weight: 700 !important;
	font-size: 1rem;
	color: #ffffff !important;
	background-color: #73c6b6 !important;
}
 
input[type="file"]::file-selector-button {
	background: #26a69a;
	color: #ffffff;
}

input[type="file"]:hover::file-selector-button {
	background: #26a69a !important;
	color: #ffffff !important;
}
 */
 .middle-col {
    display: flex;
    align-items: center;
}

.form-switch .form-check-input {
	top: .7625rem;
}

.modal-top-right {
    position: fixed;
    top: 10px;
    right: 10px;
    margin: 0;
    transform: translateY(-20px);
	width:100%;
}

.modal.show .modal-top-right {
    transform: translateY(0);
}

