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

/*****************/
/* 요소 */
/*****************/

.form-input,
input[type="text"],
input[type="pass"],
input[type="file"],
input[type="url"],
textarea {
    font-family: nanumgothic;
    box-sizing: border-box;
    padding: 5px;
    width: 300px;
    font-size: 0.9em;
}

.timethread_board .ui-search-box {
    display: flex;
    align-items: center;
    justify-content: center;
}

.timethread_board .ui-search-box select,
.timethread_board .ui-search-box input[type="text"] {
    background: var(--form-bg-color);
    border: 1px solid var(--form-border-color);
    color: var(--form-text-color);
}

.timethread_board textarea {
    min-height: 100px;
}

.comment-item .input-comment .wr_content {
    min-height: 100px;
}

.timethread_board .load-list-option {
    display: flex;
    gap: 15px;
}

.timethread_board .upload-btn {
    font-family: var(--content-font-family);
    font-size: 15px;
    width: 100px;
    height: 30px;
    text-shadow: 0 0 BLACK;
    border: 2px inset var(--gray-600);
    border-radius: 10px;
    background: var(--color-4);
    color: var(--white);
    line-height: 28px;
    margin: 5px 0px;
}

.dropzone.dragover {
    border-color: #00aaff;
    background-color: #f0faff;
}

.dropzone {
    display: flex;
    height: 130px;
    border-radius: 15px;
    border: 2px dashed var(--color-9);
    margin-bottom: 10px;
    flex-direction: column;
    align-items: center;
}

/* 버튼 */
strong.pg_current.pg_page {
    background: var(--color-bg) !important;
}

strong.pg_current.pg_page:hover {
    background: var(--color-4);
    border-color: var(--color-2);
    color: var(--color-d);
}

.timethread-guide-button {
    display: flex;
    align-items: center;
    gap: 3px;
}

.timethread-button.ui {
    font-family: var(--content-font-family);
    font-size: 13px;
    width: 20px;
    height: 20px;
    border: 1px inset var(--color-b);
    border-radius: 15px;
    background: var(--color-4);
    color: var(--content-font-color);
    padding: 2px 5px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.timethread-button.ui:hover {
    background: var(--color-b);
    color: var(--gray-600);
}

.timethread-button.ui.sch {
    height: 25px;
    width: 40px;
    background: var(--color-2);
}

.timethread-button.ui.sch:hover {
    background: var(--color-b);
    color: var(--gray-600);
}


/*****************/
/* 전체 레이아웃 */
/*****************/

.timethread_board_container {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    padding: 20px 0px 80px 0px;
}

.timethread_board {
    display: flex;
    flex-direction: column;
    gap: 30px;
    align-items: center;
    width: 100%;
    /* max-width: 1100px; */
    margin: 0 auto;
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
}

.timethread_box {
    display: flex;
    gap: 10px;
    width: 100%;
}

.timethread_tag {
    display: none !important;
    position: fixed;
    top: 9%;
    right: 0;
    width: 300px;
    max-width: 300px;
    transform: translateX(100%) translateY(0%);
    transition: transform 0.3s ease-in-out;
    z-index: 1000;
    height: auto;
    /* 또는 fit-content; 사용 가능 */
    font-family: var(--content-font-family);
    display: flex;
    border: 1px solid var(--container-border-color);
    border-radius: 10px;
    padding: 20px;
    background-color: var(--color-2);
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
    margin-bottom: 10px;
    box-sizing: border-box;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
    gap: 3px;
}

.timethread_tag.active {
    display: flex !important;
    transform: translateX(0) translateY(0%);
}

.tagtoggle-btn {
    position: fixed;
    top: 9%;
    right: 0;
    transform: translateY(-50%);
    z-index: 1001;
    padding: 5px 10px;
    background: var(--btn-accent-bg);
    color: var(--btn-accent-text);
    border: none;
    border-radius: 4px 0px 0px 4px;
    box-shadow: 1px 3px 1px rgba(0, 0, 0, 0.2);
    cursor: pointer;
}

/* .pg_wrap {
    padding: 0;
    margin-bottom: 20px;
    display: inline-flex !important;
    gap: 2px;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
}

.pg_wrap .pg_page {
    display: inline-flex !important;
    height: 30px !important;
    width: 30px;
    box-sizing: border-box !important;
    font-size: 12px !important;
    border-radius: 8px !important;
    background: var(--gray-600);
    color: var(--color-e) !important;
    border: 0 !important;
    font-family: var(--content-font-family);
    align-items: center;
    justify-content: center;
}

.pg_wrap .pg_start,
.pg_wrap .pg_end {
    min-width: 0 !important;
}

.pg_wrap .pg_page.pg_control:before {
    font-size: 12px;
    display: inline-flex;
    font-family: var(--content-font-family);
    align-items: center;
    justify-content: center;
}

.searc-sub-box {
    padding: 0 !important;
    margin: 0 !important;
} */

.timethread-guide {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    flex-direction: row;
    flex-wrap: wrap;
    margin-top: 20px;
}

.md-btn a {
    font-size: 0.9rem;
}

/*****************/
/* 본문 */
/*****************/

#log_list .item {
    background-color: var(--color-bg) !important;
    color: var(--color-e) !important;
    border-radius: 20px;
}

