@charset "UTF-8";

/* ==================== [공통 모듈 스타일] ==================== */
/* --- 서브페이지 LNB / TOC 공통 (01, 04, 05, 09) --- */
.toc_box {
    padding:24px;
    background-color:#fff;
    border:1px solid var(--color_border);
    border-radius:12px;
    box-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.02);
}

.toc_title {
    margin-bottom:16px;
    padding-bottom:12px;
    font-size:1.6rem;
    font-weight:800;
    color:#111827;
    letter-spacing:0.05em;
    text-transform:uppercase;
    border-bottom:1px solid var(--color_border_light);
}

.toc_nav {
    display:flex;
    flex-direction:column;
    gap:4px;
}

.toc_link {
    display:block;
    padding:6px 12px;
    font-size:1.4rem;
    font-weight:500;
    color:var(--color_text_muted);
    border-left:2px solid transparent;
    border-radius:6px;
    transition:var(--transition_fast);
    word-break:break-all;
}

.toc_link:hover {
    color:var(--color_green);
    background-color:#f0fdf4;
    border-left-color:var(--color_green);
}

.toc_link.active {
    font-weight:700;
    color:var(--color_emerald_dark);
    background-color:#ecfdf5;
    border-left-color:var(--color_emerald_dark);
}

.related_articles_box {
    margin-top:16px;
}

.related_article_list {
    display:block;
    /* max-height:356px; */
    max-height:336px;
    overflow-y:auto;
    scrollbar-width:thin;
    scrollbar-color:rgba(0,0,0,0.1) transparent;
}

.related_article_list::-webkit-scrollbar {
    width:5px;
}

.related_article_list::-webkit-scrollbar-track {
    background-color:transparent;
}

.related_article_list::-webkit-scrollbar-thumb {
    border-radius:4px;
    background-color:rgba(0,0,0,0.08);
    transition:background-color 0.2s ease;
}

.related_article_list:hover {
    scrollbar-color:rgba(76,167,58,0.3) transparent;
}

.related_article_list:hover::-webkit-scrollbar-thumb {
    background-color:rgba(76,167,58,0.3);
}

.related_article_list::-webkit-scrollbar-thumb:hover {
    background-color:rgba(76,167,58,0.4);
}

.related_article_list > li:last-child .related_article_item {
    border-bottom:none;
}

.related_article_item {
    display:block;
    padding:8px 4px;
    font-size:1.3rem;
    font-weight:500;
    color:var(--color_text_muted);
    border-bottom:1px solid var(--color_border_light);
    transition:var(--transition_fast);
    line-height:1.5;
}

.related_article_item:hover {
    color:var(--color_green);
}

.related_article_title {
    display:-webkit-box;
    color:var(--color_text_main);
    line-height:1.4;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

.related_article_item:hover .related_article_title {
    color:var(--color_green);
    text-decoration:underline;
}

.related_article_meta {
    display:block;
    margin-top:3px;
    font-size:1.2rem;
    color:var(--color_text_light);
}

.related_article_score {
    display:inline-block;
    margin-top:4px;
    padding:1px 6px;
    font-size:1.1rem;
    font-weight:600;
    color:var(--color_emerald_dark);
    background-color:#d1fae5;
    border-radius:4px;
}

.related_loading {
    font-size:1.3rem;
    color:var(--color_text_muted);
}

/* ==================== 서브페이지 메인 컨테이너 공통 스타일 ==================== */
.sub_page_wrapper {
    padding:64px 0 80px;
    background-color:var(--color_light_bg);
}

/* --- 이슈 액션 툴바 공통 (09, 10) --- */
.issue_actions {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
}

.btn_toolbar {
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:8px 16px;
    font-size:1.4rem;
    font-weight:600;
    color:#475569;
    background-color:#fff;
    border:1px solid #cbd5e1;
    border-radius:8px;
    cursor:pointer;
    transition:var(--transition_fast);
}

.btn_toolbar i {
    font-size:1.4rem;
}

.issue_actions .btn_toolbar.issue_btn_01 {
    color:#be123c;
    background-color:#fff1f2;
}
.issue_actions .btn_toolbar.issue_btn_01:hover {
    background-color:#ffe4e6;
}

.issue_actions .btn_toolbar.issue_btn_02 {
    color:#c2410c;
    background-color:#fff7ed;
}
.issue_actions .btn_toolbar.issue_btn_02:hover {
    background-color:#ffedd5;
}

.issue_actions .btn_toolbar.issue_btn_03 {
    color:#2d6a4f;
    background-color:#f4f9f6;
}
.issue_actions .btn_toolbar.issue_btn_03:hover {
    background-color:#e8f3ed;
}

.issue_actions .btn_toolbar.issue_btn_04 {
    color:#475569;
    background-color:#f1f5f9;
}
.issue_actions .btn_toolbar.issue_btn_04:hover {
    background-color:#e2e8f0;
}

.issue_actions .btn_toolbar.issue_btn_05 {
    color:#1d4ed8;
    background-color:#eff6ff;
}
.issue_actions .btn_toolbar.issue_btn_05:hover {
    background-color:#dbeafe;
}

.issue_actions .btn_toolbar.issue_btn_06 {
    color:#6d28d9;
    background-color:#f5f3ff;
}
.issue_actions .btn_toolbar.issue_btn_06:hover {
    background-color:#ede9fe;
}

.issue_actions .btn_toolbar:hover {
    transform:translateY(-1px);
}

.issue_actions .btn_toolbar:active {
    transform:translateY(0px);
}

/* --- 논문 리스트 UI 공통 (06, 07, 10) --- */
.article_list {
    display:flex;
    flex-direction:column;
    gap:10px;
}

.article_item {
    display:flex;
    gap:24px;
    position:relative;
    padding:40px 24px;
    background-color:#fff;
    border:1px solid rgba(76, 167, 58, 0.3);
    border-radius:16px;
    transition:var(--transition_normal);
}

.article_item:hover {
    box-shadow:0 20px 25px -5px rgba(0, 0, 0, 0.05), 0 8px 10px -6px rgba(0, 0, 0, 0.01);
    transform:translateX(4px);
    z-index:10;
}

.card_cnt_badge {
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    position:absolute;
    top:24px;
    right:24px;
    padding:12px 16px;
    min-width:88px;
    background-color:#f1f5f9;
    border:1px solid var(--color_border);
    border-radius:12px;
    box-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.05);
    z-index:5;
}

.item_content {
    display:flex;
    flex-direction:column;
    flex-grow:1;
    min-width:0;
    padding-right:140px;
}

.item_category {
    display:inline-block;
    margin-bottom:16px;
    padding:4px 12px;
    width:fit-content;
    font-size:1.4rem;
    font-weight:700;
    letter-spacing:0.05em;
    text-transform:uppercase;
    border-radius:9999px;
}

.category_original {
    color:#059669;
    background-color:#ecfdf5;
}

.category_review {
    color:#2563eb;
    background-color:#eff6ff;
}

.item_title {
    margin-bottom:12px;
    font-size:2.2rem;
    font-weight:800;
    line-height:1.35;
    color:#111827;
    transition:var(--transition_fast);
}

.item_title a:hover {
    color:var(--color_green);
    text-decoration:underline;
    text-underline-offset:4px;
}

.item_authors {
    margin-bottom:12px;
    font-size:1.6rem;
    font-weight:500;
    line-height:1.5;
    color:var(--color_text_main);
}

