@font-face {
	font-family: Pretendard;
	font-display: swap;
	src:
		url('/res/font/Pretendard-Black.woff2') format('woff2'),
		url('/res/font/Pretendard-Black.woff') format('woff');
	font-weight: 900;
}

@font-face {
	font-family: Pretendard;
	font-display: swap;
	src:
		url('/res/font/Pretendard-ExtraBold.woff2') format('woff2'),
		url('/res/font/Pretendard-ExtraBold.woff') format('woff');
	font-weight: 800;
}

@font-face {
	font-family: Pretendard;
	font-display: swap;
	src:
		url('/res/font/Pretendard-Bold.woff2') format('woff2'),
		url('/res/font/Pretendard-Bold.woff') format('woff');
	font-weight: 700;
}

@font-face {
	font-family: Pretendard;
	font-display: swap;
	src:
		url('/res/font/Pretendard-Medium.woff2') format('woff2'),
		url('/res/font/Pretendard-Medium.woff') format('woff');
	font-weight: 500;
}

@font-face {
	font-family: Pretendard;
	font-display: swap;
	src:
		url('/res/font/Pretendard-Regular.woff2') format('woff2'),
		url('/res/font/Pretendard-Regular.woff') format('woff');
	font-weight: 400;
}

@font-face {
	font-family: Pretendard;
	font-display: swap;
	src:
		url('/res/font/Pretendard-Light.woff2') format('woff2'),
		url('/res/font/Pretendard-Light.woff') format('woff');
	font-weight: 300;
}

@font-face {
	font-family: Pretendard;
	font-display: swap;
	src:
		url('/res/font/Pretendard-ExtraLight.woff2') format('woff2'),
		url('/res/font/Pretendard-ExtraLight.woff') format('woff');
	font-weight: 200;
}

@font-face {
	font-family: Pretendard;
	font-display: swap;
	src:
		url('/res/font/Pretendard-Thin.woff2') format('woff2'),
		url('/res/font/Pretendard-Thin.woff') format('woff');
	font-weight: 100;
}

:root {
	--bg-color: #18181b;
	--text-color: #fff;
	--text-hover: #ff4500;
	--font-family:
		'Pretendard', -apple-system, blinkmacsystemfont, system-ui, roboto, 'Helvetica Neue',
		'Segoe UI', 'Apple SD Gothic Neo', 'Noto Sans KR', 'Malgun Gothic', sans-serif;
	--font-weight: 300;
	--font-size: 13px;
	--min-width: 1100px;
	--header-background: #18181b;
	--shadow-header: 0 2px 4px -1px rgb(0 0 0 / 45%);
	--wrapper-width: 1080px;
	--link-color: #ccc;
	--link-hover-color: #ff4500;
	--aside-width: 320px;
	--icon-new-color: #ff4500;
}

body {
	margin: 0;
	padding: 0;
	background-color: var(--bg-color);
	color: var(--text-color);
	font-family: var(--font-family);
	font-weight: var(--font-weight);
	font-size: var(--font-size);
	min-width: var(--min-width);
}

body.popup {
	min-width: inherit;
}

*:focus {
	outline: none;
}

button {
	font-family: var(--font-family);
	font-weight: var(--font-weight);
	font-size: var(--font-size);
}

html {
	overflow-y: scroll;
}

html::-webkit-scrollbar {
	width: 5px !important;
}

html::-webkit-scrollbar-track {
	background: #2e2e30 !important;
}

html::-webkit-scrollbar-thumb {
	background-color: #5a5a5d !important;
	border-radius: 6px !important;
	border: 2px solid #2e2e30 !important;
}

html::-webkit-scrollbar-thumb:hover {
	background-color: #76767a !important;
}

html {
	scrollbar-width: thin;
	scrollbar-color: #5a5a5d #2e2e30;
}

.no-scroll {
	overflow: hidden; /* 본문 스크롤을 비활성화 */
}

* {
	box-sizing: border-box;
}

a {
	color: var(--text-color);
	text-decoration: none;
}

a:hover {
	color: var(--text-hover);
}

hr {
	border: none;
	border-top: 1px solid #5a5a5d;
	margin: 30px 0; /* 위아래로 30px 마진 */
}

.wrapper {
	width: var(--wrapper-width);
}

.flex {
	display: flex;
}

.hide {
	display: none;
}

.s-header {
	position: fixed;
	top: 0;
	z-index: 1000;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	width: 100%;
	min-width: var(--min-width);
	background-color: var(--header-background);
	box-shadow: var(--shadow-header);
	margin-bottom: 20px;
	border-bottom: 2px solid #db0000;
}

.chat-icon,
.menu-icon {
	display: none;
}

.s-header .top {
	background-color: #131315;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	border-bottom: 1px dashed rgb(255 255 255 / 10%);
}

.s-header .top .wrapper {
	height: 39px;
}

.s-header .wrapper {
	display: flex;
	align-items: center;
	justify-content: center;
}

#logo {
	display: flex;
	align-items: center;
	font-size: 18px;
	height: 70px;
	margin-right: auto;
}

#logo img {
	width: 24px;
	height: 24px;
	margin-right: 7px;
	transition: transform 0.3s ease-in-out;
}

#logo:hover img {
	transform: rotate(360deg);
}

#logo strong {
	font-weight: 700;
	margin-right: 3px;
	transition: color 0.3s ease;
}

#logo span {
	font-weight: 200;
	color: var(--link-color);
}

.topMenu {
	display: flex;
	flex: 1;
	align-items: center;
	justify-content: flex-end;
	color: var(--text-color);
	font-size: 17px;
	letter-spacing: -1px;
	height: 100%;
}

.topMenu .notice {
	display: none;
}

.topMenu .userBox {
	display: none;
}

.topMenu ul {
	display: flex;
	list-style: none;
	padding: 0;
	margin: 0;
}

.topMenu ul li {
	position: relative;
	margin-left: 22px;
}

.topMenu ul li > a {
	position: relative;
	display: flex;
	align-items: center;
	height: 64px;
	color: var(--link-color);
	transition: all 0.3s ease-in-out;
}

.topMenu ul li > a .trophy_icon {
	width: 20px;
	margin-right: 3px;
	transition: all 0.3s ease-in-out;
}

.topMenu ul li > a:hover .trophy_icon {
	width: 24px;
	margin-right: 3px;
	animation: bounce 0.7s ease-in-out;
}

@keyframes bounce {
	0%,
	20%,
	50%,
	80%,
	100% {
		transform: translateY(0);
	}

	40% {
		transform: translateY(-10px);
	}

	60% {
		transform: translateY(-5px);
	}
}

.topMenu ul li > a > span {
	display: inline-block;
	position: relative;
}

.topMenu ul li > a > span::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: -8px;
	width: 100%;
	height: 3px;
	background-color: var(--text-hover);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.2s ease;
}