#log_list {
    position: relative;
    background-color: transparent !important;
    border-color: transparent !important;
    width: 100%;
}

.grid-images {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    /* 2열 구성 */
}

.single-image {
    display: block;
    margin-bottom: 5px;
}

.profile-pic-img {
    width: 25px;
    height: 25px;
    border-radius: 50%;
    object-fit: cover;
    border: 1px solid var(--color-d);
    color: var(--color-d);
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.profile-img img {
    width: 250px;
    height: 100%;
    object-fit: cover;
}

/* 비밀글, 비밀 댓글 */
.secret-container {
    text-align: center;
    font-family: var(--content-font-family);
    width: 100%;
    color: var(--content-font-color);
    padding-bottom: 15px;
    display: flex;
}

.secret-container .secretPostForm {
    display: flex;
    align-items: center;
    flex: 1;
    justify-content: center;
}

.secret-container input,
.secret-comment-form input {
    padding: 8px;
    margin-right: 5px;
    border: 1px solid var(--color-c);
    cursor: text;
}

.secret-container .secretPostForm input {
    width: 60%;
}

.secret-comment-form {
    text-align: center;
    border-radius: 10px;
    border: 1px solid var(--container-border-color);
    padding: 30px;
    background: var(--container-bg-color);
    font-family: var(--content-font-family);
    margin-bottom: 10px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    color: var(--content-font-color);
    margin: 15px 10px 18px;
}

.secret-container .secretPostForm button {
    cursor: pointer;
    background: var(--color-4);
    color: var(--content-font-color);
    border-radius: 4px;
    border: none;
    padding: 7px 9px;
}

.secret-comment-form button {
    cursor: pointer;
    margin-top: 10px;
    background: var(--color-4);
    color: var(--content-font-color);
    border-radius: 10px;
    border: none !important;
    padding: 6px 15px;
    margin-left: 3px;
}

.secret-container button:hover,
.secret-comment-form button:hover {
    background: var(--color-5);
}

.secret-container,
.main-container {
    transition: opacity 0.1s ease-in-out;
}

.secret-comment-form,
.comment-item {
    transition: opacity 0.1s ease-in-out;
}

.main-container {
    font-family: var(--content-font-family);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-width: 550px;
    max-width: 50%;
    width: 100%;
    margin: 0 auto;
    border: 1px solid var(--container-border-color);
    border-radius: 10px;
    background: var(--container-bg-color);
    color: var(--content-font-color);
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
    margin-bottom: 10px;
    box-sizing: border-box;
    overflow: hidden;
}

.main-container.notice {
    border: 2px solid rgb(from var(--accent-color) r g b / 50%);
}

.content-wrapper {
    display: flex;
    flex-direction: column;
    padding: 20px 20px 0px;
}


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

/* 📌 댓글창 토글 버튼 */
.comment-toggle {
    display: block;
    cursor: pointer;
    color: var(--color-b);
    font-weight: bold;
}

.linkcopyload_btn {
    color: var(--color-b);
}

.comment-wrapper {
    display: flex;
    flex-direction: column;
}

.comment-btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0px 15px 10px;
}

