@charset "utf-8";

:root {
    /* 기존 'Pretendard' 고정을 지우고, 부모 에디션(ra0)의 폰트를 상속받도록 수정 */
    --thread-font : inherit; 
    /* --thread-font : var(--lt-font, inherit); */
}

.board-notice	{ width: 264px; padding: 10px; margin: 0 auto; text-align: center; box-sizing: border-box; font-family: var(--thread-font);}

.bo_fx {position:relative;padding:10px 0;}
.bo_fx .chk_all{ position:absolute;left:5px;top:10px;}

@media all and (max-width: 640px) {
#bo_v_con * {max-width:100%;}

	.bo_fx	{
		display: block;
		width: 100%;
		box-sizing: border-box;
		padding: 20px 10px !important;
	}
}

.board-write	{  padding: 15px 10px; }

.board-write h3	{
	font-size: 26px;
	text-align: center;
	padding: 30px 0 20px;
} 
.board-write .write-notice	{
	padding: 10px;
	font-size: 11px;
}
.board-write > dl {position:relative;}
.board-write > dl > dt { width:70px;position:absolute;line-height:32px;text-align:center; }
.board-write > dl > dd { width:100%;margin-left:0;padding-left:80px;box-sizing:border-box;line-height:32px;}
.board-write input.frm_input.full	{ width: 100%; display:block;margin:1px 0;}

#bo_v_bot	{ padding: 20px 0; overflow: hidden; border: none !important;}
.bo_v_nb	{ float: left; }
.bo_v_com	{ float: right; }

#navi_category { text-align: center; padding: 5px 0; }
#navi_category li { display: inline-block; padding: 0 20px; }

.board-skin-basic {max-width:800px; margin: 0 auto;}
.board-skin-basic:has(.type_list) {max-width: none;}
.txt-point,
.thread_admin a {color:var(--lt-color-point) !important}
.theme-box .ui-btn.point {background: var(--lt-color-point); border-color: var(--lt-color-point);}
.thread_admin a {margin-left: 5px;}
.frm_info {line-height: 1.4;}

.td_chk {position: absolute; top: 5px; right: 5px; z-index: 1;}

/* 타래 작성 영역 */
.thread_btn {margin-bottom: 20px; text-align: right;}
.thread_write {display: none;}

