@charset "utf-8";
@import url('https://cdn.rawgit.com/moonspam/NanumSquare/master/nanumsquare.css');
@import url('color.css');

@font-face {
    font-family: 'Cafe24Ohsquare';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/Cafe24Ohsquare.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Pretendard-Regular';
    src: url('https://fastly.jsdelivr.net/gh/Project-Noonnu/noonfonts_2107@1.1/Pretendard-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Chosunilbo_myungjo';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_one@1.0/Chosunilbo_myungjo.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'ChosunSm';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_20-04@1.1/ChosunSm.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'ChosunGu';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_20-04@1.0/ChosunGu.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}


/* =============================== */
/*	카테고리	*/
/* =============================== */

ul.upcategories {
    display: flex;
    gap: 3px;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
}

a.upcate {
    background: var(--color-bg);
    padding: 2px 15px;
    border-radius: 20px;
    border: 1px solid var(--color-border);
    font-size: 12px;
    font-family: 'Pretendard-Regular';
    color: var(--color-text);
    display: flex;
    align-items: center;
    justify-content: center;
}

a.upcate.point {
    background: var(--color-accent);
    color: var(--color-bg);
}

/* =============================== */
/*	해시태그	*/
/* =============================== */

.thumb-hashtag {
    display: inline-block;
    padding: 0px 10px;
    font-size: 11px !important;
    font-family: 'Pretendard-Regular' !important;
    color: var(--color-accent);
    background: var(--color-ttext);
    border-radius: 20px;
    text-decoration: none;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 1);
    transition: background 0.3s ease, box-shadow 0.3s ease;
}

.thumb-hashtag:hover {
    background: var(--color-accent);
    color: var(--color-card);
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.3);
}

/* =============================== */
/*	비디오 출력 크기	*/
/* =============================== */

.video-wrapper {
    position: relative;
    padding-bottom: 56.25%; /* 16:9 비율 */
    height: 0;
    overflow: hidden;
    max-width: 100%;
    margin: 5px 0px;
}

.video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* =============================== */
/*	상단 검색창 & 글쓰기 영역	*/
/* =============================== */

.thumb-guide {
    display: flex;
    justify-content: space-between;
	margin: 0px 0px 15px;
}

.thumb-sch-input {
	width: 200px;
}

.thumb-ui-btn {
    display: flex;
    gap: 2px;
}

.thumb-btn {
    text-align: center;
    color: var(--color-text);
    border-radius: 8px;
    width: 50px;
    height: 25px;
    line-height: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.thumb-btn.ui {
    background: var(--color-card);
    border: 1px solid var(--color-border);
}

.thumb-btn.ui.write {
    border: 1.5px groove var(--color-accent)
}
.thumb-btn.ui:hover {
    background: linear-gradient(45deg, rgba(121, 121, 121, 1) 35%, rgba(199, 199, 199, 1) 100%);
    border: 1.5px groove var(--color-card);
    color: var(--color-card);
}

.thumb-btn.admin {
    background: var(--color-card);
    border: 1px solid var(--color-comment-bg);
}

.thumb-btn.admin:hover {
    background: linear-gradient(45deg, rgba(193,193,193,1) 61%, rgba(255,255,255,1) 100%);
    border: 1px solid var(--color-card);
}

.thumb-btn.ui.sch {
    height: 30px;
}

.thumb-sch-input, .thumb-sch-select {
    border-radius: 10px;
    height: 27px !important;
}

/* =============================== */
/*	하단 체크박스 & 선택 삭제	*/
/* =============================== */

.thumb-chk-option {
	display: flex;
	gap: 2px;
}

.chk_all {
    height: 28px;
    line-height: 25px;
    margin-bottom: 5px;
    color: var(--color-text);
    background: var(--color-card);
    border: 1px inset #666 !important;
    border-radius: 10px !important;
    width: 28px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

.select-trash-btn {
	height: 30px;
    line-height: 25px;
    margin-bottom: 5px;
    color: var(--color-text);
    background: var(--color-card);
    border: 1px inset #666 !important;
    border-radius: 10px !important;
    width: 30px;
}

.select-trash-btn:hover {
    background: linear-gradient(45deg, rgba(121, 121, 121, 1) 35%, rgba(199, 199, 199, 1) 100%);
    border: 1.5px inset var(--color-card);
    color: var(--color-card);
}

.pg_wrap .pg_page {
    background: var(--color-card) !important;
    color: var(--color-text) !important;
    font-family: 'Pretendard-Regular' !important;
    border: 1.5px groove !important;
    border-radius: 10px !important;
    text-align: center !important;
    vertical-align: middle !important;
    padding: 0 5px !important;
    font-size: 13px !important;
}

strong.pg_current.pg_page {
	background: var(--color-ttext) !important;
    color: var(--color-accent) !important;
	border-color: var(--color-accent) !important;
}

/* =============================== */
/*	리스트	*/
/* =============================== */

/* 갤러리 리스트 */
#bo_gall {
  max-width: 100%;
  margin: 0 auto;
  padding: 10px;

}

.gall_row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  list-style: none;
  padding: 0;
  margin: 0;
}

