/* data page: result section (scoped to .page-data) */

/* .data-wrapper が align-items:center のため幅を明示 */
.page-data .result-section.result { width: 100%; box-sizing: border-box; }
.page-data .result-section.result .result-content { width: 100%; }

.page-data .result .abs {
  left: calc(var(--x, 0) * var(--px));
  top: calc(var(--y, 0) * var(--px));
  width: calc(var(--w, auto) * var(--px));
  height: calc(var(--h, auto) * var(--px));
  margin: 0;
}

/* 中央基準のテキスト（--c は中心の x） */
.page-data .result .abs[style*="--c"] {
  left: calc(var(--c) * var(--px));
  transform: translateX(-50%);
  width: auto;
  white-space: nowrap;
}

.page-data .result .abs:not([style*="--w"]) { width: auto; }
.page-data .result .abs:not([style*="--h"]) { height: auto; }

/* 大きい数字（最大 −49.5kg） */
.page-data .result .rs-big {
  font-family: var(--data-mincho);
  font-weight: 800;
  color: var(--data-coral);
  letter-spacing: calc(1.0222 * var(--px));
  white-space: nowrap;
  line-height: 1;
}

.page-data .result .rs-big__lead {
  display: block;
  font-size: calc(48 * var(--px));
  line-height: 1;
  margin-bottom: calc(2 * var(--px));
}

.page-data .result .rs-big__row {
  display: block;
  line-height: 1;
}

.page-data .result .rs-big__sign { font-size: calc(38.461 * var(--px)); vertical-align: calc(26 * var(--px)); }
.page-data .result .rs-big__num { font-size: calc(106.481 * var(--px)); }
.page-data .result .rs-big__dec { font-size: calc(42.593 * var(--px)); }
.page-data .result .rs-big__tr { letter-spacing: calc(4.2593 * var(--px)); }

.page-data .result .rs-big--5 .rs-big__lead { font-size: calc(38.333 * var(--px)); margin-bottom: calc(-8 * var(--px)); }
.page-data .result .rs-big--5 .rs-big__tr { letter-spacing: calc(5.1111 * var(--px)); }

/* 平均 +3.5％ */
.page-data .result .rs-avg {
  font-family: var(--data-mincho);
  font-weight: 800;
  color: var(--data-text);
  letter-spacing: calc(1.363 * var(--px));
  white-space: nowrap;
  line-height: 1.6;
}
.page-data .result .rs-avg__s { font-size: calc(30.667 * var(--px)); }
.page-data .result .rs-avg__n { font-size: calc(54.519 * var(--px)); }
.page-data .result .rs-avg__d { font-size: calc(34.074 * var(--px)); }

/* 94% / 95% */
.page-data .result .rs-pct {
  font-family: var(--data-mincho);
  font-weight: 800;
  color: var(--data-coral);
  letter-spacing: calc(1.3333 * var(--px));
  white-space: nowrap;
  line-height: 1.6;
}
.page-data .result .rs-pct__num { font-size: calc(106.481 * var(--px)); }
.page-data .result .rs-pct__unit { font-size: calc(26.407 * var(--px)); }