.item_meta_wrap {
    display:flex;
    flex-direction:column;
    gap:8px;
    margin-bottom:24px;
}

.item_journal {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
    font-size:1.4rem;
    color:var(--color_text_muted);
}

.item_journal em {
    font-weight:600;
    font-style:italic;
    color:#475569;
}

.item_doi {
    display:inline-flex;
    align-items:center;
    gap:6px;
    font-size:1.4rem;
    font-weight:500;
    color:#2563eb;
    overflow-wrap:anywhere;
    word-break:keep-all;
}

.item_doi:hover {
    text-decoration:underline;
}

.item_actions {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.btn_action {
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:8px 20px;
    font-size:1.4rem;
    font-weight:700;
    border:1px solid;
    border-radius:8px;
    transition:var(--transition_fast);
}

.btn_abstract {
    color:#475569;
    background-color:#fff;
    border-color:var(--color_border);
}

.btn_abstract:hover {
    color:#1e293b;
    background-color:#f1f5f9;
    border-color:#cbd5e1;
}

.btn_fulltext {
    color:#166534;
    background-color:#f0fdf4;
    border-color:#bbf7d0;
}

.btn_fulltext:hover {
    color:#fff;
    background-color:var(--color_green);
    border-color:var(--color_green);
}

.btn_pdf {
    color:#dc2626;
    background-color:#fef2f2;
    border-color:#fecaca;
}

.btn_pdf:hover {
    color:#fff;
    background-color:#dc2626;
    border-color:#dc2626;
    box-shadow:0 4px 6px -1px rgba(220, 38, 38, 0.2);
}

.pagination_wrap {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    margin-top:64px;
}

.page_num {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:40px;
    height:40px;
    font-size:1.6rem;
    font-weight:600;
    color:var(--color_text_muted);
    background-color:#fff;
    border:1px solid var(--color_border);
    border-radius:8px;
    cursor:pointer;
    transition:var(--transition_fast);
}

.page_num:hover {
    color:var(--color_green);
    border-color:var(--color_green);
}

.page_num.active {
    color:#fff;
    background-color:var(--color_green);
    border-color:var(--color_green);
}

.abstract_popover {
    display:none;
    flex-direction:column;
    position:absolute;
    padding:24px;
    width:800px;
    max-width:calc(100% - 32px);
    background-color:#fff;
    border:1px solid var(--color_border);
    border-radius:12px;
    box-shadow:0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.05);
    z-index:100;
}

.abstract_popover_header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:16px;
    padding-bottom:16px;
    border-bottom:1px solid var(--color_border);
}

.abstract_popover_title {
    font-size:2.0rem;
    font-weight:700;
    color:#111827;
}

.abstract_popover_close {
    font-size:2.0rem;
    color:#9ca3af;
    transition:var(--transition_fast);
}

.abstract_popover_close:hover {
    color:#4b5563;
}

.abstract_popover_content {
    display:flex;
    flex-direction:column;
    gap:16px;
}

.abstract_section_title {
    margin-bottom:4px;
    font-size:1.6rem;
    font-weight:700;
    color:#111827;
}

.abstract_section_text {
    font-size:1.4rem;
    line-height:1.6;
    color:var(--color_text_muted);
}

/* -------------------- [01.about_the_journal] 전용 스타일 -------------------- */
.about_layout_grid {
    display:flex;
    flex-direction:row;
    align-items:flex-start;
    gap:40px;
}

.about_main_content {
    display:flex;
    flex-direction:column;
    flex-grow:1;
    gap:32px;
    width:100%;
}

.about_section_card {
    padding:48px 40px;
    background-color:#fff;
    border:1px solid var(--color_border);
    border-radius:16px;
    box-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.02);
}

.about_section_title {
    margin-bottom:24px;
    padding-left:12px;
    font-size:2.8rem;
    font-weight:800;
    color:#111827;
    border-left:4px solid var(--color_green);
}

.about_text {
    margin-bottom:16px;
    font-size:1.6rem;
    line-height:1.8;
    color:#4b5563;
    text-align:justify;
}

.about_text:last-child {
    margin-bottom:0;
}

/* Open Access Box */
.oa_highlight_box {
    display:flex;
    flex-direction:row;
    gap:24px;
    padding:24px;
    width:100%;
    max-width:100%;
    min-width:0;
    background-color:#ecfdf5;
    border:1px solid rgba(76, 167, 58, 0.2);
    border-radius:12px;
    align-items:center;
}

.oa_logo_group {
    display:flex;
    flex-shrink:0;
    align-items:center;
}

.oa_logo_group img {
    display:block;
    width:auto;
    max-width:280px;
    height:56px;
    object-fit:contain;
}

.oa_desc {
    flex:1;
    min-width:0;
    width:100%;
    font-size:1.5rem;
    line-height:1.6;
    color:#065f46;
    overflow-wrap:break-word;
    word-break:keep-all;
}

.oa_desc a {
    font-weight:600;
    text-decoration:underline;
    overflow-wrap:anywhere;
    word-break:keep-all;
}

.about_sub_title {
    margin-top:32px;
    margin-bottom:16px;
    font-size:2.0rem;
    font-weight:700;
    color:#1f2937;
}

.about_minor_title {
    margin-top:24px;
    margin-bottom:12px;
    font-size:1.8rem;
    font-weight:600;
    color:#374151;
}

/* AI Uses Guidelines */
.guideline_list {
    display:flex;
    flex-direction:column;
    gap:12px;
    padding-left:20px;
    list-style-type:disc;
}

.guideline_list li {
    font-size:1.6rem;
    line-height:1.7;
    color:#4b5563;
}

.guideline_list strong {
    font-weight:700;
    color:#111827;
}

.about_toc_sidebar {
    display:block;
    flex-shrink:0;
    width:280px;
    position:sticky;
    top:100px;
}

/* -------------------- [02.archives] 전용 스타일 -------------------- */
/* Sidebar TOC */
/* 1. Journal Archiving Box (Top Area) */
.archives_section_title {
    display:block;
    margin-bottom:24px;
    font-size:2.8rem;
    font-weight:800;
    color:var(--color_text_main);
}

.archives_journal_box {
    display:flex;
    flex-direction:column;
    margin-bottom:48px;
}

.journal_info_card {
    display:flex;
    flex-direction:row;
    gap:32px;
    padding:32px;
    background-color:#fff;
    border:1px solid var(--color_border);
    border-radius:16px;
    box-shadow:0 4px 6px -1px rgba(0,0,0,0.02);
    align-items:center;
}

.journal_cover {
    flex-shrink:0;
    margin:0 auto;
    width:100%;
    max-width:200px;
}

.journal_cover img {
    width:100%;
    height:auto;
    border:1px solid var(--color_border);
    border-radius:8px;
    box-shadow:0 4px 6px -1px rgba(0,0,0,0.05);
}

.journal_details {
    display:flex;
    flex-direction:column;
    flex-grow:1;
}

.journal_name {
    margin-bottom:16px;
    font-size:2.4rem;
    font-weight:700;
    line-height:1.4;
    color:var(--color_text_main);
}

.journal_meta_list {
    display:flex;
    flex-direction:column;
    gap:8px;
}

.journal_meta_list li {
    font-size:1.6rem;
    color:var(--color_text_muted);
}


.journal_meta_list li strong {
    font-weight:700;
    color:var(--color_text_main);
}

.journal_meta_list li a {
	color:var(--color_green);
}

.journal_meta_list li a:hover {
	text-decoration:underline;
}