.comment.btn {
    display: flex;
    gap: 10px;
    height: 30px;
    align-items: center;
    padding: 0;
}

.comment.btn a {
    color: var(--secondary-color);
}

/* 좋아요 영역 */
.like_area {
    display: flex;
    align-items: center;
    gap: 5px;
}

.like_number {
    color: var(--secondary-color);
}

.like_btn {
    display: flex;
    align-items: center;
    font-size: 13px;
    /* 하트 크기 조절 */
    color: var(--secondary-color);
    cursor: pointer;
    transition: transform 0.2s ease;
    /* 부드러운 애니메이션 효과 */
}

.like_btn:active,
.like_btn.active {
    transform: scale(1.1);
    color: var(--accent-color);
}

@keyframes pop {
    0% {
        transform: scale(1);
    }

    20% {
        transform: scale(1.3);
    }

    70% {
        transform: scale(1);
    }
}

.like_btn.active {
    animation: pop 0.3s;
}

.user-info-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;

}

/* 📌 작성자 정보 */
.user-info {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
}

.user-details {
    display: flex;
    flex-direction: row;
    gap: 3px;
    align-items: center;
}

.nick {
    font-weight: bold;
    font-size: 1.1em;
    color: var(--content-font-color);
}

.id {
    font-size: 0.85em;
    color: rgb(from var(--content-font-color) r g b / 70%);
}

.content-date {
    font-size: 0.85em;
    color: rgb(from var(--content-font-color) r g b / 70%);
}

/* 📌 본문 영역  */
.post-content {
    position: relative;
    max-height: var(--post-height, 600px);
    /* 기본 접힘 높이를 게시판 설정값과 연동 */
    transition: max-height 0.5s ease-in-out;
    display: -webkit-box;
    -webkit-line-clamp: 10;
    /* 기본적으로 10줄까지만 보이도록 설정 */
    -webkit-box-orient: vertical;
    overflow: hidden;
    padding: 15px;
}

/* 📌 본문이 접혔을 때 OPEN 버튼을 우측 하단에 고정 */
.post-toggle-btn {
    position: absolute;
    width: 100%;
    bottom: 0px;
    background: rgb(from var(--secondary-color) r g b / 80%);
    color: var(--content-font-color);
    padding: 3px 5px;
    font-size: 13px;
    font-weight: bold;
    cursor: pointer;
    display: block;
    text-align: center;
    z-index: 10;
}

.post-edit,
.post-delete {
    color: var(--accent-color);
    font-weight: bold;
    cursor: pointer;
    text-decoration: none;
}

.post-edit:hover,
.post-delete:hover {
    text-decoration: underline;
}

/* 📌 본문이 펼쳐졌을 때 (OPEN 후) */
.post-content.on,
.post-content.expanded {
    max-height: none !important;
}

.post-number {
    position: relative;
    font-size: 15px;
    font-family: var(--content-font-family);
    font-weight: bold;
    font-style: italic;
    line-height: 14px;
    width: 25px;
    height: 15px;
    text-align: center;
    border-radius: 5px;
    padding: 6px 4px 2px 2px;
    background: rgba(210 210 210);
    top: 0px;
    margin-left: 10px;
    color: var(--color-bg);
}

.post-number::before {
    border-right-color: rgb(210 210 210) !important;
    content: '';
    position: absolute;
    left: 47px;
    bottom: 10px;
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-left: 0;
    border-bottom: 0;
    margin-top: -7.5px;
    margin-left: -53px;
    transform: rotate(31deg);
}


.loadboard_content {
    line-height: 1.7;
    letter-spacing: -0.3px;
    color: var(--content-font-color);
    font-size: var(--content-font-size);
    font-family: var(--content-font-family);
    overflow: auto;
    /* margin-bottom: 20px; */
}

.item-comment-box {
    display: flex;
    flex-direction: column;
}

