@import url('https://fonts.googleapis.com/css2?family=Gowun+Dodum&family=Stylish&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR&display=swap');
@import url('https://fonts.googleapis.com/css?family=Yeon+Sung:400');

@font-face {
	font-family: 'HangeulNuri-Bold';
	src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_three@1.0/HangeulNuri-Bold.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'KyoboHand';
	src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_20-04@1.0/KyoboHand.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'GmarketSansMedium';
	src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansMedium.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

.headerTitleFont {
	font-family: "HangeulNuri-Bold";
}

.handwriting {
	font-family: "KyoboHand";
}

.hanza {
	font-family: 'Noto Sans KR';
}

:root {
	--rtTitleBar: #310000;
	--rtTitleText: white;

	--nmHorangiBG: #ee7109;

	--stroke-black:
			0px 0px 5px black,
			0px 0px 5px black,
			0px 0px 5px black,
			0px 0px 5px black,
			0px 0px 5px black,
			0px 0px 5px black;

	--stroke-gold:
			0px 0px 5px gold,
			0px 0px 5px gold,
			0px 0px 5px gold,
			0px 0px 5px gold,
			0px 0px 5px gold,
			0px 0px 5px gold;

	--stroke-white:
			0px 0px 5px white,
			0px 0px 5px white,
			0px 0px 5px white,
			0px 0px 5px white,
			0px 0px 5px white,
			0px 0px 5px white;

	--stroke-blue:
			0px 0px 5px blue,
			0px 0px 5px blue,
			0px 0px 5px blue,
			0px 0px 5px blue,
			0px 0px 5px blue,
			0px 0px 5px blue;

	--thinStroke-black: 0px 0px 3px black,
			0px 0px 3px black,
			0px 0px 3px black,
			0px 0px 3px black,
			0px 0px 3px black;

	--transtime: 500ms;
}

html, body {
	width: 100%;
	min-height: 100vh;
	margin: 0px;
	padding: 0px;
}

body {
	font-family: 'Noto Sans KR', sans-serif;
	word-break: break-word;
	background: linear-gradient(#123, #111);
}

div, input, button, textarea, image, select, fieldset, img {
	box-sizing: border-box;
	transition: var(--transtime);
	font-family: GmarketSansMedium;
	font-size: 20px;
}

fieldset {
	border-style: solid;
}

input::placeholder {
	color: #9b9b9b;
}

div::-webkit-scrollbar {
	width: 10px;
}

div::-webkit-scrollbar-thumb {
	background-color: #2f3542;
	border-radius: 10px;
	background-clip: padding-box;
	border: 2px solid transparent;
}

div::-webkit-scrollbar-track {
	background-color: grey;
	border-radius: 10px;
	box-shadow: inset 0px 0px 5px white;
}

a {
	word-break: break-all;
}

button {
	min-height: 50px;
	min-width: 70px;
	cursor: pointer;
	word-break: break-all;
	user-select: none;
}
button:disabled,
button[disabled] {
	cursor: no-drop;
}

#pageBG {
	width: 120%;
	height: 120%;
	top: -10%;
	left: -10%;
	opacity: 0;
	transition: 3s;
}

#boxMainPageCont {
	text-align: center;
}

.fullDiv, .fullBG {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
}

.fullBG {
	z-index: -1;
	background-position: center;
	background-size: cover;
	filter: blur(10px);
}

#rtPopup {
	z-index: 100000;
}

.popCard {
	margin: auto;
	width: 400px;
	max-width: 80vw;
	max-height: 70vh;
	background-color: white;
	padding: 10px;
	padding-top: 20px;
	position: relative;
	border: 10px solid white;
	border-radius: 15px;
	overflow-x: hidden;
	overflow-y: auto;
	opacity: 0;
}

.popCardText {
	width: 100%;
	height: 100%;
}

.popCloseBtn {
	min-width: unset;
	min-height: unset;
	width: 25px;
	height: 25px;
	background-color: black;
	color: white;
	border: 1px solid;
	border-radius: 50%;
	font-size: 15px;
	cursor: pointer;
	position: absolute;
	top: 0px;
	left: 0px;
}

.cardPanel {
	border: 1px solid;
	/* border-radius: 10px; */
	width: 1900px;
	max-width: 90%;
	padding: 20px;
	margin: 30px auto;
	text-align: center;
	background-color: color-mix(in srgb, var(--themeColor-2), transparent 60%);
}

