@charset "utf-8";

/* ShareTalk Cusom Style */

body {
  font-family: Poppins, 'Noto Sans KR', 'Roboto', sans-serif;
  font-size: 14px;
}

/* 접근성 */
.blind {display:block; position:absolute; left:-9999px; text-indent:9999px; width:0; height:0; border:0; overflow:hidden; font-size:0; line-height:0; white-space: nowrap;}
#u-skip {position: relative; z-index: 2147483647;}
#u-skip a {position: absolute; top: -30px; left: 0; width: 138px; border: 1px solid #4ec53d; background: #000000; text-align: center; outline: none;}
#u-skip span {display: inline-block; padding: 2px 6px 0 0; font-size: .92em; line-height: 26px; color: #fff; letter-spacing: -1px;}
#u-skip a:hover,
#u-skip a:focus,
#u-skip a:active {top: 0;}


.adslot_1 { width: 320px; height: 100px; }
@media (min-width:500px) { .adslot_1 { width: 468px; height: 60px; } }
@media (min-width:800px) { .adslot_1 { width: 728px; height: 90px; } }
@media (min-width: 768px) {
  .hero-home {
    min-height: 350px;
  }
}

/***********************/
/* dir templete custom */
/* /dist/dir/css/custom.css 에서 분리함 */
/***********************/
.modal {
	--bs-modal-width: 600px;
}

.ps-rg-3 {
  padding-right: 3rem !important;
}
.ml-30 {
  margin-left: 30px !important;
}

.card-emergency {
  flex-direction: row;
  align-items: flex-end;
  color: #fff;
  border: none;
  overflow: hidden;
  box-shadow: 0 0.1rem 0.3rem rgba(0, 0, 0, 0.1);
  min-height: 198px;
  /* min-height: 350px; */
}

.nav.nav-divider .nav-item + .nav-item:before {
	content: "•";
	color: inherit;
	padding-left: 0.6rem;
	padding-right: 0.6rem;
	opacity: 0.8;
}

.h-50px {
	height: 50px !important;
}

/* Scroll to top ---------------------------------- */
.scrollToTop {
	color: #ffffff;
	position: fixed;
	bottom: 74px;
	right: 5px;
	width: 50px;
	height: 50px;
	text-align: center;
	cursor: pointer;
	background-color: #000000;
	z-index: 1005;
	display: none;
}

.scrollToTop i {
	line-height: 50px;
	font-size: 24px;
}

.scrollToTop chat {
	line-height: 50px;
	font-size: 24px;	
}

/* Small devices (tablets, phones less than 767px) */
@media (max-width: 767px) {
	.scrollToTop {
		width: 40px;
		height: 40px;
		background-color: rgba(0, 0, 0, 0.4);
	}

	.scrollToTop i {
		line-height: 40px;
		font-size: 20px;
	}
}

/* style.default.css:15543 수정 */
@media (min-width: 992px) {
  .map-side-lg {
    position: fixed;
    top: 92px;
    right: 0;
  }
  .map-side-lg .map-full {
    height: calc(100vh - 72px);
  }
}

/*  Avatars */
.avatar {
  display: inline-block;
  position: relative;
  width: 3rem;
  height: 3rem;
  text-align: center;
  border: #dee2e6;
  border-radius: 50%;
  background: #fff;
	box-shadow: 0 0 0rem rgba(0, 0, 0, 0);
  line-height: 3rem;
}