.topMenu ul li > a.active > span::after,
.topMenu ul li > a:hover > span::after {
	transform: scaleX(1);
}

.topMenu small {
	content: ' ';
	display: block;
	position: absolute;
	top: 0;
	right: -10px;
	width: 5px;
	height: 5px;
	background-color: var(--icon-new-color);
	border-radius: 3px;
}

.topMenu ul li > a small {
	top: 20px;
}

.subMenu {
	position: absolute;
	top: 64px;
	left: -15px;
	display: none;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background-color: var(--bg-color);
	box-shadow: var(--shadow-header);
	max-width: 600px;
}

.topMenu ul li:hover .subMenu {
	display: flex;
}

.subMenu dl {
	padding: 5px;
	margin: 0;
}

.subMenu dl dd {
	margin: 0;
	padding: 0;
}

.subMenu dl dd > a {
	position: relative;
	display: block;
	padding: 10px;
	width: 135px;
	font-size: 14px;
	letter-spacing: -1px;
	color: var(--link-color);
	transition: all 0.2s ease-in-out;
}

.subMenu dl dd > a small {
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
}

.subMenu dl dd > a.active,
.topMenu ul li > a.active {
	color: var(--text-hover);
}

.subMenu dl dd:hover > a,
.topMenu ul li:hover > a {
	color: var(--link-hover-color);
}

.subMenu dl dd:hover > a {
	padding-left: 20px;
}

.s-main {
	margin-top: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	width: 100%;
	background-color: var(--header-background);
}

.s-main .wrapper {
	display: flex;
	align-items: flex-start;
	flex-wrap: nowrap;
	max-width: 100%;
}

aside {
	display: flex;
	flex-direction: column;
	width: var(--aside-width);
	margin-right: 10px;
}

main {
	display: flex;
	flex-direction: column;
	flex: 1;
	max-width: 100%;
}

#content {
	background-color: #1e1e21;
	box-shadow: 0 0 3px -1px rgb(0 0 0 / 45%);
}

.box {
	width: var(--aside-width);
	margin-top: 10px;
	background-color: #1e1e21;
	padding: 10px;
	box-shadow: 0 0 3px -1px rgb(0 0 0 / 45%);
}

.box:first-child {
	margin-top: 0;
}

.bannerCenter {
	width: 100%;
	margin: 10px 0;
	border: 1px solid #4c5873;
	border-radius:10px
	overflow: hidden;
}

.bannerCenter:first-child {
	margin-top: 0;
}

.post-tab-banner-aside a,
.post-tab-banner-aside img {
	display: block;
}

.bannerCenter ul,
.bannerAside ul,
.banner ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.bannerCenter ul {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0;
}

.bannerAside ul,
.banner ul {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
}

.bannerCenter li img {
	width: 100%;
	height: 80px;
	display: block;
}

.bannerAside {
	margin-top: 10px;
}

.banner li {
	width: 100%;
}

.banner li a {
	display: flex;
	align-items: center;
	width: 100%;
	border-left: 5px solid;
	padding: 15px;
	color: var(--text-color);
	background-color: #1e1e21;
	position: relative;
	z-index: 2;
	text-decoration: none;
	box-sizing: border-box;
	transition: all 0.4s ease-in-out;
}

.banner li:first-child a {
	border-top: none;
}

.banner li a .info {
	margin-right: auto;
}

.banner li a .info h4 {
	font-size: 16px;
	font-weight: 300;
	margin: 0;
}

.banner li a .info p {
	font-size: 12px;
	margin: 0;
	padding-top: 5px;
	letter-spacing: -1px;
	color: var(--link-color);
}

.banner li a ion-icon {
	font-size: 23px;
	color: var(--link-color);
	transition:
		transform 0.6s ease-in-out,
		color 0.4s ease-in-out;
}

.banner li a:hover ion-icon {
	transform: rotate(360deg);
	color: rgb(0 0 0 / 90%);
}

.banner li a:hover .info p {
	color: rgb(0 0 0 / 90%);
}

.banner li a:hover {
	border-left: 5px solid #1e1e21;
	color: rgb(0 0 0 / 90%);
	padding-left: 25px;
}

.banner li a::after {
	content: '';
	height: 100%;
	left: 0;
	top: 0;
	width: 0;
	position: absolute;
	z-index: -1;
	transition: width 0.2s ease;
}

.banner li a:hover::after {
	width: 100%;
}

.banner li:first-child a:hover {
	border-top: none;
}

.banner li:first-child a {
	border-left-color: #ff4500;
}

.banner li:nth-child(2) a {
	border-left-color: #ff8c00;
}

.banner li:nth-child(3) a {
	border-left-color: #ffd700;
}

.banner li:nth-child(4) a {
	border-left-color: #4eae2e;
}

.banner li:nth-child(5) a {
	border-left-color: #00bfff;
}

.banner li:nth-child(6) a {
	border-left-color: #4682b4;
}

.banner li:last-child a {
	border-left-color: #ac39de;
}

.banner li:first-child a::after {
	background: #ff4500;
}

.banner li:nth-child(2) a::after {
	background: #ff8c00;
}

.banner li:nth-child(3) a::after {
	background: #ffd700;
}

.banner li:nth-child(4) a::after {
	background: #4eae2e;
}

.banner li:nth-child(5) a::after {
	background: #00bfff;
}

.banner li:nth-child(6) a::after {
	background: #4682b4;
}

.banner li:last-child a::after {
	background: #ac39de;
}

.telegram-banner {
	width: 250px;
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #1e1e21;
	border-left: 1px solid #18181b;
	font-size: 15px;
	letter-spacing: -1px;
	color: #ff8c00;
	font-weight: 200;
}

.bannerCenter li img.telegram-logo {
	width: 32px;
	height: 32px;
	margin-right: 7px;
	opacity: 0.8;
	transition: opacity 0.2s ease-in-out;
}

.telegram-banner:hover {
	color: var(--text-color);
}

.telegram-banner:hover img.telegram-logo {
	opacity: 1;
}

.userBox {
	height: 100px;
	border-left: 5px solid #ff4500;
	flex-direction: column;
}

.userBox .loginButton {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
}

.userBox .loginButton button {
	background: #2e2e30;
	border: none;
	letter-spacing: -1px;
	box-shadow: 0 0 3px -1px rgb(0 0 0 / 45%);
	cursor: pointer;
	box-sizing: border-box;
	box-sizing: border-box;
	box-sizing: border-box;
	padding: 0;
	margin: 0;
	border-radius :10px
}

.userBox .loginButton button:first-child {
	margin-right: 4px;
}

.userBox .loginButton button div {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 46px;
	width: 128px;
}

.userBox .loginButton button > div::before {
	content: '';
	height: 100%;
	right: 0;
	top: 0;
	width: 0;
	position: absolute;
	transition: all 0.2s ease 0s;
	background: #149a4e;
}