.journal_actions {
    display:flex;
    flex-direction:column;
    flex-shrink:0;
    align-items:flex-end;
    gap:24px;
    width:240px;
    text-align:right;
}

.btn_submission {
    padding:16px 24px;
    width:100%;
    font-size:1.6rem;
    letter-spacing:0.025em;
}

.cc_icons {
    display:flex;
    align-items:center;
    gap:8px;
}

.cc_badge {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:48px;
    height:48px;
    font-size:2.4rem;
    color:#64748b;
    background-color:#fff;
    border:2px solid #cbd5e1;
    border-radius:50%;
}

.journal_desc {
    margin-top:16px;
    padding:0 16px;
    font-size:1.4rem;
    line-height:1.6;
    color:var(--color_text_muted);
}

/* 2. Recent Issue Box (Top Area) */
.archives_recent_box {
    display:flex;
    flex-direction:column;
    margin-bottom:64px;
}

.recent_grid {
    display:grid;
    gap:24px;
    grid-template-columns:repeat(4, 1fr);
}

.recent_card {
    display:flex;
    flex-direction:column;
    gap:16px;
    padding:32px 24px;
    background-color:#fff;
    border:1px solid var(--color_border);
    border-radius:12px;
    transition:var(--transition_normal);
}

.recent_card:hover {
    border-color:var(--color_green);
    box-shadow:0 10px 15px -3px rgba(76,167,58,0.1);
    transform:translateY(-4px);
}

.recent_icon {
    display:flex;
    align-items:center;
    justify-content:center;
    width:56px;
    height:56px;
    font-size:2.4rem;
    color:var(--color_emerald_dark);
    background-color:#ecfdf5;
    border-radius:12px;
}

.recent_info {
    display:flex;
    flex-direction:column;
    gap:4px;
}

.recent_date {
    margin-bottom:4px;
    font-size:2.0rem;
    font-weight:800;
    color:var(--color_text_main);
}

.recent_vol {
    font-size:1.6rem;
    font-weight:500;
    color:var(--color_text_muted);
}

/* 3. Past Issue Split View Container */
.archives_split_container {
    display:flex;
    flex-direction:row;
    align-items:flex-start;
    gap:40px;
}

/* Left Sidebar Sticky Nav */
.archive_sidebar {
    flex-shrink:0;
    width:280px;
    position:sticky;
    top:100px;
}

.archive_nav_box {
    padding:24px;
    background-color:#fff;
    border:1px solid var(--color_border);
    border-radius:12px;
    box-shadow:0 4px 6px -1px rgba(0,0,0,0.02);
}

.archive_nav_title {
    margin-bottom:16px;
    padding-bottom:12px;
    font-size:1.6rem;
    font-weight:800;
    color:#111827;
    letter-spacing:0.05em;
    text-transform:uppercase;
    border-bottom:1px solid var(--color_border_light);
}

.archive_nav_list {
    display:flex;
    flex-direction:column;
    gap:8px;
}

.archive_nav_link {
    display:block;
    padding:10px 16px;
    font-size:1.4rem;
    font-weight:600;
    color:var(--color_text_muted);
    border-left:2px solid transparent;
    border-radius:8px;
    transition:var(--transition_fast);
}

.archive_nav_link:hover {
    color:var(--color_green);
    background-color:#f0fdf4;
    border-left-color:var(--color_green);
}

.archive_nav_link.active {
    font-weight:700;
    color:var(--color_emerald_dark);
    background-color:#ecfdf5;
    border-left-color:var(--color_emerald_dark);
}

/* Right Main Content List */
.archive_main_list {
    flex-grow:1;
    width:100%;
}

.decade_section {
    margin-bottom:48px;
    padding:32px;
    background-color:#fff;
    border:1px solid var(--color_border);
    border-radius:16px;
    box-shadow:0 4px 6px -1px rgba(0,0,0,0.02);
}

.decade_section:last-child {
    margin-bottom:0;
}

.decade_title {
    margin-bottom:24px;
    padding-bottom:16px;
    font-size:2.4rem;
    font-weight:800;
    color:var(--color_text_main);
    border-bottom:2px solid var(--color_green);
}

.year_row {
    display:flex;
    flex-direction:row;
    gap:32px;
    padding:24px 0;
    border-bottom:1px dashed var(--color_border_light);
    align-items:flex-start;
}

.year_row:last-child {
    padding-bottom:0;
    border-bottom:none;
}

.year_row:first-of-type {
    padding-top:0;
}

.year_label {
    flex-shrink:0;
    width:80px;
    font-size:2.0rem;
    font-weight:800;
    color:var(--color_text_main);
}

.issue_btn_list {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
}

.issue_btn {
    display:inline-flex;
    align-items:center;
    padding:10px 16px;
    font-size:1.4rem;
    font-weight:600;
    color:var(--color_text_main);
    background-color:#f8fafc;
    border:1px solid var(--color_border);
    border-radius:8px;
    transition:var(--transition_fast);
}

.issue_btn:hover {
    color:#fff;
    background-color:var(--color_green);
    border-color:var(--color_green);
    box-shadow:0 4px 6px -1px rgba(76, 167, 58, 0.2);
    transform:translateY(-1px);
}

/* -------------------- [03.abstracts_in_video] 전용 스타일 -------------------- */
.video_grid {
    display:grid;
    gap:32px;
    grid-template-columns:repeat(3, 1fr);
}

.video_card {
    display:flex;
    flex-direction:column;
    background-color:#fff;
    border:1px solid var(--color_border);
    border-radius:16px;
    box-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.02);
    transition:var(--transition_normal);
    overflow:hidden;
}

.video_card:hover {
    border-color:var(--color_green);
    box-shadow:0 10px 20px -5px rgba(76, 167, 58, 0.15);
    transform:translateY(-4px);
}

.video_thumb_wrap {
    aspect-ratio:16 / 9;
    position:relative;
    width:100%;
    background-color:#e2e8f0;
    cursor:pointer;
    overflow:hidden;
}

.video_thumb_img {
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform 0.5s ease;
}

.video_card:hover .video_thumb_img {
    transform:scale(1.05);
}

.video_play_overlay {
    display:flex;
    align-items:center;
    justify-content:center;
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background-color:rgba(0, 0, 0, 0.4);
    opacity:0;
    transition:var(--transition_fast);
}

.video_card:hover .video_play_overlay {
    opacity:1;
}

.video_play_icon {
    display:flex;
    align-items:center;
    justify-content:center;
    width:64px;
    height:64px;
    padding-left:4px;
    font-size:2.4rem;
    color:var(--color_green);
    background-color:rgba(255, 255, 255, 0.9);
    border-radius:50%;
    box-shadow:0 4px 10px rgba(0, 0, 0, 0.2);
    transition:var(--transition_normal);
    transform:scale(0.8);
}

.video_card:hover .video_play_icon {
    transform:scale(1);
}

.video_info {
    display:flex;
    flex-direction:column;
    flex-grow:1;
    padding:24px;
}

