/* mrc-drug-costs.css — C-DRUG-COSTS-STAGING-V1 0.1.0。design-system token を再利用（--mrc-*）。
   PC：semantic table（th scope、caption）。≤800px（design-system と同じ breakpoint）：accessible card/table hybrid
   （行を積み、各 cell の先頭に data-label＝可視 header 文言を表示。読み上げ順・表構造は維持）。Google Fonts 0、animation 0。 */
.mrc-dc { margin: 0 0 2rem; }
.mrc-dc__meta p { color: var(--mrc-ink-muted, #55635c); font-size: .95rem; margin: 0 0 1.2rem; }
.mrc-dc__group { margin: 0 0 2.2rem; }
.mrc-dc__group > h3 { margin: 0 0 1rem; padding: .35em .8em; border-left: 4px solid var(--mrc-green-700, #2f6b4f); background: var(--mrc-sage-050, #f2f6f3); color: var(--mrc-ink, #24352f); font-size: 1.15rem; }
.mrc-dc__drug { margin: 0 0 1.6rem; }
.mrc-dc__drug > h4 { margin: 0 0 .5rem; font-size: 1.05rem; color: var(--mrc-ink, #24352f); }
.mrc-dc__fallback { margin: 0 0 .4rem; }
.mrc-dc__note { color: var(--mrc-ink-muted, #55635c); font-size: .93rem; margin: .4rem 0 0; line-height: 1.7; }
.mrc-dc__tablewrap { overflow-x: auto; -webkit-overflow-scrolling: touch; max-width: 100%; }
.mrc-dc__table { border-collapse: collapse; width: 100%; min-width: 0; font-size: .92rem; }
.mrc-dc__table caption { text-align: left; caption-side: top; color: var(--mrc-ink-muted, #55635c); font-size: .9rem; padding: 0 0 .4em; }
.mrc-dc__table th, .mrc-dc__table td { border: 1px solid var(--mrc-line, #d9e0dc); padding: .5em .6em; line-height: 1.7; vertical-align: top; text-align: left; }
.mrc-dc__table tbody th[scope="row"] { min-width: 8.5em; }
.mrc-dc__table td:nth-child(2) { min-width: 6em; }
.mrc-dc__table td:nth-child(3) { white-space: nowrap; }
.mrc-dc__table thead th { background: var(--mrc-sage-050, #f2f6f3); color: var(--mrc-ink, #24352f); font-weight: 650; white-space: nowrap; }
.mrc-dc__table tbody th[scope="row"] { font-weight: 600; background: transparent; }
.mrc-dc__table td:nth-child(n+4) { text-align: right; font-variant-numeric: tabular-nums; }
.mrc-dc__table .mrc-dc__amt { white-space: nowrap; }
.mrc-dc__table td[colspan] { text-align: left; white-space: normal; }
.mrc-dc__notes { margin: 2rem 0 0; padding: 1rem 1.2rem; border: 1px solid var(--mrc-line, #d9e0dc); border-radius: var(--mrc-radius, 8px); background: var(--mrc-ivory-050, #fbfaf6); }
.mrc-dc__notes h3 { margin: 0 0 .6rem; font-size: 1.05rem; }
.mrc-dc__notes ul { margin: 0; padding-left: 1.3em; }
.mrc-dc__notes li { margin: 0 0 .45em; line-height: 1.8; }
@media only screen and (max-width: 800px) {
  .mrc-dc__table, .mrc-dc__table tbody, .mrc-dc__table tr, .mrc-dc__table th, .mrc-dc__table td { display: block; width: 100%; box-sizing: border-box; }
  .mrc-dc__table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; } /* 可視 header は data-label で再掲、AT には残す */
  .mrc-dc__table caption { display: block; }
  .mrc-dc__table tr { border: 1px solid var(--mrc-line, #d9e0dc); border-radius: 6px; margin: 0 0 .8rem; padding: .2rem 0; background: #fff; }
  .mrc-dc__table th, .mrc-dc__table td { border: 0; border-bottom: 1px solid var(--mrc-line, #d9e0dc); padding: .45em .8em; text-align: left; white-space: normal; }
  .mrc-dc__table tr > :last-child { border-bottom: 0; }
  .mrc-dc__table td:nth-child(n+4) { text-align: left; }
  .mrc-dc__table [data-label]::before { content: attr(data-label) "："; display: inline-block; min-width: 6.5em; color: var(--mrc-ink-muted, #55635c); font-weight: 600; }
  .mrc-dc__table tbody th[scope="row"] { background: var(--mrc-sage-050, #f2f6f3); }
  .mrc-dc__table tbody th[scope="row"]::before { content: ""; min-width: 0; }
}