.userBox .loginButton button:first-child > div::before {
	background: #ff4500;
}

.userBox .loginButton button div > span {
	color: #149a4e;
	font-size: 14px;
	font-weight: 500;
	z-index: 1;
	transition: all 0.5s ease 0s;
}

.userBox .loginButton button:first-child div > span {
	color: #ff4500;
}

.userBox .loginButton button div > svg {
	width: 24px;
	margin-right: 3px;
	z-index: 1;
}

.userBox .loginButton button div > svg path {
	fill: #149a4e;
	transition: all 0.5s ease 0s;
}

.userBox .loginButton button:first-child svg path {
	fill: #ff4500;
}

.userBox .loginButton button:hover div > span {
	color: #fff;
}

.userBox .loginButton button:hover > div svg {
	transition: all 0.7s ease 0s;
	transform: rotateY(360deg);
}

.userBox .loginButton button:hover > div svg path {
	fill: #fff;
}

.userBox .loginButton button:hover > div::before {
	width: 100%;
}

.userBox > .flex {
	position: relative;
	padding: 5px;
}

.userBox .infoBox {
	flex: 1;
}

.userBox .profile {
	width: 72px;
	margin-right: 12px;
	border-radius: 36px;
}

.userBox .nickname {
	padding-top: 2px;
	align-items: center;
}

.userBox .nickname .level-icon {
	margin-right: 1px;
}

.userBox .nickname strong {
	font-size: 15px;
	font-weight: 400;
	color: #ccc;
	margin-right: 8px;
}

.userBox .nickname span {
	font-size: 12px;
	font-weight: 300;
	color: #aaa;
}

.userBox .lv-text {
	margin: 3px 0 2px 2px;
	font-size: 9px;
	font-family: Arial, Helvetica, sans-serif;
	color: #aaa;
}

.userBox .lv-text .split {
	margin: 0 6px 0 5px;
	display: inline-block;
	border-right: 1px solid #666;
	height: 7px;
}

.userBox .lv-bar .progress {
	padding: 2px;
	border-radius: 3px;
	background: rgb(0 0 0 / 25%);
	box-shadow:
		inset 0 1px 2px rgb(0 0 0 / 25%),
		0 1px rgb(255 255 255 / 8%);
}

.userBox .lv-bar .progress-bar {
	height: 3px;
	border-radius: 2px;
	transition: width 0.4s linear;
}

.userBox .lv-bar .progress-moved .progress-bar {
	background-color: #ff4500;
	animation: progressAnimation 1s;
}

@keyframes progressAnimation {
	0% {
		width: 0;
	}

	100% {
	}
}

.userBox .admin {
	position: absolute;
	top: 0;
	right: 0;
	font-size: 20px;
	color: #aaa;
	transition: color 0.3s ease-in-out;
}

.userBox .admin ion-icon {
	transition: transform 0.3s ease-in-out;
}

.userBox .admin:hover {
	color: #ff4500;
}

.userBox .admin:hover ion-icon {
	transform: rotate(360deg);
}

.userBox ul {
	width: 100%;
	display: flex;
	list-style-type: none;
	padding: 0;
	margin: 0;
	margin-top: 7px;
}

.userBox ul li a {
	padding: 0;
	margin: 0;
	font-size: 13px;
	margin-right: 10px;
	letter-spacing: -1px;
	transition: all 0.3s ease-in-out;
}

.userBox ul li a {
	display: flex;
	align-items: center;
}

.userBox ul li a small {
	font-size: 10px;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: blod;
	margin-left: 3px;
}

.notice {
	height: 50px;
	overflow: hidden;
	padding: 0;
	border-left: 5px solid #ff8c00;
}

.rolling {
	position: relative;
	list-style-type: none;
	padding: 0;
	margin: 0;
}

.rolling li {
	display: flex;
	align-items: center;
	height: 50px;
	padding: 0 10px;
}

.rolling li span {
	display: inline-block;
	padding: 2px 5px;
	background-color: #ff8c00;
	border: 1px solid rgb(0 0 0 / 90%);
	margin-right: 5px;
	color: rgb(0 0 0 / 90%);
	letter-spacing: -1px;
	font-size: 12px;
	border-radius: 3px;
	font-weight: 600;
}

.rolling li > a {
	display: block;
	padding-top: 15px;
	height: 50px;
	width: 310px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	transition: all 0.2s ease-in-out;
}

.rolling li > a:hover {
	color: #ff8c00;
}

.Chat {
	width: 100%;
	padding: 0;
}

.Chat .info {
	display: flex;
	align-items: center;
	height: 50px;
	border-left: 5px solid #ffd700;
	padding: 0 10px;
	border-bottom: 1px dashed #333;
}

.Chat .info .chat-close {
	display: none;
}

.Chat .info h2 {
	font-size: 16px;
	font-weight: 300;
	display: flex;
	align-items: center;
	margin: 0;
	margin-right: auto;
}

.Chat .info h2 ion-icon {
	font-size: 20px;
	margin-right: 5px;
}

.Chat .info .js-room-user-counter {
	font-size: 9px;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: blod;
	color: #ccc;
}

.Chat .container {
	border-left: 5px solid #4eae2e;
	padding: 10px 5px 10px 10px;
	border-bottom: 1px dashed #333;
}

.Chat .js-chat-list {
	height: 380px;
	overflow-y: auto;
	display: flex;
	flex-direction: column;
}

.Chat .js-chat-list::-webkit-scrollbar {
	width: 5px !important;
}

.Chat .js-chat-list::-webkit-scrollbar-track {
	background: #2e2e30 !important;
}

.Chat .js-chat-list::-webkit-scrollbar-thumb {
	background-color: #5a5a5d !important;
	border-radius: 6px !important;
	border: 2px solid #2e2e30 !important;
}

.Chat .js-chat-list::-webkit-scrollbar-thumb:hover {
	background-color: #76767a !important;
}

.Chat .js-chat-list {
	scrollbar-width: thin;
	scrollbar-color: #5a5a5d #2e2e30;
}

.Chat .js-chat-item {
	display: block;
	line-height: 22px;
	padding-right: 10px;
	margin: 1px 0;
	word-break: break-all; /* 한글 텍스트가 박스를 넘지 않도록 강제 줄바꿈 */
	white-space: normal; /* 공백을 무시하고 자동으로 줄바꿈 */
	overflow-wrap: break-word;
}

.Chat .js-chat-item img {
	display: inline;
	width: 19px;
	margin-right: 4px;
	vertical-align: middle;
}

.Chat .js-chat-item span {
	display: inline;
	margin-right: 10px;
	color: #aaa;
	letter-spacing: -1px;
}

.Chat .js-chat-item:hover span {
	color: #4eae2e;
}

.Chat .js-chat-item p {
	display: inline;
	padding: 0;
	margin: 0;
	text-align: justify;
	word-break: break-all;
}