.item-comment-form-box {
    display: none;
    padding: 10px;
    background: var(--gray-600);
    border-radius: 5px;
    margin: 10px 0px;
    color: var(--content-font-color);
}

/* 📌 댓글 입력창 스타일 */
.comment_input_area {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}

.comment_textarea {
    width: 100%;
    max-width: 500px;
    min-height: 40px;
    padding: 8px;
    border-radius: 5px;
    border: 1px solid var(--color-d);
    background: var(--color-bg);
    color: var(--content-font-color);
    font-size: 14px;
    resize: none;
}

.comment_submit {
    min-width: 80px;
    padding: 8px 12px;
    border: none;
    border-radius: 5px;
    background: var(--accent-color);
    color: var(--white);
    cursor: pointer;
    font-weight: bold;
}


/* 📌 수정 textarea 스타일 */
.modify_textarea {
    width: 100%;
    max-width: 500px;
    min-height: 40px;
    resize: none;
    overflow-y: hidden;
    padding: 8px;
    border-radius: 5px;
    border: 1px solid var(--color-d);
    background: var(--color-bg);
    color: var(--content-font-color);
    font-size: 14px;
    line-height: 1.5;
}

/* 📌 textarea가 입력 내용에 따라 높이 자동 조정 */
.modify_textarea:focus {
    outline: none;
}

/* 📌 수정 버튼 */
.mod_comment {
    min-width: 80px;
    padding: 8px 12px;
    border: none;
    border-radius: 5px;
    background: var(--accent-color);
    color: var(--white);
    cursor: pointer;
    font-weight: bold;
    text-align: center;
    flex-shrink: 0;
    /* 버튼 크기 고정 */
}

.mod_comment:hover {
    background: rgb(200, 170, 100);
}

.post-actions {
    display: flex;
    font-size: 10px;
    align-items: center;
    justify-content: space-between;
    border: dotted;
    border-color: var(--color-9);
    border-width: 0px 0px 2px 0px;
    padding: 0px 0px 10px 0px;
}

.post-actions a {
    background: var(--btn-primary-bg);
    color: var(--btn-primary-text);
    border-radius: var(--btn-primary-radius);
    border: none !important;
    padding: 6px 10px;
    margin-left: 3px;
    height: 100%;
}

.post-actions a:hover {
    font-weight: bold;
}

.load-option-btn {}

.main-container a.ui-btn {
    line-height: 13px;
}

.main-container a.ui-btn,
.load-option-btn a {}

/* 📌 본문 내 이미지 스타일 */
.log-image {
    display: inline-block;
}

.log-image img {
    width: 100%;
    height: auto;
    border-radius: 4px;
    object-fit: cover;
}

.log-images {
    text-align: center;
}

/* 댓글 타임라인 기본 스타일 */
#log_list .comment-item {
    position: relative;
    padding: 5px 5px 10px 5px;
    width: 100%;
    background-color: var(--color-2);
    box-sizing: border-box;
    transition: background-color 0.2s;
}

#log_list .comment-item:hover {
    background-color: rgba(255, 255, 255, 0.03);
}

/* 다음 댓글이 있는 경우에만 하단 테두리와 마진 적용 */
#log_list .comment-item.has-next {
    margin-bottom: 1px;
    border-bottom: 1px solid var(--gray-600);
}

/* 세로 연결선 - 다음 댓글이 있는 경우에만 적용 */
#log_list .comment-item.has-next::before {
    content: '';
    position: absolute;
    left: 15px;
    top: 10px;
    bottom: 0;
    /* border: 1px dashed; */
    width: 2px;
    background-color: var(--color-4);
    transform: translateY(15px);
    z-index: 1;
    opacity: 0.5;
}

/* #log_list .comment-item.has-next::after {
    content: '▼';
    position: absolute;
    bottom: 0;
    left: 10px;
    font-size: 13px;
    color: #a7a7a7;
    z-index: 1;
    opacity: 0.3;
} */

/* 답글 연결 표시 스타일 */
.reply-connection {
    color: var(--color-9);
    font-size: 0.9em;
}

.reply-connection {
    position: relative;
    padding-left: 30px;
    margin-top: -4px;
}