.aroundPointCard {
	display: inline-block;
	border: 2px solid var(--themeColor-2);
	border-radius: 5px;
	margin: 10px;
	height: 100px;
	overflow: hidden;
	cursor: pointer;
	vertical-align: top;
	width: 350px;
	max-width: 90%;
	background-color: var(--themeColor-1);
}
.aroundPointCard .tableDiv {
	width: 100%;
	height: 100%;
}

.tableDiv {
	display: table;
}
.tableDiv>div {
	display: table-cell;
}

.trDiv {
	display: table-row !important;
}

.trDiv>div,
.tdDiv {
	display: table-cell;
}

.aroundPointTitleBox {
	background: linear-gradient(0deg, var(--themeColor-4) 70%, transparent);
	text-align: left;
	vertical-align: top;
}

.aroundPointImg {
	background-image: url('../img/now-image-loading.png');
	width: 100px;
	height: 100px;
}
.aroundPointImg>div {
	width: 100%;
	height: 100%;
}
.aroundPointImg, .aroundPointImg>div {
	background-position: center;
	background-size: cover;
}

.aroundPointTitle {
	text-align: center;
	color: var(--themeColor-1);
	padding: 10px;
}
.aroundPointTitle:hover {
	color: white;
	text-shadow: var(--thinStroke-black);
}

.loadingCircle {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	margin: auto;
	/* display: inline-block; */
	border-top: 3px solid var(--nmHorangiBG);
	border-right: 3px solid transparent;
	box-sizing: border-box;
	animation: rotation 1s linear infinite;
}

#toastBox {
	position: fixed;
	top: 50%;
	left: 50%;
	width: 300px;
	margin-left: -150px;
	z-index: 100000;
	transition: 0.5s ease-out;
}

.toastCard {
	background-color: black;
	color: white;
	border: 1px solid #666;
	padding: 10px;
	margin: 5px 0px;
	text-align: center;
	opacity: .9;
	box-sizing: border-box;
	border-radius: 10px;
	transition: 0.5s ease-out;
}

.btnPointLike {
	min-width: unset;
	min-height: unset;
	border: none;
	border-radius: 50%;
	width: 50px;
	height: 50px;
	cursor: pointer;
	font-size: 30px;
	padding: unset;
	margin-right: 5px;
}

.voteOK {
	border: 2px solid var(--nmHorangiBG);
}

.storyInfoLeft span, .btnStoryLike {
	display: inline-block;
}

.btnStoryLike {
	border-radius: 50%;
	cursor: pointer;
	width: 30px;
	height: 30px;
	line-height: 21px;
	margin-right: 5px;
}

#boxPol {
	padding: 15px;
}

.boxCountPol {
	display: inline-block;
}

.btnStoryExpand {
	position: absolute;
	right: 10px;
	top: 20px;
	cursor: pointer;
}

.storyLine {
	border: 1px solid;
	padding: 10px;
	margin: 5px;
	position: relative;
	background-color: #efefef;
	box-shadow: 2px 2px 5px gray;
	opacity: 0;
}

.storyInfoBox {
	width: 100%;
	margin-top: 10px;
}

.storyInfoLeft,
.storyInfoRight,
.storyInfoLike,
.storyInfoDislike {
	display: inline-block;
}

.storyInfoLike {
	padding-top: 5px;
}

.storyInfoLeft,
.storyInfoRight {
	width: 50%;
}

.storyInfoLeft {
	text-align: left;
}

.storyInfoRight {
	text-align: right;
}

.storyLineTitle {
	font-size: 25px;
	text-align: left;
	color: #252525;
	border-bottom: 1px solid;
	padding: 5px;
	padding-bottom: 10px;
	height: 40px;
	overflow: hidden;
}

.btnStoryEdit {
	cursor: pointer;
}
.btnStoryEdit::after{
	content: '🗒️';
}

.storyLineWriter {
	padding: 0px 10px;
	font-size: 15px;
	position: relative;
}
.storyLineWriterLevelName{
	position: absolute;
	right: 10px;
	top: -17px;
	font-size: 10px;
	background-color: var(--nmHorangiBG);
	color: white;
	padding: 2px 5px;
}

.infoline {
	padding: 10px;
}

.infoline:not(:last-child) {
	border-bottom: 1px solid;
}