.Chat .send_msg {
	display: flex;
	align-items: center;
	border-left: 5px solid #00bfff;
}

.Chat .send_msg input {
	width: 100%;
	height: 50px;
	padding: 0 10px;
	border: none;
	background-color: transparent;
	color: var(--text-color);
}

.Chat .send_msg input:focus {
	outline: none;
}

.Chat .send_msg input::placeholder,
.Chat .send_msg input:input-placeholder,
.Chat .send_msg input::placeholder,
.Chat .send_msg input:-o-placeholder,
.Chat .send_msg input::input-placeholder {
	color: #ccc;
}

.Chat .cSystem {
	display: flex;
	align-items: center;
	margin: 2px 10px 2px 0;
	padding: 8px 10px;
	min-height: 38px;
	color: #ccc;
	letter-spacing: -1px;
	border-radius: 3px;
	border: 1px solid rgb(0 0 0 / 50%);
	font-weight: 400;
}

.Chat .cInfo {
	background-color: rgb(0 0 0 / 30%);
}

.Chat .cError {
	background-color: rgb(255 0 0 / 50%);
	color: #fff;
}

.Chat .cWarning {
	background-color: rgb(255 136 0 / 50%);
	color: #fff;
}

.Chat .cMessage {
	background-color: rgb(48 202 130 / 50%);
	color: #fff;
}

.newTab {
	width: 100%;
	padding: 0;
}

.newTab .info {
	display: flex;
	align-items: center;
	height: 50px;
	border-left: 5px solid #4682b4;
	padding: 0 10px;
	border-bottom: 1px dashed #333;
}

.newTab .info .tabs {
	font-size: 16px;
	font-weight: 300;
	display: flex;
	align-items: center;
	margin: 0;
	color: #777;
}

.newTab .info h2 {
	flex: 1;
	width: 100%;
	font-size: 16px;
	font-weight: 300;
	display: flex;
	align-items: center;
	margin: 0;
	color: #fff;
}

.newTab.ranKing .info .tabs {
	margin-left: auto;
	justify-content: flex-end;
	font-size: 14px;
}

.newTab .info h2 ion-icon,
.newTab .info .tabs ion-icon {
	font-size: 20px;
	margin-right: 5px;
	color: #fff;
}

.newTab .info .tabs span {
	cursor: pointer;
}

.newTab .info .tabs .split {
	margin: 0 4px 0 6px;
	display: block;
	background-color: #666;
	width: 2px;
	height: 2px;
	border-radius: 2px;
	content: ' ';
}

.newTab .info .tabs .active {
	color: #fff;
}

.newTab .info .tabs .more {
	margin-left: auto;
	font-size: 12px;
}

.newTab .info .tabs .more a {
	display: none;
	align-items: center;
	color: #aaa;
}

.newTab .info .tabs .more a ion-icon {
	font-size: 10px;
	margin-right: 2px;
	color: #aaa;
}

.newTab .info .tabs .more a.show {
	display: flex;
}

.newTab .info .tabs .more a:hover {
	color: var(--text-hover);
}

.newTab .info .tabs .more a:hover ion-icon {
	color: var(--text-hover);
}

.newTab .container ul {
	padding: 0;
	margin: 0;
	list-style-type: none;
}

.newTab .container ul li {
	padding: 7px 0;
}

.newTab .container ul li a {
	display: flex;
	width: 100%;
}

.newTab .container ul li .profile {
	width: 35px;
	height: 35px;
	border-radius: 50%;
	margin-right: 10px;
	transition: all 0.3s ease-in-out;
}

.newTab.ranKing .container ul li .rank_icon {
	width: 28px;
	height: 28px;
	margin-right: 5px;
}

.newTab.ranKing .container ul li .rank_icon.rgray {
	opacity: 0.7;
}

.newTab.ranKing .container ul li {
	display: flex;
	width: 100%;
	align-items: center;
}

.newTab.ranKing .container ul li .level-icon {
	width: 23px;
	height: 23px;
	margin-right: 3px;
}

.newTab .container ul li:hover .profile {
	transform: rotateY(180deg);
}

.newTab .container ul li .newTabinfo {
	flex: 1;
}

.newTab .container ul li .newTabinfo .subject {
	font-size: 14px;
	width: 245px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.newTab .container ul li .newTabinfo .subject .bbs {
	color: #666;
	margin-right: 3px;
}

.newTab .container ul li .newTabinfo .nick {
	margin-top: 3px;
	color: #aaa;
	font-size: 13px;
	display: flex;
	align-items: center;
}

.newTab .container ul li .newTabinfo .nick strong {
	font-weight: 400;
	letter-spacing: -1px;
}

.newTab .container ul li .newTabinfo .nick span {
	font-size: 10px;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: blod;
	color: #aaa;
}

.newTab .container ul li .newTabinfo .nick span.split {
	margin: 0 5px 0 6px;
	display: inline-block;
	border-right: 1px solid #666;
	height: 7px;
}

.newTab .container ul li .newTabinfo .nick span.lv-name {
	font-family: var(--font-family);
	font-size: 13px;
	font-weight: blod;
}

.newTab .container ul li .newTabinfo .nick span.point {
	font-size: 13px;
	font-family: Arial, Helvetica, sans-serif;
	color: #aaa;
	letter-spacing: 0;
}

.newTab.ranKing .container ul li .newTabinfo .nick {
	color: #fff;
}

.newTab.ranKing .container ul li .newTabinfo .levelInfo {
	margin-top: 2px;
	font-size: 10px;
	font-family: Arial, Helvetica, sans-serif;
	color: #aaa;
}

.newTab .container-wrapper {
	overflow: hidden;
	width: 320px;
	position: relative;
	border-left: 5px solid #ac39de;
}

.newTab .container {
	display: flex;
	transition: transform 0.2s ease-in-out;
	width: 640px;
}

.newTab .container ul {
	list-style: none;
	margin: 0;
	padding: 10px;
	width: 320px;
}

.newTab.ranKing .info {
	border-left: 5px solid #3b4044;
}

.newTab.ranKing .container-wrapper {
	border-left: 5px solid #575a5d;
}

.nickBox {
	display: inline-flex;
	align-items: center;
}

.nickBox .profile {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	margin-right: 3px;
}

.nickBox span {
	color: #aaa;
}

#popup-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgb(255 255 255 / 5%);

	/* background-color: #18181b; */
	display: none;

	/* display: flex; */
	justify-content: center;
	align-items: center;
	z-index: 9910;
	backdrop-filter: blur(15px);
}

#popup-overlay.show {
	display: flex;
	animation: fadeIn 0.3s forwards;
}

#popup-overlay.hide {
	animation: fadeOut 0.3s forwards;
}

@keyframes fadeIn {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

@keyframes fadeOut {
	from {
		opacity: 1;
	}

	to {
		opacity: 0;
	}
}

#popup-overlay .popup-content {
	transform: translateY(-100%);
	animation: slideIn 0.3s forwards;
}

