/* Article-only localization: labels remain text, shared art remains language-neutral. */
.article-body .physio-visual { margin: 2rem auto; }
.article-body .physio-visual img { display: block; width: 100%; height: auto; max-height: none; margin: 0; }
.article-body .physio-visual__notice { margin: 0 0 .6rem; color: #29424b; font-size: .8rem; font-weight: 600; line-height: 1.5; letter-spacing: .025em; }
.physio-atlas { position: relative; isolation: isolate; }
.physio-atlas__label { position: absolute; left: 19.1%; z-index: 1; color: #102f43; font-size: clamp(.72rem, 2.2vw, 1.1rem); font-weight: 600; line-height: 1.1; letter-spacing: .04em; }
.physio-atlas__label--sleep { top: 9.4%; }
.physio-atlas__label--hrv { top: 44.3%; color: #13696d; }
.physio-atlas__label--rhr { top: 73.2%; color: #975e3d; }
.article-body .physio-visual .physio-visual__legend { display: grid; gap: .55rem 1rem; list-style: none; padding: .85rem 0; margin: 0; font-size: .85rem; line-height: 1.45; border-bottom: 1px solid var(--border-color, #deddd7); }
.physio-visual__legend--atlas { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.physio-visual__legend--signals { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.article-body .physio-visual__legend li { display: flex; align-items: baseline; gap: .45rem; min-width: 0; padding: 0; margin: 0; overflow-wrap: anywhere; text-align: left; }
.physio-visual__swatch { flex: 0 0 .45rem; height: .45rem; border-radius: 50%; background: #285e78; }
.physio-visual__swatch--hrv { background: #13696d; }
.physio-visual__swatch--rhr { background: #975e3d; }
.physio-visual__number { flex: 0 0 1.5em; white-space: nowrap; color: #516b74; font-size: .75rem; font-weight: 700; font-variant-numeric: tabular-nums; }
.article-body .physio-visual figcaption { margin-top: .75rem; color: var(--text-secondary); font-size: .88rem; line-height: 1.6; }
.article-body .physio-table-hint { margin: 1.1rem 0 .3rem; font-size: .78rem; color: var(--text-secondary); line-height: 1.5; }
.physio-table-scroll { max-width: 100%; overflow-x: auto; margin: .4rem 0 1.5rem; -webkit-overflow-scrolling: touch; }
.physio-table-scroll:focus-visible { outline: 2px solid #16777b; outline-offset: 3px; }
.article-body .physio-table-scroll table { display: table; width: 100%; min-width: 32rem; margin: 0; overflow: visible; }
.article-body .physio-table-scroll caption { padding: .4rem 0 .65rem; text-align: left; font-weight: 600; color: var(--text-primary); caption-side: top; }
.article-body .physio-table-scroll code { white-space: nowrap; }
@media (min-width: 769px) { .article-body .physio-table-hint { display: none; } }
@media (max-width: 480px) { .physio-visual__legend--atlas { grid-template-columns: 1fr; } }