.video_title {
    display:-webkit-box;
    margin-bottom:16px;
    font-size:1.8rem;
    font-weight:700;
    line-height:1.5;
    color:var(--color_text_main);
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

.video_title a {
    transition:var(--transition_fast);
}

.video_title a:hover {
    color:var(--color_green);
    text-decoration:underline;
}

.video_meta {
    margin-top:auto;
    font-size:1.4rem;
    font-weight:500;
    color:var(--color_text_muted);
}

/* Video Modal Styles */
.video_modal_backdrop {
    display:none;
    align-items:center;
    justify-content:center;
    position:fixed;
    top:0;
    left:0;
    padding:16px;
    width:100%;
    height:100%;
    background-color:rgba(0, 0, 0, 0.6);
    backdrop-filter:blur(8px);
    z-index:9999;
}

.video_modal_content {
    position:relative;
    width:100%;
    max-width:1000px;
    background-color:#000000;
    border-radius:12px;
    box-shadow:0 25px 50px -12px rgba(0, 0, 0, 0.5);
    overflow:hidden;
}

.video_modal_close {
    display:flex;
    align-items:center;
    justify-content:center;
    position:absolute;
    top:16px;
    right:16px;
    width:44px;
    height:44px;
    font-size:2.4rem;
    color:#fff;
    background-color:rgba(0, 0, 0, 0.6);
    border-radius:50%;
    transition:var(--transition_fast);
    z-index:10;
}

.video_modal_close:hover {
    color:#fff;
    background-color:var(--color_green);
    transform:scale(1.1);
}

.video_wrapper {
    position:relative;
    padding-bottom:56.25%;
    width:100%;
    height:0;
}

.video_element {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    outline:none;
}

/* -------------------- [04.editorial_board] 전용 스타일 -------------------- */
.editorial_layout_grid {
    display:flex;
    flex-direction:row;
    align-items:flex-start;
    gap:40px;
}

.editorial_main_content {
    display:flex;
    flex-direction:column;
    flex-grow:1;
    gap:40px;
    width:100%;
}

.editor_group_card {
    padding:40px 32px;
    background-color:#fff;
    border:1px solid var(--color_border);
    border-radius:16px;
    box-shadow:0 4px 6px -1px rgba(0,0,0,0.02);
}

.editor_group_title {
    margin-bottom:24px;
    padding-left:12px;
    font-size:2.8rem;
    font-weight:800;
    color:var(--color_text_main);
    border-left:4px solid var(--color_green);
}

.editor_sub_group_title {
    margin-top:32px;
    margin-bottom:16px;
    padding-bottom:8px;
    font-size:2.0rem;
    font-weight:700;
    color:var(--color_emerald_dark);
    border-bottom:1px dashed var(--color_border);
}

.editor_grid {
    display:grid;
    gap:16px;
    grid-template-columns:repeat(2,1fr);
}

.editor_card {
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:20px;
    background-color:#f8fafc;
    border:1px solid var(--color_border_light);
    border-radius:12px;
    transition:var(--transition_normal);
}

.editor_card:hover {
    background-color:#fff;
    border-color:var(--color_green);
    box-shadow:0 10px 15px -3px rgba(76,167,58,0.1);
    transform:translateY(-2px);
}

.editor_info {
    display:flex;
    flex-direction:column;
    gap:6px;
    padding-right:16px;
}

.editor_name {
    font-size:1.8rem;
    font-weight:700;
    color:var(--color_text_main);
}

.editor_affiliation {
    font-size:1.4rem;
    font-weight:400;
    line-height:1.5;
    color:var(--color_text_muted);
}

.orcid_link {
    display:flex;
    flex-shrink:0;
    align-items:center;
    justify-content:center;
    width:40px;
    height:40px;
    font-size:2.4rem;
    color:#A6CE39;
    background-color:#fff;
    border:1px solid var(--color_border);
    border-radius:50%;
    transition:var(--transition_fast);
}

.orcid_link:hover {
    color:#fff;
    background-color:#A6CE39;
    border-color:#A6CE39;
}

.editorial_toc_sidebar {
    display:block;
    flex-shrink:0;
    width:280px;
    position:sticky;
    top:100px;
}

/* -------------------- [05.author_guide] 전용 스타일 -------------------- */
.author_guide_layout_grid {
    display:flex;
    flex-direction:row;
    align-items:flex-start;
    gap:40px;
    min-width:0;
}

.author_guide_main_content {
    display:flex;
    flex-direction:column;
    flex-grow:1;
    gap:40px;
    width:100%;
    min-width:0;
}

.guide_section_card {
    padding:48px 40px;
    background-color:#fff;
    border:1px solid var(--color_border);
    border-radius:16px;
    box-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.02);
}

.guide_title {
    margin-bottom:24px;
    padding-left:12px;
    font-size:2.8rem;
    font-weight:800;
    color:#111827;
    border-left:4px solid var(--color_green);
}

.guide_sub_title {
    margin-top:32px;
    margin-bottom:16px;
    font-size:2.0rem;
    font-weight:700;
    color:var(--color_text_main);
}

.guide_minor_title {
    margin-top:24px;
    margin-bottom:12px;
    font-size:1.6rem;
    font-weight:600;
    color:#374151;
}

.guide_text {
    margin-bottom:16px;
    line-height:1.8;
    font-size:1.6rem;
    color:var(--color_text_muted);
    text-align:justify;
    text-indent:10px;
    overflow-wrap:break-word;
    word-break:keep-all;
}

.guide_text.bold {
    font-weight:bold;
}

.guide_text:last-child {
    margin-bottom:0;
}

.guide_list {
    display:flex;
    flex-direction:column;
    gap:12px;
    margin-bottom:16px;
    padding-left:20px;
    list-style-type:disc;
}

.guide_list li {
    font-size:1.6rem;
    line-height:1.7;
    color:var(--color_text_muted);
}

.guide_list strong {
    font-weight:700;
    color:var(--color_text_main);
}

.guide_list.list_circle li {
    display:flex;
}

.guide_list.list_circle li .list_num {
    margin:5px 5px 0 0;
    font-size: 1rem;
    color: var(--color_text_muted);
}

.guide_link {
    font-weight:600;
    color:var(--color_emerald_dark);
    text-decoration:underline;
    overflow-wrap:break-word;
    word-break:break-all;
    transition:var(--transition_fast);
}

.guide_link:hover {
    color:var(--color_green_hover);
}

.guide_table_wrapper {
    margin:24px 0;
    width:100%;
    overflow-x:auto;
}

.guide_table {
    width:100%;
    min-width:600px;
    font-size:1.5rem;
    background-color:#fff;
    border-collapse:collapse;
}

.guide_table th, .guide_table td {
    padding:14px 16px;
    line-height:1.5;
    text-align:left;
    border:1px solid var(--color_border);
}

.guide_table th.center, .guide_table td.center {
    text-align:center;
}

.guide_table th.left, .guide_table td.left {
    text-align:left;
}

.guide_table th {
    font-weight:700;
    color:#111827;
    background-color:#f8fafc;
    border-bottom:2px solid var(--color_green);
}

.guide_table td {
    color:var(--color_text_muted);
}

.guide_toc_sidebar {
    display:flex;
    flex-direction:column;
    flex-shrink:0;
    width:280px;
    max-height:calc(100vh - 120px);
    position:sticky;
    top:100px;
    overflow:hidden;
}

.guide_toc_sidebar .toc_box {
    display:flex;
    flex-direction:column;
    min-height:0;
    max-height:100%;
    overflow:hidden;
}

.guide_toc_sidebar .toc_nav {
    display:flex;
    flex-direction:column;
    flex:1;
    gap:4px;
    min-height:0;
    overflow-y:auto;
    scrollbar-width:thin;
    scrollbar-color:rgba(0,0,0,0.1) transparent;
}

.guide_toc_sidebar .toc_nav::-webkit-scrollbar {
    width:5px;
}