#popup-overlay.hide .popup-content {
	animation: slideOut 0.3s forwards;
}

@keyframes slideIn {
	from {
		transform: translateY(-100%);
	}

	to {
		transform: translateY(0);
	}
}

@keyframes slideOut {
	from {
		transform: translateY(0);
	}

	to {
		transform: translateY(100%);
	}
}

#login-container {
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
}

.login-container {
	display: none;
}

#login-container.show {
	display: flex;
	animation: fadeIn 0.3s forwards;
}

#login-container .login-logo {
	position: absolute;
	width: 70px;
	height: 70px;
	top: -30px;
	left: 50%;
	transform: translateX(-50%);
}

#login-container .login-close-btn {
	position: absolute;
	width: 32px;
	height: 32px;
	top: -10px;
	right: -10px;
	cursor: pointer;
	transition: transform 0.3s ease-in-out;
}

#login-container .login-close-btn:hover {
	transform: rotate(360deg);
}

#login-container .login-box {
	background-color: var(--bg-color);
	border-radius: 12px;
	padding: 50px 80px;
	width: 500px;
	text-align: center;
	box-shadow: 0 10px 30px rgb(0 0 0 / 20%);
	display: flex;
	flex-direction: column;
}

#login-container a#logo {
	display: inline-flex;
	height: auto;
	margin: 0 auto;
	opacity: 0.7;
}

#login-container h2 {
	margin: 30px 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

#login-container h2 strong {
	display: inline-flex;
	padding: 8px 0;
	border-bottom: 2px dashed #ce3e31;
	font-size: 22px;
	font-weight: 300;
}

#login-container h2 strong span {
	margin-right: 5px;
	color: #aaa;
}

#login-container .input-group {
	margin-bottom: 20px;
	text-align: left;
}

#login-container .input-group label {
	display: block;
	margin-bottom: 8px;
	color: #a0a0b2;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 11px;
	padding-left: 5px;
}

#login-container .input-group label.agree {
	display: flex;
	font-size: 13px;
	font-family: var(--font-family);
	align-items: center;
	cursor: pointer;
}

#login-container .input-group label.agree span {
	margin-left: 5px;
}

#login-container .input-group input[type='text'],
#login-container .input-group input[type='email'],
#login-container .input-group input[type='password'] {
	width: 100%;
	padding: 0 15px;
	height: 45px;
	border: none;
	border-radius: 8px;
	font-family: Verdana, Geneva, Tahoma, sans-serif;

	/* background-color: #2a2a4d; */
	background-color: #000;
	color: #fff; /* Ensure input text color is white */
	font-size: 14px;
}

#login-container .input-group input:-webkit-autofill,
#login-container .input-group input:-webkit-autofill:hover,
#login-container .input-group input:-webkit-autofill:focus,
#login-container .input-group input:-webkit-autofill:active {
	transition: background-color 5000s ease-in-out 0s;
	-webkit-transition: background-color 9999s ease-out;
	-webkit-box-shadow: 0 0 0px 1000px #000 inset !important;
	-webkit-text-fill-color: #fff !important;
}

#login-container .input-group .forgot {
	float: right;
	margin-top: 10px;
	font-size: 13px;
	color: #ccc;
	letter-spacing: -1px;
	padding-right: 5px;
}

#login-container .input-group .forgot:hover {
	color: #ce3e31;
	text-decoration: underline;
}

#login-container .btn {
	/* background-color: #7064f6; */
	background-color: #ce3e31;
	border: none;
	border-radius: 8px;
	height: 45px;
	padding: 0 12px;
	color: #fff;
	font-size: 16px;
	cursor: pointer;
	width: 100%;
	margin-top: 20px;
}

#login-container .btn:hover {
	/* background-color: #574bd9; */
	background-color: #992900;
}

#login-container .signup {
	margin: 0;
	padding: 0;
	margin-top: 40px;
	font-size: 14px;
	color: #ccc;
	letter-spacing: -1px;
}

#login-container .signup a {
	font-size: 14px;
	letter-spacing: -1px;
	margin-left: 5px;
	color: #ce3e31;
}

#login-container .signup a:hover {
	text-decoration: underline;
}

#login-container .login-footer {
	margin-top: 30px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 10px;
	color: #898989;
	text-align: center;
}

#login-container .login-footer span {
	color: #ccc;
}

.js-user-menu {
	cursor: pointer;
}
#user-menu-box {
	display: none;
}
#user-menu-box.open {
	display: block;
	z-index: 1001;
	position: fixed;
	width: 250px;
	background-color: #1e1e21;
	padding: 10px;
	box-shadow: 0 0 3px 1px rgb(0 0 0 / 45%);
	border-left: 5px solid #ff4500;
	border-radius: 15px;
}

#user-menu-box div.relative {
	position: relative;
}

#user-menu-box .js-user-menu-box_close {
	position: absolute;
	top: 5px;
	right: 5px;
}

.user-menu-box .profile {
	display: flex;
	align-items: center;
	padding: 10px 0;
}

.user-menu-box .profile img {
	margin-right: 5px;
}

.user-menu-box .division-top {
	border-top: 1px dashed #333;
	padding: 10px 0;
}

.user-menu-box ul {
	padding: 0;
	margin: 0;
}
.user-menu-box ul li {
	list-style: none;
}
.guil_add_box {
	z-index: 1002;
	position: absolute;
	width: 500px;
	height: 500px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background-color: #fff;
	border: 2px solid #ccc;
	border-radius: 5px;
}

/* ! 푸터메뉴 */

#footer-menu {
	margin-top: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 70px;
	background-color: #0f0f11;
	background-color: #141417;
}

#footer-menu .wrapper {
	align-content: center;
}

#footer-menu ul {
	display: flex;
	align-content: center;
	padding: 0;
	margin: 0;
	list-style-type: none;
}

#footer-menu ul:first-child {
	flex: 1;
}

#footer-menu ul:first-child li {
	margin-right: 10px;
}

#footer-menu li a {
	display: flex;
	align-content: center;
	font-size: 15px;
	color: #ffffff;
	line-height: 24px;
	opacity: 0.5;
	transition: opacity 0.3s ease-in-out;
}

#footer-menu li a:hover {
	opacity: 1;
}
.snsIcon {
	position: relative;
	margin-left: 3px;
	display: block;
	width: 24px;
	height: 24px;
	background-size: 18px 18px;
	background-position: center center;
	background-repeat: no-repeat;
	text-indent: -9999px;
	opacity: 0.2;
	transition: all 0.3s ease-in-out;
}
.snsIcon:hover {
	opacity: 1;
}
.snsIcon.band {
	background-image: url(/res/sns/band.svg?ic);
}

.snsIcon.blogger {
	background-image: url(/res/sns/blogger.svg?ic);
}

