/* Report */
.rpt-header{ text-align:center; padding:24px 0 20px; }
.rpt-badge{ font-size:11px; letter-spacing:var(--ls-en-wider); margin-bottom:12px; }
.rpt-question{
  font-family:'Noto Serif KR',serif;
  font-size:clamp(16px,4vw,20px); font-weight:700;
  color:var(--white); letter-spacing:var(--ls-ko-title);
  line-height:1.5; margin-bottom:6px;
}
.rpt-meta{ font-size:11px; color:var(--muted); }
.rpt-cards{
  display:flex; justify-content:center; gap:6px;
  padding:0 0 20px;
}
.rpt-card{
  width:min(60px, calc((100vw - 72px) / 5));
  aspect-ratio:2/3;
  border:1px solid rgba(201,165,92,.3);
  border-radius:7px;
  background:linear-gradient(160deg, var(--navy2), var(--navy));
  display:flex; flex-direction:column;
  align-items:center; justify-content:center;
  gap:2px; padding:5px 2px;
  text-align:center; position:relative;
}
.rpt-card-sym{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(13px,3.2vw,17px); font-weight:400;
  color:var(--gold-lt); line-height:1;
}
.rpt-card-kr{
  font-size:clamp(10px,2.2vw,12px); font-weight:600;
  color:var(--white); line-height:1.2;
}
.rpt-card-pos{
  position:absolute; top:-16px; left:50%; transform:translateX(-50%);
  font-size:10px; color:var(--gold-dk); white-space:nowrap;
}
.rpt-card.reversed{ border-color:rgba(201,122,106,.3); }
.rpt-card.reversed::after{
  content:'역'; position:absolute; bottom:3px; right:3px;
  font-size:7px; color:#c97a6a;
  background:rgba(201,122,106,.12);
  padding:0 3px; border-radius:3px;
}
.rpt-spread-info{
  display:flex; flex-wrap:wrap; gap:5px;
  justify-content:center; margin-bottom:24px;
}
.rpt-tag{
  font-size:11px; color:var(--gold);
  background:rgba(201,165,92,.06);
  border:1px solid rgba(201,165,92,.18);
  border-radius:var(--radius-pill); padding:3px 10px;
}
.rpt-divider{
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(201,165,92,.18), transparent);
  margin:0 0 28px;
}
.rpt-section-divider{
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(201,165,92,.1), transparent);
  margin:24px 0;
}
.rpt-section{ margin-bottom:28px; }
.rpt-section-num{
  font-family:'Cormorant Garamond',serif;
  font-size:11px; font-weight:500;
  letter-spacing:var(--ls-en-wider);
  color:var(--gold-dk); text-transform:uppercase;
  margin-bottom:6px;
}
.rpt-section-title{
  font-family:'Noto Serif KR',serif;
  font-size:clamp(15px,3.6vw,19px); font-weight:700;
  color:var(--white); letter-spacing:var(--ls-ko-title);
  line-height:1.4; margin-bottom:14px;
}
.rpt-body{
  font-size:13.5px; color:var(--body);
  line-height:var(--lh-loose);
}
.rpt-body p{ margin-bottom:12px; }
.rpt-hi{
  font-weight:700; color:var(--white);
  background:linear-gradient(180deg, transparent 55%, rgba(201,165,92,.2) 55%, rgba(201,165,92,.2) 90%, transparent 90%);
  padding:0 2px;
}
.rpt-cd{
  border:1px solid rgba(201,165,92,.12);
  border-radius:var(--radius-md); padding:18px;
  margin-bottom:12px; background:rgba(201,165,92,.02);
}
.rpt-cd.rv{ border-color:rgba(201,122,106,.12); }
.rpt-cd-header{
  display:flex; align-items:center; gap:8px;
  flex-wrap:wrap; margin-bottom:8px;
}
.rpt-cd-pos{
  font-family:'Cormorant Garamond',serif;
  font-size:11px; font-weight:500;
  letter-spacing:var(--ls-en-wide);
  text-transform:uppercase; color:var(--gold-dk);
}
.rpt-cd-name{
  font-family:'Noto Serif KR',serif;
  font-size:14px; font-weight:700;
  color:var(--white);
}
.rpt-cd-name-en{
  font-family:'Cormorant Garamond',serif;
  font-weight:400; font-size:12px;
  color:var(--gold-dk); margin-left:5px;
}
.rpt-cd-rv{
  font-size:11px; color:#c97a6a;
  background:rgba(201,122,106,.1);
  border:1px solid rgba(201,122,106,.2);
  padding:1px 7px; border-radius:var(--radius-pill);
}
.rpt-cd-kws{
  display:flex; flex-wrap:wrap; gap:4px;
  margin-bottom:10px;
}
.rpt-cd-kw{
  font-size:11px; color:var(--gold);
  background:rgba(201,165,92,.08);
  border:1px solid rgba(201,165,92,.12);
  padding:2px 7px; border-radius:var(--radius-pill);
}
.rpt-cd-sub{
  font-family:'Noto Serif KR',serif;
  font-size:13px; font-weight:600;
  color:var(--gold-lt); margin-bottom:8px;
}
.rpt-cd-body{
  font-size:13px; color:var(--body); line-height:1.8;
}
.rpt-cd-whisper{
  margin-top:10px; padding:9px 13px;
  border-left:2px solid rgba(201,165,92,.2);
  background:rgba(201,165,92,.02);
  font-size:12.5px; color:var(--gold-lt);
  line-height:1.5; font-style:italic;
}
.rpt-rel{
  padding:14px; border:1px solid rgba(201,165,92,.1);
  border-radius:var(--radius-md); margin-bottom:10px;
  background:rgba(201,165,92,.02);
}
.rpt-rel-pair{
  font-size:13px; font-weight:600;
  color:var(--gold-lt); margin-bottom:5px;
}
.rpt-rel-body{
  font-size:12.5px; color:var(--body); line-height:var(--lh-body);
}
.rpt-action{
  display:flex; gap:12px; padding:12px 14px;
  border:1px solid rgba(201,165,92,.1);
  border-radius:var(--radius-md); margin-bottom:8px;
  background:rgba(201,165,92,.02);
}
.rpt-action-num{
  font-family:'Cormorant Garamond',serif;
  font-size:22px; font-weight:400;
  color:rgba(201,165,92,.2);
  line-height:1; flex-shrink:0; padding-top:2px;
}
.rpt-action-body{
  font-size:13px; color:var(--body); line-height:var(--lh-body);
}
.rpt-closing{
  text-align:center; padding:24px 18px;
  border:1px solid rgba(201,165,92,.18);
  border-radius:var(--radius-lg);
  background:linear-gradient(160deg, rgba(201,165,92,.04), rgba(201,165,92,.01));
}
.rpt-closing-text{
  font-family:'Noto Serif KR',serif;
  font-size:clamp(14px,3.2vw,17px); font-weight:700;
  color:var(--gold-lt); letter-spacing:var(--ls-ko-title);
  line-height:1.6;
}
.rpt-closing-deco{
  margin-top:10px; font-size:14px;
  color:var(--gold); opacity:.4;
}
.rpt-actions{
  display:flex; flex-direction:column; gap:8px;
  padding:20px 0 16px;
}
.rpt-btn-share{
  width:100%; text-align:center;
  background:rgba(255,255,255,.042);
  border:1px solid rgba(255,255,255,.09);
  color:var(--body); font-family:'Pretendard',sans-serif;
  font-size:13px; font-weight:400;
  padding:12px 0; border-radius:var(--radius-md);
  cursor:pointer; transition:all .2s;
}
.rpt-btn-share:hover{
  border-color:rgba(201,165,92,.42); color:var(--gold-lt);
}

/* ─── Detail Reveal 초기 숨김 (JS initDetailReveal에서 전환) ─── */
.sc-detail .rpt-header,
.sc-detail .rpt-spread-info,
.sc-detail .rpt-divider,
.sc-detail .rpt-section-divider,
.sc-detail .rpt-section,
.sc-detail .rpt-cd,
.sc-detail .rpt-rel,
.sc-detail .rpt-action,
.sc-detail .rpt-closing,
.sc-detail .sc-share-wrap,
.sc-detail .rpt-notice{
  opacity:0;transform:translateY(16px);
  transition:opacity .5s ease,transform .5s ease;
}