.infoline>div {
	display: inline-block;
	vertical-align: top;
}

.infolineTitle {
	font-weight: bold;
}

.infolineTitle::after {
	content: ' :';
}

.infolineText {
	margin-left: 20px;
}

#boxMap {
	height: 80vh;
}
#boxMap,
#boxMap div {
	transition: unset;
}

.myHidedStory .storyLineTitle {
	background-color: gray;
}
.myHidedStory .btnStoryEdit::before{
	content: '(비공개)';
}

#noInfoBox {
	height: 300px;
	padding-top: 90px;
}

.footprint-checked, .footprint-uncheck {
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100%;
	display: inline-block;
}

.footprint-checked {
	background-image: url('../img/icon/footprint-checked.png');
}

.footprint-uncheck {
	background-image: url('../img/icon/footprint-uncheck.png');
}

.smallTxt {
	font-size: 13px;
}

@keyframes rotation {
	from {
		-webkit-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}

	to {
		-webkit-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@keyframes blink {
	0% {
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	100% {
		opacity: 0;
	}
}

#divBottomMenu {
	position: fixed;
	width: 100%;
	height: 50px;
	bottom: 0px;
	background-color: #060606b8;
	z-index: 10000;
}

#boxBottomMenus {
	width: 100%;
	max-width: 1000px;
	padding: 5px;
	margin: auto;
}
#boxBottomMenus>button {
	background-size: cover;
	background-position: center;
}

.btnBottomMenuRight,
.btnBottomMenuLeft {
	margin: auto 3px;
	min-width: unset;
	min-height: unset;
	height: 40px;
	width: 40px;
	padding: 5px;
	border: 1px solid;
	text-align: center;
	line-height: 16px;
	font-size: 12px;
	cursor: pointer;
}

.btnBottomMenuRight {
	float: right;
	border-radius: 5px;
	background-color: white;
}

.btnBottomMenuLeft {
	float: left;
	border-radius: 50%;
}

.LMmarkerText {
	font-size: 12px;
	text-align: center;
	color: black;
	background-color: white;
	border: 1px solid;
	white-space: nowrap;
	position: absolute;
	bottom: 42px;
	transform: translateX(-50%);
	margin-left: 12px;
	padding: 3px;
}

/* leafletMap 관련 */
.LMIcon {
	background-image: url(../img/icon/mapMarker/basicMarker.png);
	background-size: 100%;
	background-repeat: no-repeat;
}

.LMIconNumber{
	font-size: 15px;
	font-weight: bold;
	text-shadow: var(--thinStroke-black);
	color: white;
}

.LMbtnMapPinTitle {
	font-size: 15px;
	cursor: pointer;
}

.LMIcon-nagne {
	background-image: url(../img/icon/tiger-footprint-black.png);
	background-size: 100%;
	background-repeat: no-repeat;
}


.pGuri {
	font-size: 14px;
	height: 0px;
	color: var(--ribbonTxt);
	border-bottom: 16px solid var(--ribbon);
	border-right: 10px solid transparent;
	padding: 0px 10px 0px 5px;
	display: inline-block;
}

.iconBtnRefresh,
.iconBtnSearch {
	background-size: cover;
	background-position: center;
}

.iconBtnSearch {
	background-image: url('../img/icon/btnSearch-white.png');
}

.iconBtnRefresh {
	background-image: url('../img/icon/btnRefresh-white.png');
}

.letterPaper{
	background-color: #ffffffcc;
	padding: 20px;
	border-radius: 10px;
}

.popCardText ol,
.popCardText ul {
	padding-inline-start: 1em;
}

.popCardText li:last-child {
	margin-bottom: 15px;
}

.popSmallTxt {
	font-size: 14px;
}
.popTxtTitle {
	font-family: 'HangeulNuri-Bold';
	font-size: 30px;
	background-color: var(--nmHorangiBG);
	color: white;
	padding: 10px 3px;
	text-shadow: var(--thinStroke-black);
}

.slidePanelBox {
	position: fixed;
	max-width: 1900px;
	left: 50%;
	transform: translateX(-50%);
	bottom: -100%;
	z-index: 100;
}

.leaflet-popup-content a {
	font-size: 14px;
	cursor: pointer;
}

.rndBgInfo {
	font-size: 14px;
	text-align: right;
	padding-right: 10px;
	text-shadow: 1px 1px 1px white;
}