.snsIcon.youtube {
	background-image: url(/res/sns/youtube.svg?ic);
}

.snsIcon.instagram {
	background-image: url(/res/sns/instagram.svg?ic);
}

.snsIcon.facebook {
	background-image: url(/res/sns/facebook.svg?ic);
}

.snsIcon.reddit {
	background-image: url(/res/sns/reddit.svg?ic);
}

.snsIcon.pinterest {
	background-image: url(/res/sns/pinterest.svg?ic);
}

.snsIcon.twitter {
	background-image: url(/res/sns/twitter.svg?ic);
}

.snsIcon.tumblr {
	background-image: url(/res/sns/tumblr.svg?ic);
}

.snsIcon.medium {
	background-image: url(/res/sns/medium.svg?ic);
}

.snsIcon.behance {
	background-image: url(/res/sns/behance.svg?ic);
}

.snsIcon.quora {
	background-image: url(/res/sns/quora.svg?ic);
}

.snsIcon.livejournal {
	background-image: url(/res/sns/livejournal.svg?ic);
}

.snsIcon.naverblog {
	background-image: url(/res/sns/naverblog.svg?ic);
}

#footer-copy {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 25px 0;
	background-color: #0f0f11;
	color: #999;
}

/* 메인페이지 */

#main-post-tab {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 10px;
}

.post-tab {
	background-color: #1e1e21;
	box-shadow: 0 0 3px -1px rgb(0 0 0 / 45%);
	padding: 0 10px;
	border: 1px solid #4c5873;
    border-radius :10px
}

.post-tab h2 {
	display: flex;
	height: 50px;
	align-items: center;
	font-size: 15px;
	border-bottom: 1px dashed #333;
	padding: 0 10px;
	margin: 0;
}

.post-tab h2 span {
	font-weight: normal;
}

.post-tab h2 .more {
	margin-left: auto;
	font-size: 12px;
	font-weight: normal;
	color: #ce3e31;
	transition: all 0.2s ease-in-out;
}

.post-tab h2 .more:hover {
	color: #ccc;
}

.post-tab ul {
	list-style-type: none;
	padding: 10px 10px 10px 10px;
	margin: 0;
}

.post-tab ul li > a {
	display: flex;
	align-items: center;
	height: 30px;
}

.post-tab ul li > a em {
	font-style: normal;
}

.post-tab ul li > a em.em-title {
	min-width: 0;
	max-width: 250px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	font-size: 14px;
	transition: all 0.2s ease-in-out;
}

.post-tab ul li > a em.em-new {
	font-size: 10px;
	font-weight: bold;
	font-family: Arial, Helvetica, sans-serif;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 13px;
	height: 13px;
	border-radius: 3px;
	background-color: #ce3d31;
	color: #fff;
	margin-left: 5px;
}

.post-tab ul li > a em.em-commemt {
	color: #ffae00;
	font-size: 10px;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: bold;
}

.post-tab ul li img.bbs-type-icon {
	width: 24px;
	height: 24px;
	margin-right: 5px;
}

.post-tab ul li img.bbs-type-icon.comment {
	width: 18px;
	height: 18px;
	margin-left: 5px;
	margin-right: 3px;
}

.popup_layer {
	position: fixed;
	z-index: 99999;
}

.popup_layer img {
	display: block;
}

.popup_layer p {
	padding: 0;
	margin: 0;
}

.popup_layer .popup_layer_close {
	display: flex;
	height: 40px;
	align-items: center;
	background-color: #000;
	padding: 0 15px;
}

.popup_layer .popup_layer_close a {
	font-size: 12px;
	letter-spacing: -1px;
}

.popup_layer .popup_layer_close a.js-event-popup-close {
	margin-left: auto;
}

/* 출석체크 */

#popup-event {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgb(0 0 0 / 50%);
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 9910;
}

#popup-event .fbox {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	width: 1300px;
	min-width: 1300px;
	padding: 10px;
	gap: 10px; /* 각 팝업 사이의 간격 */
	position: relative;
}

#popup-event .event-popup-close-all {
	position: absolute;
	top: -30px;
	font-size: 12px;
	letter-spacing: -1px;
	display: flex;
	background-color: #ff4500;
	color: #fff;
	justify-content: center;
	align-items: center;
	padding: 5px 13px 5px 13px;
	letter-spacing: -1px;
	font-size: 12px;
}
.popup-event-layer {
	display: block;
	margin: 0;
	width: 300px; /* 가로 크기를 300px로 고정 */
	height: 445px;
}

.popup-event-layer-content p,
.popup-event-layer-content img {
	margin: 0;
	padding: 0;
	display: block;
}

.popup-event-layer-content img {
	width: 300px !important;
	height: 400px !important;
}

.popup-event-layer-closebox {
	background-color: #000;
	display: flex;
	padding: 10px;
}

.popup-event-layer-closebox a {
	display: flex;
	background-color: #ff4500;
	color: #fff;
	justify-content: center;
	align-items: center;
	padding: 5px 13px 5px 13px;
	letter-spacing: -1px;
	font-size: 12px;
}

.popup-event-layer-closebox a:hover {
	background-color: #b53709;
}

.popup-event-layer-closebox a.event-popup-close {
	margin-left: auto;
	background-color: #1c63bf;
}

.popup-event-layer-closebox a.event-popup-close:hover {
	background-color: #13488f;
}

.pageInfo .page-box {
	width: 100%;
	padding: 20px;
	margin: 10px 0 0 0 !important;
	background-color: #1e1e21;
	color: #eee;
	line-height: 1.6;
	font-size: 14px;
	text-align: justify;
	border: 1px solid #4c5873;
	border-radius :10px
}

.pageInfo h3 {
	padding: 0 0 10px 0;
	margin: 0 0 20px 0;
	border-bottom: 1px dashed #333;
	color: #ffd700;
	font-size: 20px;
	font-weight: 200;
	letter-spacing: -1px;
	display: flex;
	align-items: center;
}

.pageInfo h3 ion-icon {
	font-size: 20px;
	margin-right: 5px;
}

.pageInfo h4 {
	color: #00bfff;
	font-size: 18px;
	font-weight: 300;
	letter-spacing: -1px;
	display: flex;
	align-items: center;
	margin: 12px 0;
}

.pageInfo h4 ion-icon {
	font-size: 18px;
	margin-right: 5px;
}

.pageInfo h5 {
	color: #4eae2e;
	font-size: 16px;
	font-weight: 300;
	letter-spacing: -1px;
	display: flex;
	align-items: center;
	margin: 12px 0;
}

.pageInfo h5 ion-icon {
	font-size: 16px;
	margin-right: 5px;
	margin-left: 5px;
}

.pageInfo p {
	margin: 10px 0 0 15px;
	line-height: 1.6;
	font-size: 14px;
}