.reply-arrow {
    margin-right: 5px;
    color: var(--color-9);
}

/* 접기 버튼 스타일 */
.c-btn {
    margin-top: 8px;
    display: flex;
}

.toggle-comment-plip {
    background: none;
    border: none;
    color: var(--accent-color);
    cursor: pointer;
    font-size: 10px;
    padding: 0;
    text-align: left;
    font-family: 'Galmuri11';
    padding-left: 25px;
    margin-top: 0;
}

/* 비밀 댓글 폼 */
.secret-comment-form {
    background: var(--container-bg-color);
    padding: 15px;
    margin-bottom: 1px;
    border-radius: 5px;
    border: 1px solid var(--container-border-color);
}

.secretCommentForm {
    display: flex;
    gap: 10px;
    margin-top: 10px;
}

.secretCommentForm input[type="password"] {
    flex: 1;
    padding: 8px;
    /* border: 1px solid var(--container-border-color);
    background-color: var(--color-2);
    color: var(--content-font-color);
    border-radius: 4px; */
}

.secretCommentForm button {
    padding: 8px 15px;
    background: var(--accent-color);
    color: var(--secondary-color);
    border: none;
    border-radius: 4px;
    cursor: pointer;
}

/* ✅ 19금 블라인드 (완전 검은색 배경 + 버튼 추가) */
.blind-wrapper {
    position: relative;
    width: 100%;
    background: black;
    color: transparent;
    overflow: hidden;
}

.blind-content {
    position: relative;
    width: 100%;
    height: 100%;
    text-align: center;
    padding: 20px;
}

.blind-content .content-hidden {
    display: none;
}

/* ✅ 성인 컨텐츠 보기 버튼 */
.blind-toggle-btn {
    font-family: var(--content-font-family);
    background: var(--error-color);
    color: var(--white);
    padding: 2px 50px;
    border-radius: 5px;
    font-size: 11px;
    font-weight: bold;
    cursor: pointer;
    z-index: 10;
    transition: background 0.3s;
}

.blind-toggle-btn:hover {
    background: rgba(255, 0, 0, 1);
}

/* ✅ 블라인드 해제 시 */
.blind-wrapper.blind-clear {
    background: none;
    color: inherit;
}

.blind-wrapper.blind-clear .blind-toggle-btn {
    display: none;
}

.blind-wrapper.blind-clear .blind-content .content-hidden {
    display: block;
}

/* 기본 스포일러 상태: 블러 처리 및 오버레이 텍스트 표시 */
.spoiler-content {
    position: relative;
    filter: blur(5px);
    transition: filter 0.3s ease;
    cursor: pointer;
}

.spoiler-content::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    background: rgba(0, 0, 0, 0.3);
}

/* 해제된 상태: 블러 제거 및 오버레이 숨김 */
.spoiler-content.clear {
    filter: none;
}

.spoiler-content.clear::after {
    display: none;
}


/* 댓글창 */

.input-comment {
    margin-bottom: 10px;
}

.form-group {
    margin-bottom: 10px;
}

.form-group label {
    font-weight: normal !important;
}

.media-options {
    cursor: pointer;
}

.input-group {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.input-group-v {
    display: flex;
    gap: 5px;
    align-items: center;
}

.input-group-v label {
    background: black;
    color: var(--content-font-color);
    padding: 3px 8px;
    border-radius: 10px;
}

/* 파일 업로드 시 */
button#upload-btn {
    font-family: var(--content-font-family);
    font-size: 10px;
    margin: 5px;
    padding: 3px 6px;
}

.file-input-row {
    display: flex;
    align-items: center;
    gap: 10px;
}

.file-input-row input {
    flex: 1;
}

.link-input-row {
    display: flex;
    align-items: center;
    gap: 10px;
}

.link-input-row input {
    flex: 1;
}


/* 답글 창 */
.reply-form {
    display: none;
    padding: 10px;
}

.reply-form.active {
    display: block;
}

/* 댓글 쪽 css */
.form-group {
    margin-bottom: 10px;
}

.form-group label {
    font-weight: bold;
    color: var(--content-font-color);
}