/* 見出し直下のリード文 */
.page-data .result .rs-lead {
  font-family: var(--data-mincho);
  font-weight: 700;
  font-size: calc(19.593 * var(--px));
  line-height: 1.6;
  letter-spacing: calc(0.9796 * var(--px));
  color: var(--data-text);
  white-space: nowrap;
}
.page-data .result .rs-lead em { font-style: normal; font-size: calc(23.852 * var(--px)); color: var(--data-coral); }
.page-data .result .rs-lead--l { font-weight: 800; font-size: calc(16 * var(--px)); letter-spacing: calc(0.6815 * var(--px)); color: #000; }
.page-data .result .rs-lead--l em { font-size: calc(20 * var(--px)); }
.page-data .result .rs-lead--5 { font-size: calc(17.037 * var(--px)); letter-spacing: calc(0.8519 * var(--px)); }
.page-data .result .rs-lead--5 em { font-size: calc(19.593 * var(--px)); letter-spacing: calc(0.9796 * var(--px)); }

/* 薄い水色の吹き出し帯 */
.page-data .result .rs-strip {
  background: #caf2ec;
  border-radius: calc(10 * var(--px));
}

.page-data .result .abs.rs-voice {
  /* .abs:not([style*="--w"]) の width:auto より強くする（auto だと画像の元寸 600px になる） */
  width: calc(30 * var(--px));
  height: calc(30 * var(--px));
}

.page-data .result .rs-quote {
  font-family: var(--data-sans);
  font-weight: 500;
  font-size: calc(10 * var(--px));
  line-height: 1.2;
  letter-spacing: calc(0.5 * var(--px));
  color: var(--data-text);
  white-space: nowrap;
}
.page-data .result .rs-quote--c { text-align: center; line-height: 1; }

.page-data .result .rs-note {
  font-family: var(--data-sans);
  font-weight: 400;
  font-size: calc(13 * var(--px));
  line-height: 1;
  letter-spacing: calc(0.65 * var(--px));
  color: var(--data-text);
  text-align: center;
  white-space: nowrap;
}
.page-data .result .rs-note__tight { letter-spacing: calc(-0.8 * var(--px)); }
.page-data .result .rs-note--5 { font-size: calc(13.333 * var(--px)); letter-spacing: calc(0.6667 * var(--px)); }
.page-data .result .rs-note--2 {
  font-size: calc(12 * var(--px));
  line-height: 1.1;
  letter-spacing: calc(0.6 * var(--px));
  white-space: pre;
}

/* result6: 吹き出し */
.page-data .result .result-card--voices .data-card__frame { background: transparent; }
.page-data .result .rs-voices { background: transparent; }

.page-data .result .rs-voice-text {
  font-family: var(--data-mincho);
  font-weight: 700;
  font-size: calc(14.5 * var(--px));
  line-height: calc(var(--lh) * var(--px));
  letter-spacing: calc(1.2 * var(--px));
  text-align: center;
  color: var(--data-text);
  white-space: nowrap;
}
.page-data .result .rs-voice-text em {
  font-style: normal;
  font-size: calc(18 * var(--px));
  color: var(--data-coral);
}
.js-data-anim .page-data .result .js-inview .rs-voice-text { opacity: 0; transition: opacity 0.6s ease 0.3s; }
.js-data-anim .page-data .result .js-inview.is-inview .rs-voice-text { opacity: 1; }

/* 吹き出しはカードと一緒にふわっと出す */
.js-data-anim .page-data .result .js-inview .rs-bub {
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.6s ease, transform 0.6s var(--data-ease);
}
.js-data-anim .page-data .result .js-inview .rs-bub--2 { transition-delay: 0.45s; }
.js-data-anim .page-data .result .js-inview.is-inview .rs-bub { opacity: 1; transform: none; }

/* 吹き出し下の淡い影（元画像の縁に合わせる） */
.page-data .result .rs-voices__shape { overflow: visible; filter: drop-shadow(0 calc(1.5 * var(--px)) calc(2 * var(--px)) rgba(0, 0, 0, 0.16)); }

/* SP 専用要素（Figma SP ノードの px を PC 設計 500 基準に直す係数 1.2745 = 500 / 392.317） */
.page-data .result .abs.rs-spx { display: none; }
@media (max-width: 767px) {
  .page-data .result .abs.rs-pcx { display: none; }
  .page-data .result .abs.rs-spx { display: block; --k: 1.2745; }
  .page-data .result .abs.rs-spx:not([style*="--c"]) {
    left: calc(var(--x, 0) * var(--px) * var(--k));
  }
  .page-data .result .abs.rs-spx {
    top: calc((var(--y, 0) * var(--k) - 50) * var(--px));
  }
  .page-data .result .abs.rs-spx[style*="--c"] { left: calc(var(--c) * var(--px) * var(--k)); }
  .page-data .result .abs.rs-spx[style*="--w"] { width: calc(var(--w) * var(--px) * var(--k)); }
  .page-data .result .abs.rs-spx[style*="--h"] { height: calc(var(--h) * var(--px) * var(--k)); }
  .page-data .result .abs.rs-strip-sp { border-radius: calc(7.846 * var(--px) * var(--k)); }
  .page-data .result .abs.rs-quote-sp {
    font-family: var(--data-sans);
    font-weight: 500;
    font-size: calc(var(--fs) * var(--px) * var(--k));
    line-height: 1.2;
    letter-spacing: calc(var(--ls) * var(--px) * var(--k));
    color: var(--data-text);
    white-space: nowrap;
  }
  .page-data .result .abs.rs-note-sp {
    font-family: var(--data-sans);
    font-weight: 400;
    font-size: calc(var(--nfs, 9) * var(--px) * var(--k));
    line-height: var(--nlh, 1);
    letter-spacing: calc(var(--nls, 0.45) * var(--px) * var(--k));
    color: var(--data-text);
    text-align: center;
    white-space: nowrap;
  }
  .page-data .result .rs-note-sp .rs-note__tight { letter-spacing: calc(-0.45 * var(--px) * var(--k)); }
  .page-data .result .rs-tight { letter-spacing: calc(var(--t) * var(--px) * var(--k)); }
  .page-data .result .data-grid > article:nth-child(1) .rs-big__tr { letter-spacing: inherit; }
  .page-data .result .rs-note-sp--pre { white-space: pre; }
  .page-data .result .data-grid > article:nth-child(4) .rs-ring { left: calc(193 * 1.2745 * var(--px)); top: calc((134 * 1.2745 - 50) * var(--px)); width: calc(167 * 1.2745 * var(--px)); height: calc(125 * 1.2745 * var(--px)); }
  /* result3 SP のリング: Figma SP は 167x125（PC 比例の 167.7x125.8 とわずかに違う） */
  .page-data .result .data-grid > article:nth-child(3) .rs-ring { width: calc(167 * 1.2745 * var(--px)); height: calc(125 * 1.2745 * var(--px)); }
}

/* result6 SP: SP 用の元画像（result6-sp.webp）に合わせた別レイアウト */
.page-data .result .abs.rs-sp6 { display: none; }
@media (max-width: 767px) {
  .page-data .result .abs.rs-sp6 { display: block; }
  .page-data .result .rs-voices.data-card__body { height: calc(399.9 * var(--px)); }
  .page-data .result .rs-voice-text--sp { font-size: calc(var(--fs) * var(--px)); }
  .page-data .result .rs-voice-text--sp em { font-size: calc(var(--em) * var(--px)); }
}


/* ===== result5（筋肉率UP）: Figma 2610 版。PC は 1020 幅の横長カード、SP は 500 幅を縮めたもの ===== */
.page-data .result .r5 { grid-column: 1 / -1; }
.page-data .result .r5 .data-card__frame { --dw: 1020; }

.page-data .result .r5-couple { object-fit: cover; }

.page-data .result .r5-num {
  --k: 1;
  font-family: var(--data-mincho);
  font-weight: 800;
  line-height: 0.9;
  white-space: nowrap;
}

.page-data .result .r5-num--max { color: var(--data-coral); }
.page-data .result .r5-num--avg { color: var(--data-text); }

.page-data .result .r5-num__lead,
.page-data .result .r5-num__row { display: block; }

/* Figma: 最大 38.333 / + 59.63 / 15 106.48 / .6％ 42.59。平均 32 / + 50 / 3 90 / .5％ 36 */
.page-data .result .r5-num--max .r5-num__lead { font-size: calc(38.333 * var(--px) * var(--k)); }
.page-data .result .r5-num--max .r5-num__sign { font-size: calc(59.63 * var(--px) * var(--k)); }
.page-data .result .r5-num--max .r5-num__big { font-size: calc(106.481 * var(--px) * var(--k)); letter-spacing: -0.04em; }
.page-data .result .r5-num--max .r5-num__dec { font-size: calc(42.593 * var(--px) * var(--k)); letter-spacing: 0.05em; }
.page-data .result .r5-num--avg .r5-num__lead { font-size: calc(32 * var(--px) * var(--k)); }
.page-data .result .r5-num--avg .r5-num__sign { font-size: calc(50 * var(--px) * var(--k)); letter-spacing: 0.3em; }
.page-data .result .r5-num--avg .r5-num__big { font-size: calc(90 * var(--px) * var(--k)); }
.page-data .result .r5-num--avg .r5-num__dec { font-size: calc(36 * var(--px) * var(--k)); letter-spacing: 0.05em; }
.page-data .result .r5-num__tr { letter-spacing: 0.12em; }

@media (max-width: 767px) {
  .page-data .result .r5 .data-card__frame { --dw: 500; }
  .page-data .result .r5-lead { --x: 24.53 !important; --y: 13 !important; }
  .page-data .result .r5-ul { --x: 17.9 !important; --y: 33.5 !important; --w: 463.4 !important; --h: 9.4 !important; }
  .page-data .result .r5-couple { --x: 31.89 !important; --y: 64.8 !important; --w: 209.18 !important; --h: 225.77 !important; }
  .page-data .result .r5-num { --k: 0.875; }
  .page-data .result .r5-num--max { --x: 270.41 !important; --y: 59.69 !important; }
  .page-data .result .r5-num--avg { --x: 270.41 !important; --y: 191.07 !important; --k: 0.711; }
  .page-data .result .r5-note { --c: 318.5 !important; --y: 311 !important; }
}