.pageInfo div.help {
	margin: 0;
	line-height: 1.6;
	font-size: 14px;
}
.pageInfo ul {
	margin: 10px 0 0 30px;
	padding: 0;
	list-style-type: disc;
}

.pageInfo ol {
	margin: 10px 0 0 30px;
	padding: 0;
}
.pageInfo li {
	line-height: 1.6;
	font-size: 14px;
}

#mypage nav ul {
	display: flex;
	align-items: center;
	margin: 0;
	padding: 0;
	background-color: #1e1e21;
	list-style: none;
}

#mypage nav ul li a {
	display: flex;
	height: 50px;
	padding: 0 25px;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	letter-spacing: -1px;
	font-weight: 300;
}

#mypage nav ul li a.active {
	background-color: #ce3d31;
}

#mypage nav ul li a.active:hover {
	color: #fff;
	text-decoration: underline;
}

#mypage .paper_header {
	margin-top: 10px;
	background-color: #1e1e21;
	padding: 15px 20px;
}

#mypage .paper_header ul {
	display: flex;
	align-items: center;
	margin: 0;
	padding: 0;
	list-style: none;
}

#mypage .paper_header ul a {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	letter-spacing: -1px;
	font-weight: 300;
	margin-right: 15px;
}

#mypage .paper_header ul a.active {
	color: var(--text-hover);
}

#mypage .content {
	margin-top: 10px;
	background-color: #1e1e21;
	padding: 30px 20px;
}

#mypage .content .flex {
	align-items: center;
}

#mypage .content .flex.mt20 {
	margin-top: 20px;
}

#mypage .content .flex .profile {
	width: 100px;
	border-radius: 50px;
}

#mypage .content .flex .lv-text {
	margin: 7px 0 2px 2px;
	font-size: 9px;
	font-family: Arial, Helvetica, sans-serif;
	color: #aaa;
}

#mypage .content .flex .lv-text .split {
	margin: 0 6px 0 5px;
	display: inline-block;
	border-right: 1px solid #666;
	height: 7px;
}

#mypage .content .flex .lv-bar {
	margin-top: 5px;
	width: 300px;
}

#mypage .content .flex .lv-bar .progress {
	padding: 2px;
	border-radius: 3px;
	background: rgb(0 0 0 / 25%);
	box-shadow:
		inset 0 1px 2px rgb(0 0 0 / 25%),
		0 1px rgb(255 255 255 / 8%);
}

#mypage .content .flex .progress-bar {
	height: 3px;
	border-radius: 2px;
	transition: width 0.4s linear;
}

#mypage .content .flex .progress-moved .progress-bar {
	background-color: #ce3d31;
	animation: progressAnimation 1s;
}

#mypage .content .flex .lv-next {
	margin-top: 10px;
}

#mypage .content .flex .key {
	width: 100px;
	color: #888;
}

#mypage .content .flex .val {
	flex: 1;
	padding: 0 30px;
	border-left: 1px solid #303032;
	border-right: 1px solid #303032;
}

#mypage .content .flex .btn {
	padding-left: 20px;
	width: 100px;
	display: flex;
	align-items: center;
	justify-content: center;
}

#mypage .content .flex .btn a {
	display: flex;
	padding: 7px 12px;
	background-color: #ce3d31;
	border: 1px solid rgba(0, 0, 0, 0.3);
	color: #fff;
	border-radius: 3px;
}

#mypage .search-box {
	margin-top: 10px;
	background-color: #1e1e21;
	padding: 15px 20px;
}

@media screen and (max-width: 600px) {
	#mypage .content .flex {
		display: block;
	}

	#mypage .content .flex .key {
		width: 100%;
		padding: 10px;
	}

	#mypage .content .flex .val {
		flex: 1;
		width: 100%;
		padding: 10px;
		border: none;
	}

	#mypage .content .flex .btn {
		width: 100%;
		padding: 10px;
		border: none;
		justify-content: flex-start;
	}
	#mypage .sl-list .sl-null,
	#mypage .sl-list .message {
		flex: 1;
		width: 100%;
	}
}

#mypage .search-box select,
#mypage .search-box input[type='date'] {
	width: 80px;
	height: 40px;
	background-color: rgb(0 0 0 / 40%);
	border: 1px solid rgb(0 0 0 / 40%);
	color: var(--sl-color-white);
	padding: 0 15px;
	border-radius: 3px;
	color: #fff;
}

#mypage .search-box input[type='date'] {
	width: 150px;
}

#mypage .search-box input[type='date']::-webkit-calendar-picker-indicator {
	filter: invert(1); /* 흰색으로 변환 */
}

#mypage .search-box input[type='submit'] {
	background-color: #ce3d31;
	height: 38px;
	padding: 0 20px;
	border: 1px solid rgba(0, 0, 0, 0.3);
	color: #fff;
	border-radius: 3px;
	cursor: pointer;
}

#mypage .search-box a {
	display: inline-flex;
	height: 38px;
	padding: 0 20px;
	background-color: #436c9a;
	border: 1px solid rgba(0, 0, 0, 0.3);
	color: #fff;
	border-radius: 3px;
	cursor: pointer;
	justify-content: center;
	align-items: center;
}

#mypage .p-view {
	margin-top: 10px;
	background-color: #1e1e21;
	padding: 15px 20px;
}

#mypage .p-view.content {
	padding: 30px 20px;
}

#mypage .p-view.btn {
	padding: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
}

#mypage .p-view.btn a {
	display: flex;
	flex: 1;
	padding: 7px 12px;
	background-color: #ce3d31;
	border: 1px solid rgba(0, 0, 0, 0.3);
	color: #fff;
	border-radius: 3px;
	margin: 0 5px;
	justify-content: center;
	align-items: center;
	height: 40px;
}

#mypage .p-view.btn a:nth-child(1) {
	background-color: #13488f;
}

#mypage .p-view.btn a:nth-child(3) {
	background-color: #0c7e1b;
}

#mypage .p-write {
	margin-top: 10px;
	background-color: #1e1e21;
	padding: 15px 20px;
}

#mypage .p-write input[type='text'] {
	height: 40px;
	background-color: rgb(0 0 0 / 40%);
	border: 1px solid rgb(0 0 0 / 40%);
	color: var(--sl-color-white);
	padding: 0 15px;
	border-radius: 3px;
	color: #fff;
	margin-bottom: 10px;
}

#mypage .p-write textarea {
	background-color: rgb(0 0 0 / 40%);
	border: 1px solid rgb(0 0 0 / 40%);
	color: var(--sl-color-white);
	padding: 15px;
	border-radius: 3px;
	width: 100%;
	height: 230px;
	resize: none;
	margin-bottom: 10px;
}

#mypage .p-write input[type='submit'] {
	background-color: #ce3d31;
	height: 38px;
	padding: 0 20px;
	border: 1px solid rgba(0, 0, 0, 0.3);
	color: #fff;
	border-radius: 3px;
	cursor: pointer;
}