.input-group {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.file-input-row {
    display: flex;
    align-items: center;
    gap: 10px;
}

.file-input-row input {
    flex: 1;
}

.link-input-row {
    display: flex;
    align-items: center;
    gap: 10px;
}

.link-input-row input {
    flex: 1;
}

/* 타입 선택 */
.type_select {
    display: flex;
    gap: 10px;
    justify-content: flex-start;
    flex-direction: row;
    align-items: flex-start;
}

.theme-box {
    display: block;
    position: relative;
    padding: 10px;
    box-sizing: border-box;
    font-family: nanumsquare;
}

.theme-box .form-group {
    display: flex;
    margin-bottom: 10px;
    height: 20px;
    align-items: center;
}

.theme-box .form-group label.option-label {
    margin-right: 10px;
    font-size: 15px;
    font-weight: bold !important;
}

/* 개별 미리보기 박스 (고정 크기) */
.preview-container {
    flex: 1;
}

/* 미리보기 영역: 댓글 */
.preview-item {}

/* 미리보기 이미지 스타일 */
.preview-img {
    object-fit: cover;
    height: 80px;
    width: 100%;
}

/* 삭제 버튼: 미리보기 박스의 오른쪽 상단에 위치 */
.preview-item .file-remove-btn {
    color: var(--error-color);
    font-weight: 600;
    font-size: 12px;
    top: -100px !important;
    position: relative;
    z-index: 10;
    background: rgba(0, 0, 0, 0.9);
    width: 20px;
    height: 20px;
    border: 0;
}

/* 본문/댓글 이미지 그리드 (2개씩) */
.single-image img {
    width: 100%;
    display: block;
    height: 200px;
    object-fit: cover;
    border-radius: 8px;
}

.grid-images {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 5px;
    margin-bottom: 5px;
}

.grid-images .log-image img,
.grid-images .reply-image img,
.grid-images img {
    width: 100%;
    height: 100%;
    max-height: 150px;
    object-fit: cover;
    border-radius: 8px;
}

/* 게시글 작성 폼 */
.write-form-container {
    display: flex;
    padding: 15px;
    flex-direction: column;
    gap: 10px;
}

.write-form-container .comments {
    height: 50vh;
}

#custom_textarea {
    height: 100% !important;
}

/* 모달 기본 스타일 */
.modal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    align-items: center;
    justify-content: center;
}

/* 모달 기본 스타일 */
.modal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    align-items: center;
    justify-content: center;
}

/* 모달 내 이미지 스타일 */
.modal-content {
    max-width: 80%;
    max-height: 80%;
    border-radius: 10px;
}

/* 닫기 버튼 */
.close {
    position: absolute;
    top: 15px;
    right: 25px;
    color: var(--white);
    font-size: 30px;
    font-weight: bold;
    cursor: pointer;
}

/* 좌우 탐색 버튼 */
.prev,
.next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-size: 30px;
    color: var(--white);
    cursor: pointer;
    padding: 10px;
    background: rgba(0, 0, 0, 0.5);
    border-radius: 5px;
    user-select: none;
}

.prev {
    left: 20px;
}

.next {
    right: 20px;
}

.prev:hover,
.next:hover {
    background: rgba(0, 0, 0, 0.8);
}

/*****************/
/* 공지사항 추가 */
/*****************/

.load-option-btn {
    display: flex;
    align-items: center;
    gap: 2px;
}

.notice-option {
    padding: 0 4px;
    background: var(--card-bg-color);
    border: 2px solid var(--card-border-color);
    border-radius: var(--card-border-radius);
    color: var(--content-font-color);
    font-size: 0.9em;
    font-family: var(--content-font-family);
    font-weight: bold;
    margin-right: 3px;
}

/* 뷰 전환 버튼 스타일 */
.view-toggle-buttons {
    display: flex;
    align-items: center;
    gap: 3px;
}

.view-toggle-btn {
    border: 0;
    border-radius: var(--btn-secondary-radius);
    background: var(--btn-secondary-bg);
    color: var(--btn-secondary-text);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1em;
    padding: calc(var(--spacing-sm) * 0.8) var(--spacing-sm);
}

