/* 학술지 상세 페이지 */
.jd { padding-top: 24px; padding-bottom: 48px; }
.jd-status { color: var(--text-2); }
.jd-status.error { color: #b91c1c; }
.jd-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; padding-bottom: 18px; border-bottom: 2px solid var(--blue); margin-bottom: 18px; flex-wrap: wrap; }
.jd-kicker { margin: 0 0 4px; color: var(--text-3); font-size: 13px; }
.jd-head h1 { margin: 0 0 4px; font-size: clamp(22px, 3vw, 30px); font-weight: 900; letter-spacing: -.02em; color: var(--blue); line-height: 1.3; }
.jd-alt { margin: 0 0 10px; color: var(--text-2); font-size: 14px; }
.jd-badges { margin: 0; }
.jd-badges .idx, .jd-badges .badge, .jd-badges .grade { font-size: 12px; padding: 1px 8px; }
.jd-actions { display: flex; gap: 8px; flex-wrap: wrap; }

.jd-tiles { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 10px; margin-bottom: 8px; }
.tile { border: 1px solid var(--line); border-radius: 6px; padding: 12px 14px; background: var(--panel); }
.tile dt { font-size: 12px; color: var(--text-2); font-weight: 700; }
.tile dd { margin: 4px 0 2px; font-size: 22px; font-weight: 900; color: var(--blue); letter-spacing: -.02em; }
.tile small { display: block; font-size: 11.5px; color: var(--text-3); line-height: 1.4; }
.tile.muted dd { font-size: 15px; color: var(--text-3); font-weight: 700; }
.jd-note { font-size: 12px; color: var(--text-3); margin: 0 0 24px; }

.jd-grid { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 24px; }
.jd-grid aside { display: flex; flex-direction: column; gap: 12px; }
@media (max-width: 900px) { .jd-grid { grid-template-columns: 1fr; } }
.jd-works { margin: 0; padding-left: 20px; }
.jd-works li { padding: 6px 0; border-bottom: 1px dotted var(--line-2); }
.jd-works a:hover { text-decoration: underline; color: var(--blue-2); }
.jd-works .yr { color: var(--text-3); font-size: 12px; margin-left: 6px; }
.jd-topics { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.jd-topics li { font-size: 12px; padding: 2px 9px; border-radius: 12px; background: var(--blue-soft); color: var(--blue); }

/* 투고 후기 */
#reviews { margin-top: 32px; }
.rv-summary { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; margin-bottom: 14px; }
.rv-list { list-style: none; margin: 0 0 14px; padding: 0; }
.rv-list li { border: 1px solid var(--line); border-left: 3px solid var(--blue-2); border-radius: 4px; padding: 10px 14px; margin-bottom: 8px; }
.rv-meta { font-size: 12px; color: var(--text-3); margin-bottom: 4px; }
.rv-meta b { color: var(--blue); }
.rv-empty { color: var(--text-3); font-size: 13px; }
.rv-write { border: 1px solid var(--line); border-radius: 6px; padding: 10px 14px; background: var(--panel); }
.rv-write summary { cursor: pointer; font-weight: 700; color: var(--blue); }
#rv-form { display: flex; flex-direction: column; gap: 10px; margin-top: 10px; font-size: 13.5px; }
#rv-form label { display: flex; flex-direction: column; gap: 4px; font-weight: 700; color: var(--text-2); }
#rv-form input, #rv-form select, #rv-form textarea { border: 1px solid var(--line-2); border-radius: 3px; padding: 7px 9px; font: inherit; font-weight: 400; background: #fff; }
.rv-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; }
.rv-guide { margin: 0; font-size: 12.5px; color: var(--text-2); }
#rv-form .hp { position: absolute; left: -9999px; }
#rv-form .btn-send { align-self: flex-start; }
.tile-sch { background: var(--blue-soft); border-color: #ddd5e8; }
.tile small a { color: var(--blue-2); text-decoration: underline; }

/* 투고 일정 · 비용 */
.jd-sched { margin-bottom: 24px; }
.sched-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 16px; }
@media (max-width: 860px) { .sched-grid { grid-template-columns: 1fr; } }
.sched-grid .rule-table td small { color: var(--text-3); }
.sched-grid .rule-table td a { color: var(--blue-2); text-decoration: underline; }
.sched-facts { margin: 0; border: 1px solid var(--line); border-radius: 6px; padding: 6px 12px; background: var(--panel); }
.sched-facts div { display: grid; grid-template-columns: 76px 1fr; gap: 8px; padding: 6px 0; border-bottom: 1px dotted var(--line-2); font-size: 13px; }
.sched-facts div:last-child { border-bottom: 0; }
.sched-facts dt { font-weight: 700; color: var(--blue); }
.sched-facts dd { margin: 0; color: var(--text-2); }
.sched-facts a { color: var(--blue-2); text-decoration: underline; }

.tile dd { word-break: keep-all; }