/* 이미지 박스: 부모 .gall_li 전체를 채움 */
.gall_box {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: #dadada;   /* 배경 색상 */
  background-size: cover;
  background-position: center;
  transition: transform 0.3s ease;
}

/* 이미지 호버 시 확대 */
.gall_li:hover .gall_box {
  transform: scale(1.05);
}

/* 체크박스: 왼쪽 상단에 겹치도록 */
.gall_chk {
  position: absolute;
  top: 5px;
  left: 5px;
  z-index: 10;
  padding: 5px;
}

/* 이미지가 없을 때(no-img) - 중앙에 큰 텍스트 */
.gall_box.no-img {
  display: flex;
  align-items: center;
  justify-content: center;
  /* background: transparent; 배경 투명 */
}

.no-img-title {
  display: inline-block;
  font-size: 2em;
  text-align: center;
  transform: scale(3);
  transform-origin: center;
  color: var(--color-ttext);
  font-family: 'Cafe24Ohsquare';
}


/* 정보 오버레이: 아래쪽에 겹치도록 */
.info_overlay {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  padding: 10px;
  background: var(--color-ov);
  color: var(--color-text);
  z-index: 10;
}

.info_overlay:hover {
  background: var(--color-ov-hover);
  color: var(--color-text-hover);
}

.info_overlay .info span.name {
    flex: 1;
    color: var(--color-accent);
}

.cate {
    font-family: 'Pretendard-Regular';
    background: var(--color-comment-bg);
    color: var(--color-text);
    margin: 0 auto;
    margin-top: 30px;
    border-radius: 10px;
    font-size: 10px;
    padding: 0px 6px;
    text-align: center;
    width: fit-content;
}

.ov-subject {
	font-family: 'Pretendard-Regular';
	font-size: 1.4em;
	font-weight: 700;
	margin-left: 5px;
    margin-top: 2px;
}

.info {
    font-family: 'Pretendard-Regular';
    font-size: 1.0em;
    font-weight: 300;
    display: flex;
    justify-content: space-between;
    margin-left: 5px;
}

.info .like_area {
    display: flex;
    align-items: center;
    gap: 2px;
}

.info .like_area .like_btn {
    padding: 0px 1px;
    font-size: 10px;
}



/* =============================== */
/*	뷰 스킨	*/
/* =============================== */


.thumb-theme-box {
    display: block;
    position: relative;
    padding: 50px;
    box-sizing: border-box;
    background: var(--color-card);
    border: 1px solid var(--color-border);
    border-radius: 15px;
}

.thumb-maintitle {
    font-family: 'Pretendard-Regular';
    font-size: 40px;
    font-weight: 700;
    padding: 10px;
	text-align: center;
	line-height: 50px;
}

.thumb-subtitle {
    font-family: 'Pretendard-Regular';
    background: var(--color-ttext);
    color: var(--color-accent);
    width: fit-content;
    margin: 0 auto;
    margin-top: 10px;
    padding: 2px 13px;
    border-radius: 10px;
}


.thumb-info {
    display: flex;
    flex-direction: row;
    justify-content: center;
	font-family: 'Pretendard-Regular';
	font-size: 13px;
	font-weight: 300;
	gap: 5px;
}

.content-box {
	padding: 0px 50px;
	font-size: 13px;
	line-height: 1.7;
}

.content_area {
	color: var(--color-text);
}