.guide_toc_sidebar .toc_nav::-webkit-scrollbar-track {
    background-color:transparent;
}

.guide_toc_sidebar .toc_nav::-webkit-scrollbar-thumb {
    border-radius:4px;
    background-color:rgba(0,0,0,0.08);
    transition:background-color 0.2s ease;
}

.guide_toc_sidebar .toc_nav:hover {
    scrollbar-color:rgba(76,167,58,0.3) transparent;
}

.guide_toc_sidebar .toc_nav:hover::-webkit-scrollbar-thumb {
    background-color:rgba(76,167,58,0.3);
}

.guide_toc_sidebar .toc_nav::-webkit-scrollbar-thumb:hover {
    background-color:rgba(76,167,58,0.4);
}

.guide_toc_sidebar .toc_nav .toc_link {
    display:flex;
    align-items:flex-start;
    gap:6px;
    word-break:break-word;
}

.guide_toc_sidebar .toc_nav .toc_link_num {
    flex-shrink:0;
    min-width:13px;
}

.guide_toc_sidebar .toc_nav .toc_link_text {
    flex:1;
    min-width:0;
}

.guide_page_title_row {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:16px;
}

.guide_page_title_row .page_title {
    flex:1 1 auto;
    margin-bottom:0;
    min-width:0;
}

.revision_history_wrap {
    display:inline-flex;
    flex-direction:column;
    position:relative;
    flex-shrink:0;
}

.revision_history_btn {
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:8px 16px;
    font-size:1.4rem;
    font-weight:600;
    line-height:1.4;
    color:#475569;
    background-color:var(--color_light_bg);
    border:1px solid var(--color_border);
    border-radius:8px;
    cursor:pointer;
    transition:var(--transition_fast);
}

.revision_history_btn:hover {
    color:#334155;
    background-color:#e8eef4;
    border-color:#cbd5e1;
}

.revision_history_btn_icon {
    font-size:1.2rem;
    line-height:1;
    transition:transform 0.2s ease;
}

.revision_history_btn.is_open .revision_history_btn_icon {
    transform:rotate(180deg);
}

.revision_history_layer {
    display:none;
    position:absolute;
    top:100%;
    right:0;
    width:200px;
    max-width:calc(100vw - 32px);
    margin-top:8px;
    padding:16px 20px;
    background-color:#fff;
    border:1px solid var(--color_border);
    border-radius:12px;
    box-shadow:0 4px 12px rgba(0,0,0,0.08);
    overflow:hidden;
    z-index:20;
}

.revision_history_layer.is_open {
    display:block;
}

.revision_history_list {
    display:flex;
    flex-direction:column;
    gap:10px;
    margin:0;
    padding:0;
    list-style:none;
}

.revision_history_item {
    font-size:1.3rem;
    line-height:1.5;
    color:var(--color_text_muted);
    text-align:right;
}

/* -------------------- [07.most_download] 전용 스타일 -------------------- */
.download_count_number {
    display:flex;
    align-items:center;
    gap:6px;
    font-size:1.5rem;
    font-weight:800;
    line-height:1;
    color:#4b5563;
}

.download_count_number i {
    font-size:1.6rem;
    color:var(--color_green);
}

.download_count_label {
    margin-top:4px;
    font-size:1.2rem;
    font-weight:700;
    color:var(--color_text_muted);
    letter-spacing:0.05em;
    text-transform:uppercase;
}

/* -------------------- [08.contact_us] 전용 스타일 -------------------- */
.contact_card {
    padding:56px 48px;
    background-color:#fff;
    border:1px solid var(--color_border);
    border-radius:16px;
    box-shadow:0 10px 25px -5px rgba(0, 0, 0, 0.05);
}

.contact_header {
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:16px;
    margin-bottom:48px;
    text-align:center;
}

.contact_logo_circle {
    display:flex;
    align-items:center;
    justify-content:center;
    width:64px;
    height:64px;
    font-size:2.8rem;
    color:#fff;
    background:linear-gradient(135deg, var(--color_emerald_dark), var(--color_green));
    border-radius:50%;
    box-shadow:0 4px 10px rgba(16, 185, 129, 0.2);
}

.contact_org_name {
    font-size:2.8rem;
    font-weight:800;
    line-height:1.3;
    color:#111827;
}

.contact_grid {
    display:grid;
    gap:20px;
    grid-template-columns:repeat(2, 1fr);
}

.address_item {
    grid-column:1 / -1;
}

.contact_item {
    display:flex;
    align-items:flex-start;
    gap:16px;
    padding:24px;
    background-color:#f8fafc;
    border:1px solid var(--color_border_light);
    border-radius:12px;
    transition:var(--transition_normal);
}

.contact_item:hover {
    background-color:#fff;
    border-color:var(--color_green);
    box-shadow:0 10px 15px -3px rgba(76, 167, 58, 0.1);
    transform:translateY(-2px);
}

.contact_icon {
    display:flex;
    flex-shrink:0;
    align-items:center;
    justify-content:center;
    width:48px;
    height:48px;
    font-size:2.0rem;
    color:var(--color_green);
    background-color:#fff;
    border:1px solid var(--color_border);
    border-radius:12px;
    transition:var(--transition_fast);
}

.contact_item:hover .contact_icon {
    color:#fff;
    background-color:var(--color_green);
    border-color:var(--color_green);
}

.contact_info {
    display:flex;
    flex-direction:column;
    gap:6px;
}

.contact_label {
    font-size:1.3rem;
    font-weight:700;
    color:var(--color_text_muted);
    letter-spacing:0.05em;
    text-transform:uppercase;
}

.contact_value {
    font-size:1.6rem;
    font-weight:600;
    line-height:1.5;
    color:var(--color_text_main);
    word-break:keep-all;
}

.contact_value a {
    color:#2563eb;
    transition:var(--transition_fast);
}

.contact_value a:hover {
    color:var(--color_green);
    text-decoration:underline;
}

/* -------------------- [09.article_view] 전용 스타일 -------------------- */

/* Retracted Article */
.retracted {
	position:relative;
	-webkit-user-select:none;
	user-select:none
}
.retracted:before {
	content:"";
	display:block;
	position:absolute;
	top:81px;
	right:0;
	bottom:0;
	left:0;
	background-color:rgba(255,255,255,0.7);
	-webkit-backdrop-filter:blur(3px);
	backdrop-filter:blur(5px);
	z-index:30;
	pointer-events:none;
}
.retracted:after {
	content:"";
	display:block;
	position:fixed;
	top:81px;
	right:0;
	bottom:0;
	left:0;
	background-image:url('../images/img_retracted.png');
	background-repeat:no-repeat;
	background-position:center center;
	background-size:auto 146px;
	transform:rotate(-15deg);
	z-index:30;
	pointer-events:none;
}


.article_page_header {
    padding-bottom:40px;
}

.article_journal_name {
    display:inline-block;
    margin-bottom:16px;
    padding:6px 14px;
    font-size:1.4rem;
    font-weight:700;
    color:#059669;
    letter-spacing:0.05em;
    text-transform:uppercase;
    background-color:#ecfdf5;
    border-radius:9999px;
}

.article_journal_name_row {
    display:flex;
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:16px;
    width:100%;
    margin-bottom:16px;
}

.article_journal_name_row .article_journal_name {
    margin-bottom:0;
}

#open_crossmark {
    display:block;
    flex-shrink:0;
}

#open_crossmark a {
    display:block;
    line-height:0;
}