.board-write {border-radius: 20px;}
#preview {display: flex;gap: 10px;}
.preview-container {position: relative;display: inline-block;}
.preview-img {width: 100px;height: 100px;object-fit: cover;border: 1px solid #ddd;}
.remove-btn {position: absolute;top: 5px;right: 5px;background: red;color: white;border: none;border-radius: 50%;width: 20px;height: 20px;text-align: center;line-height: 20px;cursor: pointer;font-size: 14px;}
#upload-btn {font-size: 20px;}
#wr_content::-webkit-scrollbar {display: none;}
.preview-container {margin-bottom: 10px;}

/* 공지, 분류 (배경 투명화 및 부모 에디션 컬러 반영) */
.thread_cate {display: inline-block; margin-bottom: 5px; background: transparent !important; border-radius: 5px; padding: 5px 10px 5px 0; color: var(--lt-color-point) !important; font-weight: bold;}
.thread_notice {display: inline-block; margin-bottom: 5px; font-weight: bold; border-radius: 5px; padding: 4px 9px; border: 1px solid var(--lt-color-point); color: var(--lt-color-point); margin-right: 5px;}

/* 타래 영역 */
.thread_admin {position: absolute; top: 10px; right: 30px;}

.thread_wrap {margin-top:20px;}
.thread_wrap .list_title {box-sizing: border-box;}
.thread_wrap .thread-box {margin-bottom: 10px; padding: 20px 30px; border-radius: 20px; font-size: 14px; font-family: var(--thread-font);}
.thread_wrap .thread-box:last-child {margin: 0;}
.thread_wrap .thread-box > .thread_wr {position: relative;}
.thread_wrap .thread-box .thread_info {margin-bottom: 10px;}
.thread_wrap .thread-box .name {margin-right: 5px; font-weight: bold; font-size: 1.2em;}
.thread_wrap .thread-box .date {display: none !important;} /* 본문 작성날짜 숨기기 */
.thread_wrap .thread-box .thread_title {margin-bottom: 10px; font-size: 1.2em;}
.thread_content {line-height: 1.5;}
.thread_content details {display: inline-block; width: 100%;}
.thread_content details summary {font-weight: bold;}

/* [PC 버전] 이미지 영역 (리뷰 스킨 전용: 세로 포스터 비율 유지) */
.thread_wrap .thread-box .img_box_wrap {
    display: flex !important; 
    flex-wrap: wrap !important; 
    gap: 12px !important; 
    margin-bottom: 10px; 
    height: auto !important;
}

/* 이미지 개수와 상관없이 세로 높이를 고정하고 가로 폭을 비율에 맞춤 */
.thread_wrap .thread-box .img_box_wrap .img_box,
.thread_wrap .thread-box .img_box_wrap[class*="img_box_"] .img_box {
    border-radius: 10px; 
    overflow: hidden; 
    height: 340px !important;   
    width: auto !important;     
    max-width: 100% !important; 
}

/* 이미지 자체도 찌그러짐 없이 원본 비율대로 출력 */
.thread_wrap .thread-box .img_box_wrap img {
    width: auto !important; 
    height: 100% !important; 
    object-fit: contain !important; 
}

/* 💡 [모바일 반응형 개별 최적화] 스마트폰 화면(768px 이하) 대응 */
@media (max-width: 768px) {
    .thread_wrap .thread-box .img_box_wrap {
        gap: 8px !important; 
    }

    /* 1. 첫 번째 이미지 박스: 독점 라인을 확보하되 기존 포스터 감각 유지 */
    .thread_wrap .thread-box .img_box_wrap .img_box:first-child {
        width: 100% !important;       
        height: 320px !important;      
        display: flex !important;
        justify-content: flex-start !important; 
    }
    .thread_wrap .thread-box .img_box_wrap .img_box:first-child img {
        width: auto !important;
        height: 100% !important;
        object-fit: contain !important; 
    }

    /* 2. 두 번째 이미지 박스부터: 대폭 축소하여 첫 번째 이미지 바로 밑에 가로 정렬 */
    .thread_wrap .thread-box .img_box_wrap .img_box:not(:first-child) {
        width: calc(33.333% - 6px) !important; 
        height: 80px !important;               
        border-radius: 6px !important;         
    }
    .thread_wrap .thread-box .img_box_wrap .img_box:not(:first-child) img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;          
    }
}