.hr-line {
	display: block;
    border: 0px;
    border-top: 1px solid;
    width: 50%;
    margin: 0 auto;
    margin-top: 50px;
	margin-bottom: 50px;
    border-image: linear-gradient(to right, var(--color-card) 10%, #888888 50%, var(--color-card) 90%);
    border-image-slice: 1;
}

.thumbnail-box {
    display: flex;
    justify-content: center;
    margin: 60px 0px 20px 0px;
}

.thumbnail {
    width: 60%;
    margin: 20px;
    height: 200px;
    background-size: 110%;
    background-repeat: no-repeat;
    background-position-x: center;
    background-position-y: 40%;
    border-radius: 20px;
    box-shadow: 1px 1px 10px 5px rgb(56 56 56 / 70%);
}

.images-area {
    margin: 30px;
}

.content_area {
    margin: 20px;
}

.view-option {
    display: flex;
    justify-content: space-between;
}

.linkcopyload_btn, a.ui-btn.new_win {
    background: var(--color-comment-bg);
    color: #eeeeee;
    border-radius: 10px;
    border: 1px solid #666;
    padding: 9px 14px;
    margin-left: 3px;
    font-size: 10px;
    line-height: 10px;
    height: 30px;
	font-family: 'Pretendard-Regular';
}


/* 좋아요 영역 */
.view-option .like_area {
    display: flex;
    align-items: center;
    gap: 5px;
    justify-content: flex-end;
    flex: 1;
}

.view-option .like_area .like_number {
    border: ridge;
    border-color: rgb(86 86 86);
    border-radius: 6px;
    padding: 3px 13px;
    color: var(--color-text);
    background: linear-gradient(40deg, rgba(25, 25, 25, 1) 8%, rgba(82, 82, 82, 1) 100%);
}

.view-option .like_area .like_btn {
    display: flex;
    align-items: center;
    font-size: 24px;           /* 하트 크기 조절 */
    color: #aa0000;            /* 기본 빨간색 */
    cursor: pointer;
    transition: transform 0.2s ease; /* 부드러운 애니메이션 효과 */
}

/* 좋아요 버튼이 활성화되면 애니메이션과 색상 변경 적용 */
.like_btn.active {
    animation: likebtn 0.3s linear forwards;
    color: #db0000;
}

@keyframes likebtn {
    0% { transform: scale(0.2); }
    40% { transform: scale(1.2); }
    100% { transform: scale(1); }
}



/* =============================== */
/*	댓글	*/
/* =============================== */

.comment_area {
    margin-top: 100px;
}

.board-comment-form {
    display: flex;
    gap: 10px;
    margin: 10px 0px;
}

.board-comment-list {
    font-family: 'Pretendard-Regular';
	color: var(--color-text);
	background: var(--color-comment-bg) !important;
    padding: 15px !important;
}

.co-group {
    display: flex;
    align-items: center;
}

.co-user {
    display: flex;
    gap: 5px;
}

.co-name {
    font-size: 13px;
    font-weight: bold;
}

.co-inner {
    padding: 5px;
}

.co-time {
    color: var(--color-accent);
    line-height: 20px;
}

.co-info {
    display: flex;
    justify-content: flex-end;
    gap: 5px;
}

.co-info a {
    color: var(--color-border) !important;
}

.co-inner {
    padding: 5px;
}

.co-time {
    color: var(--color-accent);
    line-height: 20px;
}

.c-submit {
	display: flex;
	flex-direction: column;
    gap: 5px;
	width: 80px;
}

.c-secret {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    gap: 6px;
    color: var(--color-text) !important;
    background: var(--color-card) !important;
    border: 1px inset #666 !important;
    font-size: 15px !important;
    font-family: 'Pretendard-Regular' !important;
    font-weight: bold !important;
    border-radius: 10px !important;
    height: 30px !important;
}

.board-comment-form .c-submit .btn_confirm button#btn_submit {
    color: var(--color-text) !important;
    background: var(--color-card) !important;
    border: 1px inset #666 !important;
    font-size: 12px !important;
    font-family: 'Pretendard-Regular' !important;
    font-weight: bold !important;
    border-radius: 10px !important;
    height: 65px !important;
	width: 100% !important;
}

.bo_v_bot {
    display: flex;
    justify-content: center;
}
.bo_v_com {
    display: flex;
    justify-content: flex-end;
    height: 80px;
    width: 900px;
    align-items: center;
    gap: 2px;
}
.bo_v_com .ui-btn {
    color: var(--color-text) !important;
    background: var(--color-comment-bg) !important;
    border: 1px inset #666 !important;
    font-size: 12px !important;
    font-family: 'Pretendard-Regular' !important;
    border-radius: 10px !important;
    height: 45px !important;
    width: 60px !important;
    line-height: 43px;
}

::-webkit-scrollbar {
  display: none;
}