/* 채팅  ---------------------------------- */
/* #btn-chat-open {display:block; position:fixed; bottom:50px; right:40px; width:50px; height:60px; margin-top:-30px; border:1px solid #777; color:#000; font-size:13px; line-height:25px; text-align:center; background-color:#ffcb07; box-shadow:3px 6px 10px 3px rgba(0,0,0,0.15); z-index:1000;} */
#btn-chat-open {display:block; position:fixed; bottom:4px; right:5px; width:50px; height:60px; margin-top:-30px; border:1px solid #777; color:#000; font-size:13px; line-height:25px; text-align:center; background-color:#ffcb07; box-shadow:3px 6px 10px 3px rgba(0,0,0,0.15); z-index:1000;}
#btn-chat-open:before {display:block; content:''; height:35px; background:#ffcb07 url(/assets/images/common/ico-chat.png) no-repeat center center; background-size:29px 25px;}
/* #chatting {display:none; position:fixed; right:100px; bottom:50px; width:360px; height:640px; border-radius:5px; color:#000; font-size:14px; background-color:#fff; box-shadow:3px 6px 10px 3px rgba(0,0,0,0.15); overflow:hidden; z-index:1500;} */
#chatting {display:none; position:fixed; right:100px; bottom:50px; width:360px; height:640px; border-radius:5px; color:#000; font-size:14px; background-color:#fff; box-shadow:3px 6px 10px 3px rgba(0,0,0,0.15); overflow:hidden; z-index:1500;}
.chat-title {height:45px; padding:0 20px; font-size:17px; line-height:45px; background-color:#ffcb07; margin:0;}
.chat-body {height:calc(100% - 90px); padding:15px; background:#ececec; overflow-y:auto;}
.chat-body p {position:relative; margin-bottom:5px;}
.chat-body .author {display:block; margin-bottom:5px;}
.chat-body .admin {padding-left:45px;}
.chat-body .admin .author:before {display:block; position:absolute; content:''; left:-3px; top:2px; width:38px; height:38px; border-radius:19px; background:#ffcb07 url(/assets/img/upload/avt/noimage1.png) no-repeat center center; background-size:21px 20px;}
.chat-body .box {position:relative; display:inline-block; max-width:calc(100% - 75px); border-radius:5px; margin-bottom:10px; padding:10px 15px; line-height:1.3; background-color:#fff; box-shadow:-1px 1px 3px 0 rgba(0,0,0,0.1);}
.chat-body .time {display:inline-block; margin:0 3px 10px; font-size:12px; vertical-align:bottom;}
.chat-body .admin .box {margin-left:10px; border-top-left-radius:0;}
.chat-body .admin .box:before {display:block; content:''; position:absolute; left:-16px; top:0; width:16px; height:10px; background:url(/assets/images/common/arr-box-mng.png) no-repeat; background-size:cover;}
.chat-body .ask {text-align:right;}
.chat-body .ask .box {margin-right:10px; border-top-right-radius:0; background-color:#ffe153; text-align:left;}
.chat-body .ask .box:after {display:block; content:''; position:absolute; right:-15px; top:0; width:15px; height:10px; background:url(/assets/images/common/arr-box-ask.png) no-repeat; background-size:cover;}
.chat-input {position:absolute; bottom:0; left:0; right:0; height:45px; background-color:#a2a2a2;}
.chat-input .attach-file {float:left;}
.chat-input .btn-attach-file {float:left; width:45px; height:45px; text-indent:100%; white-space:nowrap; background:#a2a2a2 url(/assets/images/common/btn-file-attach.png) no-repeat center center; background-size:21px 25px; overflow:hidden;}
.chat-input input[type=text] {float:left; border:0; width:calc(100% - 60px); height:100%; padding:5px 15px;}
.chat-input .attach-file+input[type=text] {width:calc(100% - 105px);}
.chat-input .btn-submit {float:left; width:60px; height:45px; background-color:#fdcb05; border:0;}
.btn-chatting-close {position:absolute; right:0; top:0; width:45px; height:45px; text-indent:100%; white-space:nowrap; background:url(/assets/images/common/ico-close-x.png) no-repeat center center; background-size:17px 16px; overflow:hidden; padding:0; border:0;}

/* //채팅  ---------------------------------- */



@media (min-width: 576px) {
  .container-sm, .container {
    max-width: 100%;
  }
}
@media (min-width: 768px) {
  .container-md, .container-sm, .container {
    max-width: 100%;
  }
}
@media (min-width: 992px) {
  .container-lg, .container-md, .container-sm, .container {
    max-width: 100%;
  }
}
@media (min-width: 1200px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1140px;
  }
}
@media (min-width: 1400px) {
  .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1320px;
  }
}


/* custom social */

body {
  /* app webview 호출시 바탕색 white 로 */
  background-color: white !important;
}

.bg-edu{
  background: #dfcdff;
}

.bg-sotong{
  background: #ffeeef;
}

.bg-sotong-red{
  background: #f96b71;
}

.btn-social {
	position: relative;
	padding-left: 3rem;
}

.btn-social-icon {
	position: absolute;
	left: 1rem;
	width: 2rem;
	top: 50%;
	transform: translateY(-50%);
}

.close-absolute {
  position: absolute;
  top: 0;
  right: 0;
}

.bg-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}

img.bg-image {
  font-family: "object-fit: cover;";
  -o-object-fit: cover;
  object-fit: cover;
}

.bg-cover {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.full-screen {
  height: calc(100vh - 72px);
}

.h-25 {
  height: 25% !important;
}

.h-50 {
  height: 50% !important;
}

.h-75 {
  height: 75% !important;
}

.h-100 {
  height: 100% !important;
}

.h-auto {
  height: auto !important;
}



/* Sotong Cusom Style */
body {
  /* app webview 호출시 바탕색 white 로 */
  background-color: white !important;
}

header { height: 70px;}
.bg-edu{
  background: #dfcdff;
}

.bg-sotong{
  background: #ffeeef;
}

.bg-sotong-red{
  background: #f96b71;
}

.single-line {
  white-space: nowrap;       /* 줄바꿈 금지 */
  /*overflow: hidden;         /* 넘치는 텍스트 숨김 */
  /*text-overflow: ellipsis;  /* 넘칠 때 말줄임 표시(...) 선택사항 */
}

/* *********** */
/* custom able */

.btn-social {
	position: relative;
	padding-left: 3rem;
}

.btn-social-icon {
	position: absolute;
	left: 1rem;
	width: 2rem;
	top: 50%;
	transform: translateY(-50%);
}

.close-absolute {
  position: absolute;
  top: 0;
  right: 0;
}

.bg-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}

img.bg-image {
  font-family: "object-fit: cover;";
  -o-object-fit: cover;
  object-fit: cover;
}

.bg-cover {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.full-screen {
  height: calc(100vh - 72px);
}

.h-25 {
  height: 25% !important;
}

.h-50 {
  height: 50% !important;
}

.h-75 {
  height: 75% !important;
}

.h-100 {
  height: 100% !important;
}

.h-auto {
  height: auto !important;
}


/* ===== Clean Table UI (Google + Tailwind Style) ===== */
.clean-table-wrap {
  background: #ffffff;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.04);
  overflow: hidden;
  border: 1px solid #e5e7eb;
}

/* table base */
.clean-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  color: #1f2937;
}

/* header */
.clean-table thead {
  background: #f9fafb;
}

.clean-table th {
  padding: 14px 12px;
  font-weight: 600;
  text-align: left;
  border-bottom: 1px solid #e5e7eb;
  color: #374151;
}

/* body */
.clean-table td {
  padding: 13px 12px;
  border-bottom: 1px solid #f1f5f9;
  vertical-align: middle;
}

/* hover */
.clean-table tbody tr:hover {
  background: #f0f9ff;
}

/* last row border remove */
.clean-table tbody tr:last-child td {
  border-bottom: none;
}

/* align helpers */
.t-right { text-align:right; }
.t-center { text-align:center; }

/* badge style */
.badge-soft {
  background: #e0f2fe;
  color: #0284c7;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
}

/* total summary row */
.total-row {
  background: #f8fafc;
  font-weight: 700;
}

/* responsive */
@media(max-width:768px){
  .clean-table {
    font-size: 13px;
  }
}
/* ===== Bootstrap table-sm Compatible ===== */

.clean-table.table-sm th,
.clean-table.table-sm td {
  padding: 8px 10px;
  font-size: 13px;
}

/* ===== small text support ===== */

.clean-table.small,
.clean-table .small {
  font-size: 12px;
}

.clean-table.small th,
.clean-table.small td {
  padding: 7px 9px;
}

/* ===== table-sm + small 같이 쓸 경우 ===== */

.clean-table.table-sm.small th,
.clean-table.table-sm.small td {
  padding: 6px 8px;
  font-size: 12px;
}

/* ///===== Clean Table UI (Google + Tailwind Style) ===== */

/* DataTables in clean-table-wrap */
.clean-table-wrap.datatable-wrap {
  overflow: visible;
  padding: 16px;
}

.clean-table-wrap .dataTables_wrapper .dataTables_length,
.clean-table-wrap .dataTables_wrapper .dataTables_filter {
  margin-bottom: 12px;
}

.clean-table-wrap .dataTables_wrapper .dataTables_filter input,
.clean-table-wrap .dataTables_wrapper .dataTables_length select {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 6px 10px;
  margin-left: 6px;
}

.clean-table-wrap .dataTables_wrapper .dataTables_info,
.clean-table-wrap .dataTables_wrapper .dataTables_paginate {
  margin-top: 12px;
  font-size: 13px;
}

.clean-table-wrap .dataTables_wrapper .paginate_button {
  border-radius: 6px !important;
  margin: 0 2px;
}

.clean-table-wrap .dataTables_wrapper .paginate_button.current {
  background: #0284c7 !important;
  border-color: #0284c7 !important;
  color: #fff !important;
}

.clean-table-wrap .dt-buttons {
  margin-bottom: 12px;
}

.clean-table-wrap .dt-buttons .dt-button {
  border: 1px solid #e5e7eb !important;
  border-radius: 8px !important;
  background: #fff !important;
  color: #374151 !important;
  font-size: 13px !important;
  padding: 6px 12px !important;
  margin-right: 6px !important;
}

.clean-table-wrap .dt-buttons .dt-button:hover {
  background: #f0f9ff !important;
  border-color: #0284c7 !important;
  color: #0284c7 !important;
}