.view-toggle-btn:hover {
    background: var(--btn-accent-bg);
    color: var(--btn-accent-text);
}

.view-toggle-btn.active {
    background: var(--btn-primary-bg);
    color: var(--btn-primary-text);
}

#log_list.grid-view {
    display: flex;
    flex-wrap: wrap;
}

#log_list.grid-view .main-container {
    width: calc(33.3% - 10px);
    min-width: 10px;
    margin-bottom: 10px;
    box-sizing: border-box;
    /* padding: 20px 15px; */
}

#log_list.grid-view .main-container .comment-item {
    min-width: 100px;
}

#log_list.grid-view .secret-container .secretPostForm input {
    flex: 1;
}

#log_list.grid-view .main-container .comment-item {
    min-width: 100px;
}


/* 그리드 뷰에서 댓글 영역 처리 */
#log_list.grid-view .main-container {
    transition: height 0.3s ease;
    /* 높이 변화에 애니메이션 적용 */
}

#log_list.grid-view .main-container .comment-container.view {
    display: none;
}

#log_list.grid-view .main-container.comment-opened {
    max-height: none;
}

#log_list.grid-view .main-container .textggu--title6 {
    font-size: 3em;
}

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

/* 접힌 댓글의 자식 댓글 처리 */
.plip-comment.plip-collapsed>.comment-body .original_comment_area {
    display: none !important;
}

/* 접힌 댓글의 자식 댓글 숨김 처리 */
.plip-comment.plip-collapsed-parent+.comment-item[data-parent-id] {
    display: none;
}

.comment-item .reply-connection a:link,
.comment-item .reply-connection a:visited {
    color: var(--accent-color);
}

.comment-con a:link,
.comment-con a:visited {
    color: var(--accent-color);
}

.media-toggle-btn {
    cursor: pointer;
    padding: 3px 8px;
    background: var(--accent-color);
    color: var(--color-bg);
    border: none;
    border-radius: 4px;
    margin-bottom: 10px;
    user-select: none;
    width: fit-content;
    font-family: var(--content-font-family);
    font-weight: bold;
}

.media-toggle-btn:hover {
    background: var(--color-bg);
    color: var(--accent-color);
}

/*****************/
/* 모바일 최적화 등 */
/*****************/

@media screen and (max-width: 767px) {

    .main-container {
        min-width: 100px;
        max-width: 96%;
    }

    .timethread-guide {
        gap: 5px;
    }

    .timethread_tag {
        width: 200px;
        max-width: 200px;
    }

    .timethread_tag.active {
        right: 0;
    }

    .timethread_board {
        margin-top: 20px;
    }

    .view-toggle-btn {
        display: none !important;
    }

    .timethread_board .ui-search-box input[type="text"] {
        max-width: 100px;
    }
}

hr.padding {
    display: none !important;
}

/* ========================================
   RA0 Edition - Timeline 답글 시스템 스타일
   ======================================== */

/* 답글 컨테이너 */
.reply-thread-container {
}

/* 답글 아이템 - 트위터 스타일 */
.reply-item {
    padding: 0;
    background: var(--card-bg-color);
    color: var(--content-font-color);
    transition: all 0.3s ease;
}

.reply-item:hover {
    background: var(--container-bg-color);
    box-shadow: 0 2px 8px rgb(from var(--gray-600) r g b / 20%);
}

/* 답글 라인 래퍼 - 프로필과 콘텐츠를 가로로 배치 */
.reply-line-wrapper {
    display: flex;
    gap: 12px;
    padding: 10px 20px;
    align-items: stretch;
}

/* 답글 아바타 래퍼 - 프로필 이미지와 세로 라인 */
.reply-avatar-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-shrink: 0;
    align-self: stretch;
}

/* 답글 프로필 사진 */
.reply-profile-pic {
    width: 40px;
    height: 40px;
    flex-shrink: 0;
}

.reply-profile-img {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* 세로 연결 라인 - 트위터 스타일 */
.reply-thread-line {
    width: 2px;
    flex: 1;
    background: var(--secondary-color);
    margin-top: 8px;
    min-height: 40px;
    border-radius: 1px;
}

/* 답글 메인 콘텐츠 영역 */
.reply-main-content {
    flex: 1;
    min-width: 0;
}

/* 답글 헤더 */
.reply-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
}