.crossmark {
    display:block;
    width:165px;
    height:auto;
}

.crossmark_mobile {
    display:none;
    width:42px;
    height:auto;
}

@media (max-width:767px) {
    .article_journal_name_row {
        gap:12px;
    }

    .crossmark {
        display:none;
    }

    .crossmark_mobile {
        display:block;
    }
}

.article_detail_title {
    margin-bottom:16px;
    line-height:1.3;
    font-size:4.0rem;
    font-weight:800;
    color:#111827;
    letter-spacing:-0.02em;
    overflow-wrap:break-word;
    word-break:keep-all;
}

.article_author_list {
    margin-bottom:8px;
    font-size:1.8rem;
    font-weight:600;
    line-height:1.6;
    color:#1f2937;
}

.article_author_list sup {
    font-size:1.2rem;
    font-weight:700;
    color:var(--color_green);
}

.article_affiliation_list {
    display:flex;
    flex-direction:column;
    gap:4px;
    margin-bottom:24px;
    font-size:1.4rem;
    line-height:1.5;
    color:var(--color_text_muted);
}

.article_meta_bar {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding-top:24px;
    border-top:1px solid var(--color_border_light);
}

.article_dates_group {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:20px;
    min-width:0;
    font-size:1.4rem;
    color:var(--color_text_muted);
}

.article_dates_group strong {
    margin-right:4px;
    color:#475569;
}

.article_doi_link {
    display:inline-flex;
    align-items:center;
    gap:6px;
    max-width:100%;
    font-weight:600;
    color:#2563eb;
    overflow-wrap:break-word;
    word-break:break-all;
}

.article_doi_link:hover {
    text-decoration:underline;
}

.share_wrap {
    display:inline-flex;
    /* flex-direction:column; */
    position:relative;
}

.share_popover_layer {
    display:none;
    flex-direction:column;
    position:absolute;
    top:100%;
    right:0;
    gap:8px;
    width:180px;
    margin-top:8px;
    padding:8px;
    background-color:#fff;
    border:1px solid #cbd5e1;
    border-radius:8px;
    box-shadow:0 4px 12px rgba(0,0,0,0.1);
    z-index:20;
}

.share_popover_layer.is_open {
    display:flex;
}

.share_popover_layer .btn_toolbar {
    display:flex;
    justify-content:flex-start;
    width:100%;
}

@media (max-width:767px) {
    .share_popover_layer {
        width:160px;
    }
}

/* 2. Article Body Grid & Content */
.article_layout_grid {
    display:flex;
    flex-direction:row;
    align-items:flex-start;
    gap:40px;
    min-width:0;
}

/* Main White Card */
.article_main_content {
    flex-grow:1;
    width:100%;
    min-width:0;
    padding:48px 40px;
    background-color:#fff;
    border:1px solid var(--color_border);
    border-radius:16px;
    box-shadow:0 4px 6px -1px rgba(0,0,0,0.02);
}

.content_section {
    margin-bottom:48px;
}

.content_section a {
    color:var(--color_emerald_dark);
    font-weight:500;
}

.content_section a:hover {
    color:var(--color_green);
    text-decoration:underline;
    text-underline-offset:4px;
}

.content_section:last-child {
    margin-bottom:0;
}

/* Typography & Paragraphs */
.article_h2 {
    margin-bottom:24px;
    padding-left:12px;
    font-size:2.4rem;
    font-weight:800;
    color:#111827;
    border-left:4px solid var(--color_green);
}

.article_h3 {
    margin-top:32px;
    margin-bottom:16px;
    font-size:1.8rem;
    font-weight:700;
    color:#1f2937;
}

.article_text {
    margin-bottom:16px;
    font-size:1.6rem;
    line-height:1.8;
    color:#4b5563;
    text-align:justify;
}

/* Abstract Box Highlight */
.abstract_box {
    padding:32px;
    background-color:#F4F9F1;
    border:1px solid rgba(76, 167, 58, 0.2);
    border-radius:12px;
}

.abstract_box .article_h2 {
    color:var(--color_emerald_dark);
    border-color:var(--color_emerald_dark);
}

.keyword_wrap {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
    margin-top:24px;
    padding-top:24px;
    border-top:1px dashed rgba(76, 167, 58, 0.3);
}

.keyword_title {
    margin-right:8px;
    font-size:1.4rem;
    font-weight:700;
    color:#111827;
}

.keyword_tag {
    display:inline-flex;
    padding:6px 14px;
    font-size:1.4rem;
    font-weight:500;
    color:var(--color_text_muted);
    background-color:#fff;
    border:1px solid var(--color_border);
    border-radius:9999px;
}

/* Figures & Tables Placeholders */
.article_figure_block {
    margin:40px 0;
    padding:24px;
    text-align:center;
    background-color:#f8fafc;
    border:1px solid var(--color_border);
    border-radius:12px;
}

.article_figure_img {
    display:block;
    margin:0 auto 16px;
    max-width:100%;
    height:auto;
    border-radius:8px;
    box-shadow:0 2px 4px rgba(0,0,0,0.05);
}

.article_figure_caption {
    font-size:1.4rem;
    line-height:1.6;
    color:var(--color_text_muted);
    text-align:left;
}

.article_figure_caption strong {
    font-weight:700;
    color:#111827;
}

/* References */
.reference_list {
    display:flex;
    flex-direction:column;
    gap:16px;
}

.reference_item {
    padding-left:24px;
    font-size:1.4rem;
    line-height:1.6;
    color:var(--color_text_muted);
    text-indent:-24px;
}

.reference_item strong {
    color:#1f2937;
}

/* 3. Sticky TOC Sidebar */
.article_toc_sidebar {
    display:block;
    flex-shrink:0;
    width:280px;
    position:sticky;
    top:100px;
}

/* Figures Layer Popup */
.article_figure_modal_panel {
    display:flex;
    flex-direction:column;
    position:relative;
    width:100%;
    max-width:var(--max_width);
    max-height:calc(100vh - 32px);
    padding:0;
    background-color:#fff;
    border-radius:12px;
    box-shadow:0 25px 50px -12px rgba(0, 0, 0, 0.25);
    overflow:hidden;
}

.article_figure_modal_header {
    display:block;
    flex-shrink:0;
    padding-top:24px;
    padding-right:64px;
    padding-bottom:24px;
    padding-left:32px;
    font-size:20px;
    font-weight:800;
    line-height:1.4;
    color:#111827;
    background-color:#fff;
    border-bottom:1px solid var(--color_border);
}

.article_figure_modal_body {
    display:block;
    flex-grow:1;
    flex-shrink:1;
    min-height:0;
    padding:32px;
    overflow-x:hidden;
    overflow-y:auto;
}

.article_figure_modal_body .article_figure_block {
    margin-top:0;
    margin-bottom:24px;
}

.article_figure_modal_body .article_figure_block:last-child {
    margin-bottom:0;
}

.article_figure_modal_body .article_figure_img {
    max-width:100%;
    height:auto;
}

.article_figure_modal_empty {
    display:block;
    padding:24px;
    font-size:16px;
    font-weight:500;
    line-height:1.6;
    color:var(--color_text_muted);
    text-align:center;
}

@media (max-width:767px) {
    .article_figure_modal_panel {
        max-height:calc(100vh - 24px);
        border-radius:8px;
    }

    .article_figure_modal_header {
        padding-top:16px;
        padding-right:56px;
        padding-bottom:16px;
        padding-left:20px;
        font-size:18px;
    }

    .article_figure_modal_body {
        padding:16px;
    }
}