/* 스포일러 처리 */
.thread_main {position: relative;}
.thread_main.spoiler {filter: blur(15px) grayscale(1); opacity:0.5; margin: 30px 0;}
.spoiler_sec {position: absolute;top: 0;left: 0;width: 100%;height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; pointer-events: none; z-index: 1;}
.spoiler_sec p {color: #fff; font-size: 17px; text-shadow: 0 0 3px black, 0 0 3px black;}
.spoiler_sec button {margin-top: 5px; background: #000; border: 1px solid rgba(255,255,255,0.5); border-radius: 10px; padding: 5px 15px; color: #fff; pointer-events: all;}

/* 비밀글 */
.pass-form form {display: flex; gap: 5px; margin-top: 5px;}

/* 답글 */
.thread_bottom {margin-top: 10px;}
.thread_bottom button {border: none; background:none; font-size: 14px;}

.thread_co_wrap {padding-left: 20px;border-left: 2px solid var(--lt-color-point); margin-top: 15px;}
.thread_co_wrap, .thread_co {position: relative;}
.thread_co {margin-top:20px;}
.thread_co .thread_admin {top: 0; right: 0;}
.thread_co_wrap a {color: var(--lt-color-point);}

/* 이미지 확대보기 */
.thread_img_full {position: fixed; top: 0; left: 0; display: none; align-items: center; justify-content: center; width: 100%; height: 100%; background: rgba(0,0,0,0.8); z-index: 1000;}
.thread_img_full .thread_img_wrap {max-height: 100%;}
.thread_img_full .thread_img_wrap img {max-height: 100vh;}
.thread_img_full .thread_img_close {position: absolute; top: 20px; right: 20px; font-size: 32px; border: none; background: none; color: #fff;}

/* 좋아요 */
.wr_good {margin-top: 10px; opacity: 0.5;}
.wr_good a {display: inline-flex; align-items: center; justify-content: center; border: none; background: none; padding-top: 2px; width: 20px; height: 20px; border: 1px solid var(--lt-font-color); border-radius: 50px; font-size: 12px; color: inherit; box-sizing: border-box;}
.wr_good.is_good {opacity: 1;}
.wr_good.is_good a {color: #fff; background: crimson; border-color: crimson;}
.wr_good.is_good span {color: crimson;}

/* 목록형 */
.type_list {
    display: grid; 
    grid-template-columns: repeat(5, 1fr); 
    gap: 10px;                             
    padding: 10px 0; 
    max-width: 900px;                      
    margin: 0 auto;
    font-family: var(--thread-font);
}
.type_list > .list-box {
    position: relative; 
    width: 100%;                           
}
.type_list > .list-box .list_thumb {
    width: 100%; 
    height: auto; 
    aspect-ratio: 1 / 1.6;                 
    transition: all 0.3s;
}
.type_list > .list-box .list_thumb img {width: 100%; height: 100%; object-fit: cover;}
.type_list > .list-box .list_thumb.no_img {display: flex; align-items: center; justify-content: center; font-size: 30px; background: rgba(255,255,255,0.5);}
.type_list > .list-box > a {display: block; position: relative; border-radius: 15px; overflow: hidden; box-shadow:0 0 6px rgba(0,0,0,0.2)}
.type_list > .list-box > a:hover .list_thumb {transform: scale(1.05);}
.type_list > .list-box .list_title {position: absolute; bottom: 0px; left: 0; padding: 70px 15px 15px; width: 100%; font-size: 18px; color: #fff; background: linear-gradient(0deg, #000, transparent); font-weight: bold; line-height: 1.3;}
.type_list > .list-box .list_title span {display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;}

/* 태블릿 반응형 (1024px 이하) */
@media (max-width: 1024px) {
    .type_list {
        grid-template-columns: repeat(3, 1fr) !important; 
        padding: 0 10px !important;
        max-width: 100% !important;
    }
}

/* 모바일 반응형 (600px 이하) */
@media (max-width: 600px) {
    .type_list {
        grid-template-columns: repeat(2, 1fr) !important; 
        padding: 0 !important; 
    }
}

/* 답글 스타일 */
.thread_reply {position: absolute; bottom: 0; right: 0;}
.thread_reply button {border: none;background: none;font-size: 14px;}
.board-comment-write {display: none;}
.board-comment-form {display: flex; flex-wrap: wrap; justify-content: space-between; gap: 5px; margin-top: 5px;}
.board-comment-form textarea {border: 1px solid var(--lt-color-point); width: 100%;}
.board-comment-list {margin-top: 10px;}
.board-comment-list .item {border: 1px dashed var(--lt-color-point); padding: 10px; border-radius: 5px;}
.board-comment-list .item + .item {margin-top: 5px;}
.co_head_wrap {display: flex; gap: 5px; align-items: center;}
.co_head_wrap .co-name {font-weight: bold;}
.co_head_wrap .co-info {display: none !important;} /* 댓글 작성날짜 숨기기 */

/* 라공 에디션 추가 */
.ui-btn {display: inline-block;}
.txt-right {text-align: right;}
#bo_sch {margin-top: 20px;}

/* 유튜브 반응형 */
.video-wrap { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; margin: 10px 0; }
.video-wrap iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/* 트위터 간격 */
.twitter-tweet { margin: 10px auto; }