#mypage .p-write .info {
	margin-top: 10px;
}

#mypage .sl-list {
	margin-top: 10px;
}

#mypage .sl-list .sl-list-type li {
	border-top: var(--sl-border-dashed);
	border-bottom: none;
}

#mypage .sl-list .sl-list-type li:first-child {
	border-top: none;
}

#mypage .sl-list .board-name {
	width: 100px;
	justify-content: flex-start;
}

#mypage .sl-list .message {
	flex: 1;
}

#mypage .sl-list .message.paper {
	justify-content: flex-start;
}

#mypage .sl-list .point {
	width: 150px;
	font-size: 13px;
}

#mypage .sl-list .sl-flex-item {
	padding: 5px 0;
}

#mypage .sl-pagenate {
	margin-top: 10px;
}

#edit-popup {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100vh;
}

#edit-popup .content {
	background-color: #1e1e21;
	padding: 30px;
}

#edit-popup .profile {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 20px;
	list-style: none;
	margin: 0;
	padding: 0;
}

#edit-popup .profile li img {
	width: 150px;
}

#edit-popup .profile li .text {
	padding: 10px 0;
	text-align: center;
	color: #ccc;
}

#edit-popup .edit-button {
	padding: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 10px;
}

#edit-popup .edit-button.profile {
	margin-top: 30px;
}

#edit-popup .edit-button input[type='submit'] {
	display: flex;
	flex: 1;
	height: 50px;
	background-color: #ce3d31;
	border: 1px solid rgba(0, 0, 0, 0.3);
	color: #fff;
	border-radius: 3px;
	cursor: pointer;
}

#edit-popup .edit-button a {
	display: flex;
	width: 80px;
	height: 50px;
	background-color: #436c9a;
	border: 1px solid rgba(0, 0, 0, 0.3);
	color: #fff;
	border-radius: 3px;
	cursor: pointer;
	justify-content: center;
	align-items: center;
	margin-left: 5px;
}

#edit-popup .nick-help {
	line-height: 1.5;
	color: #ccc;
}

#edit-popup .input-box {
	padding: 10px 0 0 0;
}

#edit-popup .input-box input {
	width: 100%;
	height: 40px;
	background-color: rgb(0 0 0 / 40%);
	border: 1px solid rgb(0 0 0 / 40%);
	color: var(--sl-color-white);
	padding: 0 15px;
	border-radius: 3px;
}

#edit-popup .input-pin {
	padding: 15px 0 5px 0;
	display: flex;
	align-items: center;
}

#edit-popup .edit-button input[type='submit'] {
	display: flex;
	flex: 1;
	height: 50px;
	background-color: #ce3d31;
	border: 1px solid rgba(0, 0, 0, 0.3);
	color: #fff;
	border-radius: 3px;
	cursor: pointer;
}

#edit-popup .edit-button a {
	display: flex;
	width: 80px;
	height: 50px;
	background-color: #436c9a;
	border: 1px solid rgba(0, 0, 0, 0.3);
	color: #fff;
	border-radius: 3px;
	cursor: pointer;
	justify-content: center;
	align-items: center;
	margin-left: 5px;
}

#edit-popup h1 {
	font-size: 22px;
	font-weight: 400;
	margin-top: 0;
	padding-top: 0;
	margin-bottom: 10px;
}

#siteInfo {
	margin-top: 10px;
	letter-spacing: -1px;
}

#siteInfo strong {
	color: #fff;
	font-weight: 400;
}

#siteInfo u {
	color: #ffd701;
	text-decoration: none;
	font-style: normal;
}

#siteInfo .page-box {
	background-color: #1e1e21;
	box-shadow: 0 0 3px -1px rgb(0 0 0 / 45%);
	padding: 20px;
	color: #bbb;
	font-size: 14px;
	border: 1px solid #4c5873;
	border-radius :10px
}

#siteInfo .page-box h2 {
	padding: 0;
	margin: 0;
	font-size: 22px;
	font-weight: 200;
	color: #df2729;
}

#siteInfo .page-box .flex {
	height: 100%;
	align-items: flex-start;
	justify-content: flex-start;
	margin-top: 10px;
}

#siteInfo .page-box .flex .logoimg {
	margin-top: 3px;
	width: 60px;
	height: 60px;
	margin-right: 10px;
}

#siteInfo .page-box .flex .logoimg img {
	width: 100%;
}

#siteInfo .page-box .flex p {
	flex: 1;
	margin: 0;
}

#siteInfo .page-box p {
	line-height: 1.6;
	margin: 10px 0 0 0;
	padding: 0;
	text-align: justify;
}

#siteInfo .page-box h3 {
	padding: 0;
	margin: 0;
	font-size: 22px;
	font-weight: 200;
	color: #74eb4c;
}

#siteInfo .page-box .photo {
	margin-top: 15px;
	margin-bottom: 15px;
	width: 330px;
}

#siteInfo .page-box .photo img {
	width: 100%;
	display: block;
}

#siteInfo .grid-box {
	margin-top: 10px;
	display: grid;
	grid-template-columns: repeat(2, 1fr); /* 가로 2개로 균등 분할 */
	gap: 10px; /* 요소 간 간격 10px */
}

#siteInfo .grid-box a.cta-button {
	display: inline-block;
	padding: 10px 20px;
	margin-top: 15px;
	background-color: #515151;
	color: #ffffff;
	font-size: 14px;
	text-align: center;
	text-decoration: none;
	border-radius: 3px;
	transition: background-color 0.3s ease;
}

#siteInfo .grid-box a.cta-button:hover {
	background-color: #74eb4c;
	color: #000;
}

#faq {
	background-color: #1e1e21;
	box-shadow: 0 0 3px -1px rgb(0 0 0 / 45%);
	padding: 20px;
	color: #bbb;
	font-size: 14px;
	margin-top: 10px;
	border: 1px solid #4c5873;
	border-radius :10px
}

#faq h2 {
	padding: 0;
	margin: 0;
	font-size: 20px;
	font-weight: 200;
	color: #ffffff;
	margin-bottom: 20px;
}

#faq > div {
	background-color: #18181b;
	border-radius: 3px;
	padding: 15px;
	margin-bottom: 10px;
}

#faq > div h3 {
	padding: 0;
	margin: 0;
	font-size: 18px;
	font-weight: 200;
	color: #ff8c00;
}

#faq > div p {
	line-height: 1.6;
	margin: 10px 0 0 0;
	padding: 0;
	text-align: justify;
}

@media screen and (max-width: 600px) {
	#siteInfo .grid-box {
		grid-template-columns: repeat(1, 1fr);
	}

	#siteInfo .page-box .photo {
		width: 100%;
	}

	#siteInfo .grid-box a.cta-button {
		padding: 15px 30px;
		font-size: 17px;
	}
}