/* Citation Modal */
.citation_modal {
    display:none;
    position:fixed;
    top:0;
    right:0;
    bottom:0;
    left:0;
    padding:24px;
    background-color:rgba(0,0,0,0.6);
    backdrop-filter:blur(4px);
    overflow-y:auto;
    z-index:9999;
}

.citation_modal_panel {
    display:flex;
    flex-direction:column;
    position:absolute;
    top:50%;
    left:50%;
    width:100%;
    max-width:900px;
    max-height:calc(100vh - 48px);
    margin:0;
    background-color:#fff;
    border:1px solid var(--color_border);
    border-radius:16px;
    box-shadow:0 25px 50px -12px rgba(0,0,0,0.15);
    overflow:hidden;
    transform:translate(-50%,-50%);
}

.citation_modal_header {
    display:flex;
    flex-direction:row;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
    padding:24px 32px;
    background-color:#fff;
    border-bottom:1px solid var(--color_border);
}

.citation_modal_header_info {
    display:flex;
    flex-direction:column;
    gap:8px;
    flex-grow:1;
    min-width:0;
}

.citation_modal_journal {
    display:inline-block;
    width:fit-content;
    padding:4px 12px;
    font-size:12px;
    font-weight:700;
    line-height:1.4;
    color:#059669;
    letter-spacing:0.05em;
    text-transform:uppercase;
    background-color:#ecfdf5;
    border-radius:9999px;
}

.citation_modal_title {
    font-size:20px;
    font-weight:800;
    line-height:1.4;
    color:#111827;
    letter-spacing:-0.02em;
    overflow-wrap:break-word;
    word-break:keep-all;
}

.citation_modal_close {
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    width:40px;
    height:40px;
    font-size:18px;
    color:#64748b;
    background-color:#f1f5f9;
    border:none;
    border-radius:8px;
    cursor:pointer;
    transition:var(--transition_fast);
}

.citation_modal_close:hover {
    color:#fff;
    background-color:var(--color_green);
}

.citation_modal_body {
    display:flex;
    flex-direction:row;
    flex-grow:1;
    min-height:0;
}

.citation_modal_nav {
    display:flex;
    flex-direction:column;
    flex-shrink:0;
    width:160px;
    background-color:#f8fafc;
}

.citation_modal_nav .cite_tab {
    display:block;
    padding:14px 20px;
    font-size:14px;
    font-weight:600;
    line-height:1.4;
    color:var(--color_text_muted);
    text-decoration:none;
    border-bottom:1px solid var(--color_border_light);
    border-right:1px solid var(--color_border);
    cursor:pointer;
    transition:var(--transition_fast);
}

.citation_modal_nav .cite_tab:hover {
    color:var(--color_emerald_dark);
    background-color:#fff;
}

.citation_modal_nav .cite_tab.active {
    color:var(--color_emerald_dark);
    background-color:#fff;
    border-right:1px solid #fff;
}

.citation_modal_content {
    display:flex;
    flex-direction:column;
    flex-grow:1;
    min-width:0;
    min-height:280px;
    max-height:420px;
    padding:24px 28px;
    background-color:#fff;
    overflow-y:auto;
}

.citation_modal_content .cite_content pre {
    margin:0;
    padding:16px;
    font-size:13px;
    font-family:'Courier New',Courier,monospace;
    line-height:1.7;
    color:#374151;
    white-space:pre-wrap;
    word-break:break-word;
    background-color:#f8fafc;
    border:1px solid var(--color_border_light);
    border-radius:8px;
}

@media (max-width:767px) {
    .citation_modal {
        padding:16px;
    }

    .citation_modal_panel {
        max-height:calc(100vh - 32px);
        border-radius:12px;
    }

    .citation_modal_header {
        padding:20px;
    }

    .citation_modal_title {
        font-size:16px;
    }

    .citation_modal_body {
        flex-direction:column;
    }

    .citation_modal_nav {
        display:flex;
        flex-direction:row;
        flex-wrap:wrap;
        width:100%;
        border-right:none;
        border-bottom:1px solid var(--color_border);
    }

    .citation_modal_nav .cite_tab {
        flex-grow:1;
        padding:10px 12px;
        font-size:12px;
        text-align:center;
        border-left:none;
        border-bottom:none;
    }

    .citation_modal_nav .cite_tab.active {
        border-left:none;
        border-bottom:2px solid var(--color_green);
    }

    .citation_modal_content {
        max-height:360px;
        padding:16px;
    }
}

/* Cited by Modal */
.cited_by_modal {
    display:none;
    align-items:center;
    justify-content:center;
    position:fixed;
    top:0;
    right:0;
    bottom:0;
    left:0;
    padding:24px;
    background-color:rgba(0,0,0,0.6);
    backdrop-filter:blur(4px);
    overflow-y:auto;
    z-index:9999;
}

.cited_by_modal_panel {
    display:flex;
    flex-direction:column;
    position:relative;
    width:100%;
    max-width:800px;
    max-height:calc(100vh - 48px);
    background-color:#fff;
    border:1px solid var(--color_border);
    border-radius:16px;
    box-shadow:0 25px 50px -12px rgba(0,0,0,0.15);
    overflow:hidden;
}

.cited_by_modal_header {
    display:flex;
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding:20px 28px;
    background-color:#fff;
    border-bottom:1px solid var(--color_border_light);
}

.cited_by_modal_title {
    font-size:20px;
    font-weight:800;
    line-height:1.4;
    color:#111827;
    letter-spacing:-0.02em;
}

.cited_by_modal_close {
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    width:40px;
    height:40px;
    font-size:18px;
    color:#64748b;
    background-color:#f1f5f9;
    border:none;
    border-radius:8px;
    cursor:pointer;
    transition:var(--transition_fast);
}

.cited_by_modal_close:hover {
    color:#fff;
    background-color:var(--color_green);
}

.cited_by_modal_body {
    display:block;
    flex-grow:1;
    min-height:0;
    padding:0;
    overflow-y:auto;
}

.cited_by_list {
    display:flex;
    flex-direction:column;
    margin:0;
    padding:0;
    list-style:none;
}

.cited_by_item {
    display:flex;
    flex-direction:row;
    align-items:flex-start;
    gap:16px;
    padding:20px 28px;
    border-bottom:1px solid var(--color_border_light);
}

.cited_by_item:last-child {
    border-bottom:none;
}

.cited_by_num {
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    margin-top:5px;
    width:25px;
    height:25px;
    font-size:14px;
    font-weight:700;
    line-height:1;
    color:#fff;
    background-color:var(--color_emerald_dark);
    border-radius:50%;
}

.cited_by_text {
    margin:0;
    font-size:14px;
    font-weight:400;
    line-height:1.7;
    color:#374151;
    overflow-wrap:break-word;
    word-break:keep-all;
}

.cited_by_text p:first-child {
	font-weight:700;
}

.cited_by_doi {
    font-weight:600;
    color:#be123c;
    text-decoration:none;
    transition:var(--transition_fast);
}

.cited_by_doi:hover {
    color:var(--color_green);
    text-decoration:underline;
}

.issue_actions > button.btn_toolbar.btn_cited_by {
    color:#fff;
    background-color:#059669;
    border-color:#059669;
}

.issue_actions > button.btn_toolbar.btn_cited_by:hover {
    color:#fff;
    background-color:#047857;
    border-color:#047857;
}