/* 답글 사용자 정보 */
.reply-user-info {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.reply-profile {
    display: flex;
    align-items: center;
    gap: 3px;
}

/* 답글 자식 컨테이너 */
.reply-children {
    /* 자식 답글은 같은 레벨에 표시 (margin-left 없음) */
}

.reply-actions {
    display: flex;
    gap: 5px;
}

/* 답글 내용 */
.reply-content {
    margin-top: 8px;
}

.reply-mention {
    color: var(--btn--accent-bg);
    font-weight: bold;
    margin-right: 5px;
}

.reply-image {
    margin: 8px 0;
    border-radius: 5px;
    overflow: hidden;
}

.reply-image img {
    max-width: 100%;
    height: auto;
    display: block;
}

.reply-text, .reply-name, .reply-id, .reply-date {
    color: var(--content-font-color);
    line-height: 1.6;
    word-break: break-word;
}

.reply-text {
    font-size: var(--content-font-size);
    padding: 0px 10px;
}

.reply-name {
    font-weight: bold;
    font-size: 1.1em;
}

.reply-id {
    opacity: 0.7;
    font-size: 0.85em;
}

.reply-date {
    font-size: 0.7em;
    line-height: 1;
    opacity: 0.5;
}

/* .reply-item:hover .reply-text,
.reply-item:hover .reply-name,
.reply-item:hover .reply-id,
.reply-item:hover .reply-date,
.reply-item:hover .reply-actions .ra0_ui_btn,
.reply-item:hover .reply-footer .ra0_ui_btn {
    color: var(--content-bg-color);
} */

.reply-footer {
    margin-top: 8px;
    /* text-align: right; */
}

.reply-footer .ra0_ui_btn {
    background: transparent;
    color: var(--primary-color);
}

.reply-actions .ra0_ui_btn {
    background: transparent;
    color: var(--primary-color);
    padding: 0;
}

/* 답글 작성 폼 */
.reply-form-container {
    margin-top: 10px;
    padding: 15px;
    background: var(--secondary-color);
    border-radius: 8px;
    border: 1px solid var(--gray-600);
}

.reply-form textarea {
    width: 100%;
    min-height: 80px;
    padding: 10px;
    border: 1px solid var(--gray-600);
    border-radius: 5px;
    background: var(--color-2);
    color: var(--content-font-color);
    font-family: inherit;
    font-size: 13px;
    resize: vertical;
    margin-bottom: 10px;
}

.reply-guest {
    display: flex;
    gap: 10px;
    margin-bottom: 10px;
}

.reply-guest input {
    flex: 1;
    padding: 8px;
    border: 1px solid var(--gray-600);
    border-radius: 5px;
    background: var(--color-2);
    color: var(--content-font-color);
}

.reply-file-upload {
    margin-bottom: 10px;
}

.reply-file-upload label {
    display: block;
    margin-bottom: 5px;
    color: var(--color-9);
    font-size: 12px;
}

.reply-file-input {
    width: 100%;
    padding: 5px;
    margin-bottom: 5px;
    font-size: 12px;
}

.reply-buttons {
    display: flex;
    gap: 10px;
    justify-content: flex-end;
}

/* 답글 중첩 스타일 */
.reply-nested {
    border-left-color: var(--color-s);
}

.reply-root {
    /* border-left-color: var(--btn--accent-bg); */
}

/* 모바일 최적화 */
@media (max-width: 768px) {
    .reply-line-wrapper {
        padding: 8px 12px;
        gap: 8px;
    }

    .reply-profile-pic {
        width: 32px;
        height: 32px;
    }

    .reply-profile-img {
        width: 32px;
        height: 32px;
    }

    .reply-name {
        font-size: 13px;
    }

    .reply-text {
        font-size: 12px;
    }

    .reply-form textarea {
        min-height: 60px;
        font-size: 12px;
    }

    .reply-guest {
        flex-direction: column;
    }
}