.issue_actions > button.btn_toolbar.btn_cited_by .label {
    font-size:14px;
    font-weight:600;
    line-height:1.4;
    color:#fff;
}

.issue_actions > button.btn_toolbar.btn_cited_by .count {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:20px;
    margin-left:6px;
    padding:2px 8px;
    font-size:12px;
    font-weight:700;
    line-height:1.4;
    color:#059669;
    background-color:#fff;
    border-radius:5px;
}

@media (max-width:767px) {
    .cited_by_modal {
        padding:16px;
    }

    .cited_by_modal_panel {
        max-height:calc(100vh - 32px);
        border-radius:12px;
    }

    .cited_by_modal_header {
        padding:16px 20px;
    }

    .cited_by_modal_title {
        font-size:18px;
    }

    .cited_by_item {
        padding:16px 20px;
        gap:12px;
    }

    .cited_by_text {
        font-size:13px;
    }
}

/* JS Scroll Spy 로 활성화되는 클래스 */
/* -------------------- [10.comn_list] 전용 스타일 -------------------- */
.issue_info_box {
    display:flex;
    flex-direction:row;
    gap:24px;
    padding:32px;
    background-color:#fff;
    border:1px solid var(--color_border);
    border-radius:16px;
    box-shadow:0 4px 6px -1px rgba(0,0,0,0.02);
    align-items:center;
    justify-content:space-between;
}

.issue_details {
    display:flex;
    flex-direction:column;
    gap:8px;
}

.issue_vol {
    font-size:2.4rem;
    font-weight:700;
    color:var(--color_green);
}

.issue_date {
    display:flex;
    align-items:center;
    gap:8px;
    font-size:1.6rem;
    color:var(--color_text_muted);
}

.result_wrap {
    padding:32px 0 8px 0;
}

.result_wrap .num {
    font-size:2rem;
    font-weight:bold;
    color:var(--color_green);
}

.result_wrap .text {
    color:var(--color_text_muted);
}

.list_toolbar {
    display:flex;
    flex-direction:row;
    gap:16px;
    margin-bottom:32px;
    padding:16px 24px;
    background-color:#F8FAFC;
    border:1px solid var(--color_border);
    border-radius:12px;
    transition:var(--transition_normal);
    align-items:center;
    justify-content:space-between;
}

.toolbar_left {
    display:flex;
    align-items:center;
    gap:24px;
}

.custom_checkbox_wrapper {
    display:flex;
    align-items:center;
    gap:8px;
    cursor:pointer;
}

.custom_checkbox {
    position:relative;
    width:20px;
    height:20px;
    background-color:#fff;
    border:2px solid #cbd5e1;
    border-radius:4px;
    appearance:none;
    cursor:pointer;
    transition:var(--transition_fast);
}

.custom_checkbox:checked {
    background-color:var(--color_green);
    border-color:var(--color_green);
}

.custom_checkbox:checked::after {
    position:absolute;
    top:50%;
    left:50%;
    font-family:"Font Awesome 6 Free";
    font-size:1.2rem;
    font-weight:900;
    color:#fff;
    content:'\f00c';
    transform:translate(-50%, -50%);
}

.checkbox_label {
    font-size:1.6rem;
    font-weight:600;
    color:#111827;
    cursor:pointer;
}

.toolbar_right {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:12px;
}

.item_chk_area {
    flex-shrink:0;
    padding-top:4px;
}

/* ==================== [반응형 스타일 - 데스크톱 퍼스트] ==================== */
@media (max-width:1023px) {

    .about_layout_grid {
        flex-direction:column;
        gap:32px;
    }

    .about_toc_sidebar {
        display:none;
    }

    .journal_info_card {
        flex-direction:column;
    }

    .journal_actions {
        align-items:flex-start;
        width:100%;
    }

    .result_wrap {
        padding:28px 0;
    }

    .result_wrap .num {
        font-size:1.9rem;
    }

    .recent_grid {
        grid-template-columns:repeat(2, 1fr);
    }

    .archives_split_container {
        flex-direction:column;
        gap:32px;
    }

    .archive_sidebar {
        display:none;
    }

    .video_grid {
        grid-template-columns:repeat(2, 1fr);
    }

    .editorial_layout_grid {
        flex-direction:column;
        gap:32px;
    }

    .editorial_toc_sidebar {
        display:none;
    }

    .author_guide_layout_grid {
        flex-direction:column;
        gap:32px;
    }

    .guide_toc_sidebar {
        display:none;
    }

    .guide_page_title_row {
        gap:12px;
    }

    .revision_history_layer {
        width:200px;
    }

    .article_layout_grid {
        flex-direction:column;
        gap:32px;
    }

    .article_toc_sidebar {
        display:none;
    }

}

@media (max-width:767px) {

    .about_section_card {
        padding:32px 24px;
    }

    .oa_highlight_box {
        flex-direction:column;
        align-items:center;
        gap:16px;
    }

    .oa_logo_group img {
        max-width:220px;
        height:44px;
    }

    .year_row {
        flex-direction:column;
        gap:16px;
    }

    .video_grid {
        grid-template-columns:1fr;
    }

    .editor_group_card {
        padding:32px 24px;
    }

    .editor_grid {
        grid-template-columns:1fr;
    }

    .guide_section_card {
        padding:32px 24px;
    }

    .guide_page_title_row {
        flex-direction:column;
        align-items:flex-start;
        gap:12px;
    }

    .revision_history_wrap {
        width:100%;
        max-width:100%;
    }

    .revision_history_btn {
        justify-content:space-between;
        width:100%;
    }

    .revision_history_layer {
        right:0;
        left:0;
        width:100%;
        max-width:100%;
    }

    .contact_card {
        padding:40px 24px;
    }

    .contact_org_name {
        font-size:2.4rem;
    }

    .contact_grid {
        grid-template-columns:1fr;
    }

    .article_detail_title {
        font-size:3.2rem;
    }

    .article_main_content {
        padding:32px 24px;
    }

    .issue_info_box {
        flex-direction:column;
    }

    .result_wrap {
        padding:24px 0;
    }

    .result_wrap .num {
        font-size:1.8rem;
    }

    .list_toolbar {
        flex-direction:column;
    }

}

@media (max-width:484px) {

    .oa_highlight_box {
        flex-direction:column;
        flex-wrap:wrap;
        align-items:flex-start;
        width:100%;
        max-width:100%;
    }

    .oa_logo_group {
        width:100%;
    }

    .oa_desc {
        width:100%;
        min-width:0;
        overflow-wrap:break-word;
        word-break:keep-all;
    }

}

@media (max-width:639px) {

    .recent_grid {
        grid-template-columns:1fr;
    }

    .article_item {
        flex-direction:column;
        gap:16px;
        padding:24px 16px;
    }

    .card_cnt_badge {
        display:flex;
        flex-direction:row;
        align-items:center;
        justify-content:center;
        flex-wrap:wrap;
        position:static;
        top:auto;
        right:auto;
        align-self:stretch;
        gap:8px;
        padding:10px 14px;
        width:100%;
        min-width:0;
    }

    .download_count_number {
        gap:4px;
        font-size:1.4rem;
    }

    .download_count_number i {
        font-size:1.4rem;
    }

    .download_count_label {
        margin-top:0;
        font-size:1.2rem;
    }

    .item_content {
        padding-right:0;
        width:100%;
        min-width:0;
    }

    .item_title {
        margin-bottom:10px;
        font-size:1.8rem;
    }

}

