/* 結果画面（2026-10-13 作り直し）。ひと目で → タイプごとの「こんな人」 → 地形 → そのほか → くわしいデータ */

/* 第一画面 */
.result .hero-combo { display: flex; flex-wrap: wrap; gap: 4px 12px; margin-top: 6px; font-size: clamp(17px, 4.6vw, 22px); font-weight: 800; color: #e9e6fb; }
.result .hero-combo span { white-space: nowrap; }

/* 3つの見方を、ひと目で（64タイプ） */
.t64 { scroll-margin-top: 8px; }
.t64-lead { margin-top: 8px; font-size: 14.5px; line-height: 1.7; color: var(--muted); }
.t64-body { display: grid; gap: 18px; padding: 16px; border: 1px solid var(--line); border-radius: 20px; background: var(--card); }
.t64-rows { display: grid; gap: 4px; min-width: 0; }
.t64-label { font-size: 12.5px; font-weight: 800; color: var(--muted); letter-spacing: .04em; margin: 0 0 6px; }
.t64-row ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
.t64-type { position: relative; display: grid; justify-items: center; gap: 4px; padding: 6px 2px 8px; border: 1.5px solid transparent; border-radius: 14px; opacity: .5; filter: grayscale(.55); }
.t64-type.is-own { opacity: 1; filter: none; border-color: var(--c); background: color-mix(in srgb, var(--c) 10%, #fff); }
.t64-art { width: 100%; max-width: 64px; aspect-ratio: 1; overflow: hidden; border-radius: 12px; background: color-mix(in srgb, var(--c) 12%, #fff); display: block; }
.t64-art img { width: 100%; height: 100%; object-fit: cover; object-position: center top; display: block; }
.t64-sprite { display: block; width: 100%; height: 100%; background-image: url('../assets/temporal-types.webp'); background-size: 200% 200%; background-position: var(--art-position); }
.t64-name { font-size: 11.5px; font-weight: 800; line-height: 1.25; text-align: center; overflow-wrap: anywhere; }
.t64-type.is-own .t64-name { color: var(--c); }
.t64-you { position: absolute; top: -8px; right: -2px; padding: 1px 7px; border-radius: 999px; background: var(--c); color: #fff; font-size: 10.5px; font-weight: 800; }
.t64-times { margin: 2px 0; text-align: center; font-size: 15px; font-weight: 800; color: #b7ad9c; line-height: 1; }
.t64-map { margin: 0; justify-self: center; width: min(100%, 300px); }
.t64-grid { display: block; width: 100%; height: auto; }
.t64-grid-label { font-size: 10.5px; font-weight: 800; }
.t64-cell { fill-opacity: .14; }
.t64-cell.is-own { fill-opacity: 1; stroke: var(--ink); stroke-width: 1.5; }
.t64-map figcaption { margin-top: 6px; font-size: 12px; line-height: 1.6; color: var(--muted); }
.t64-answer { margin-top: 14px; text-align: center; font-size: 14px; font-weight: 700; color: var(--muted); }
.t64-answer span { display: block; margin-bottom: 2px; font-size: clamp(18px, 5vw, 24px); font-weight: 800; color: var(--ink); }
.t64-answer i { font-style: normal; margin: 0 6px; color: #b7ad9c; }
@media (min-width: 760px) {
  .t64-body { grid-template-columns: minmax(0, 1.5fr) minmax(220px, 1fr); align-items: center; padding: 20px 24px; }
  .t64-name { font-size: 12.5px; }
}

/* タイプごとの「こんな人」 */
.type-section { border-top: 4px solid var(--c); }
.type-section .result-kicker { color: var(--c); }
.type-head { display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: 14px; align-items: center; margin-top: 4px; }
.type-head-art { width: 92px; aspect-ratio: 1; overflow: hidden; border-radius: 18px; background: color-mix(in srgb, var(--c) 12%, #fff); }
.type-head-art img { width: 100%; height: 100%; object-fit: cover; object-position: center top; display: block; }
.type-head-sprite { display: block; width: 100%; height: 100%; background-image: url('../assets/temporal-types.webp'); background-size: 200% 200%; background-position: var(--art-position); }
.type-head h2 { margin: 0; font-size: clamp(19px, 5.4vw, 24px); line-height: 1.35; }
.type-head-tag { margin-top: 2px; font-size: 15px; font-weight: 800; color: var(--c); }
.type-head-catch { margin-top: 4px; font-size: 14.5px; line-height: 1.6; color: var(--muted); }
.type-map { display: grid; gap: 12px; margin-top: 16px; padding: 14px; border-radius: 18px; background: #faf7f1; }
.type-map .map-figure { margin: 0 auto; width: min(100%, 320px); }
.map-here { font-size: 12.5px; font-weight: 800; color: var(--muted); }
.map-how { margin-top: 6px; font-size: 14px; line-height: 1.7; }
.type-map .badge { margin-top: 6px; background: var(--soft); color: var(--ink); }
.quad-art { opacity: .2; }
.quad-art.is-own { opacity: .5; }
.quad-name { paint-order: stroke; stroke: #fffaf3; stroke-width: 3px; stroke-linejoin: round; }
.you-read { display: grid; gap: 14px; margin-top: 18px; }
.you-part h3 { font-size: 15px; color: var(--c); margin-bottom: 4px; }
.you-part p { font-size: 16px; line-height: 1.85; }
.you-part p + p { margin-top: 8px; }
.you-gift { margin-top: 16px; padding: 14px 16px; border-radius: 16px; background: color-mix(in srgb, var(--c) 9%, #fff); font-size: 16px; line-height: 1.8; }
.you-gift strong { display: block; margin-bottom: 2px; font-size: 13px; color: var(--c); letter-spacing: .04em; }
.result .type-section .you-heading { margin-top: 22px; }
.you-hint { font-size: 13px; color: var(--muted); margin: 2px 0 6px; }
.you-combo { margin-top: 18px; padding: 14px 16px; border: 1.5px dashed color-mix(in srgb, var(--c) 45%, #fff); border-radius: 16px; }
.you-combo h3 { font-size: 15px; margin-bottom: 6px; }
.you-combo p { font-size: 15.5px; line-height: 1.8; }
.you-combo p + p { margin-top: 8px; }
@media (min-width: 760px) {
  .type-head { grid-template-columns: 120px minmax(0, 1fr); gap: 20px; }
  .type-head-art { width: 120px; }
  .type-map { grid-template-columns: 300px minmax(0, 1fr); align-items: center; gap: 24px; padding: 18px 22px; }
  .you-read { grid-template-columns: 1fr 1fr; gap: 18px 28px; }
}

/* 強み・つまずきやすいところ */
.sw-grid { display: grid; gap: 16px; margin-top: 12px; }
.sw-col { padding: 14px 16px; border-radius: 18px; }
.sw-strong { background: #eef6f2; }
.sw-weak { background: #fbf1ea; }
.sw-col h3 { font-size: 16px; margin-bottom: 6px; }
.sw-strong h3 { color: #1d6a52; }
.sw-weak h3 { color: #a2481b; }
.sw-col ol { margin: 0; padding: 0; list-style: none; display: grid; gap: 12px; counter-reset: sw; }
.sw-col li { counter-increment: sw; padding-left: 30px; position: relative; }
.sw-col li::before { content: counter(sw); position: absolute; left: 0; top: 1px; width: 21px; height: 21px; border-radius: 50%; display: grid; place-items: center; font-size: 12px; font-weight: 800; color: #fff; }
.sw-strong li::before { background: #2f8a6c; }
.sw-weak li::before { background: #c2541f; }
.sw-col strong { font-size: 15.5px; }
.sw-col p { font-size: 14.5px; line-height: 1.75; margin-top: 2px; }
.sw-tip { color: var(--ink); }
.sw-tip b { display: inline-block; margin-right: 6px; padding: 0 8px; border-radius: 999px; background: #fff; font-size: 12px; color: #a2481b; }
@media (min-width: 760px) { .sw-grid { grid-template-columns: 1fr 1fr; } }

/* ゴールに向かう4つの力 */
.forces { display: grid; gap: 12px; margin-top: 14px; }
.force { position: relative; padding: 16px; border: 1.5px solid var(--line); border-radius: 18px; background: #fdfcf9; }
.force.is-focus { border-color: var(--type); box-shadow: inset 0 0 0 1px var(--type); }
.force-flag { display: inline-block; margin-bottom: 6px; padding: 2px 10px; border-radius: 999px; background: var(--type); color: #fff; font-size: 12px; font-weight: 800; }
.force h3 { font-size: 19px; }
.force-sub { font-size: 13.5px; color: var(--muted); margin-top: 2px; }
.force-level { display: flex; align-items: center; gap: 10px; margin-top: 10px; font-size: 15px; font-weight: 800; }
.force-reading { margin-top: 8px; font-size: 15.5px; line-height: 1.8; }
.force-about { margin-top: 10px; padding: 10px 12px; border-radius: 12px; background: var(--soft); font-size: 13.5px; line-height: 1.75; color: var(--ink); }
.force-about b, .force-grow b { display: block; font-size: 12.5px; margin-bottom: 2px; }
.force-grow { margin-top: 10px; font-size: 14.5px; line-height: 1.7; }
.force-grow b { color: var(--type); }
.forces-sum { margin-top: 14px; padding: 12px 14px; border-left: 4px solid var(--type); background: color-mix(in srgb, var(--type) 7%, #fff); font-size: 15.5px; line-height: 1.75; }
@media (min-width: 760px) { .forces { grid-template-columns: 1fr 1fr; } }

/* 次にやること */
.steps { list-style: none; margin: 12px 0 0; padding: 0; display: grid; gap: 10px; }
.steps li { padding: 14px 16px; border-radius: 16px; background: #fdfcf9; border: 1.5px solid var(--line); }
.step-when { display: inline-block; padding: 2px 10px; border-radius: 999px; background: var(--navy); color: #fff; font-size: 12.5px; font-weight: 800; }
.step-text { margin-top: 8px; font-size: 16px; line-height: 1.75; font-weight: 700; }
.step-why { margin-top: 4px; font-size: 13.5px; color: var(--muted); }
@media (min-width: 760px) { .steps { grid-template-columns: repeat(3, 1fr); } }

/* 相性とシェア */
.match-card { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 4px 14px; align-items: center; margin-top: 12px; padding: 14px; border: 1.5px solid var(--c); border-radius: 18px; background: color-mix(in srgb, var(--c) 6%, #fff); }
.match-card img { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; object-position: center top; border-radius: 12px; }
.match-body { grid-column: 1 / -1; }
.match-card h3 { font-size: 18px; display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; }
.match-card h3 span { font-size: 13px; color: var(--c); }
.match-card p { margin-top: 8px; font-size: 14.5px; line-height: 1.75; }
.match-card b { display: block; font-size: 12.5px; color: var(--c); }
.share-box { margin-top: 18px; padding: 16px; border-radius: 18px; background: var(--navy); color: #fff; }
.share-box h3 { font-size: 15px; color: #dedcf7; }
.share-text { margin-top: 6px; font-size: 16px; line-height: 1.75; font-weight: 700; }
.share-btn { margin-top: 12px; width: 100%; background: #fff; color: var(--navy); border-color: #fff; }
.share-status { margin-top: 6px; min-height: 1.4em; font-size: 13px; color: #dedcf7; }
@media (min-width: 760px) {
  .match-card { grid-template-columns: 130px minmax(0, 1fr); align-items: start; }
  .match-card img { grid-row: 1 / span 2; aspect-ratio: 2 / 3; }
  .match-body { grid-column: 2; }
  .share-btn { width: auto; }
}

/* くわしいデータ（開いたときだけ） */
.more-area { scroll-margin-top: 8px; }
.more-lead { margin-top: 6px; font-size: 14px; color: var(--muted); }
.more-item { border: 1px solid var(--line); border-radius: 16px; background: var(--card); }
.more-item + .more-item { margin-top: 8px; }
.more-item > summary { min-height: 52px; padding: 12px 16px; display: flex; align-items: center; justify-content: space-between; gap: 12px; cursor: pointer; list-style: none; font-size: 15px; font-weight: 800; color: var(--navy); }
.more-item > summary::-webkit-details-marker { display: none; }
.more-item > summary::after { content: "＋"; color: var(--type); font-size: 18px; flex: 0 0 auto; }
.more-item[open] > summary::after { content: "−"; }
.more-item > summary:focus-visible { outline: 3px solid var(--navy); outline-offset: 2px; border-radius: 16px; }
.more-body { padding: 0 16px 16px; }
.more-body > .block { border: 0; padding: 0; background: none; box-shadow: none; }
.more-body h3 { font-size: 16px; margin: 14px 0 4px; }
.more-body .axes-meters { display: grid; gap: 16px; margin-top: 12px; }

/* 過去・未来：めざす方向と、未来を考える理由 */
.quad-aim { stroke: var(--ink); stroke-width: 2; stroke-dasharray: 5 4; stroke-linecap: round; }
.quad-aim-head { fill: var(--ink); }
.quad-aim-label { font-size: 11px; font-weight: 800; fill: var(--ink); paint-order: stroke; stroke: #fffaf3; stroke-width: 3px; stroke-linejoin: round; }
.time-premise { margin-top: 18px; padding: 14px 16px; border-radius: 16px; background: #eef3f8; }
.time-premise h3 { font-size: 15.5px; color: #2c4a72; margin-bottom: 4px; }
.time-premise p { font-size: 15px; line-height: 1.8; }
.time-premise p + p { margin-top: 8px; }
.time-advice { display: grid; gap: 14px; margin-top: 16px; }
.time-actions { margin: 8px 0 0; padding: 0; list-style: none; display: grid; gap: 6px; }
.time-actions li { position: relative; padding: 8px 12px 8px 32px; border-radius: 12px; background: color-mix(in srgb, var(--c) 9%, #fff); font-size: 15px; line-height: 1.7; font-weight: 700; }
.time-actions li::before { content: "→"; position: absolute; left: 12px; top: 8px; color: var(--c); font-weight: 800; }
@media (min-width: 760px) { .time-advice { grid-template-columns: 1fr 1fr; gap: 18px 28px; } }

.t64-note { margin-top: 6px; text-align: center; font-size: 13px; color: var(--muted); }
.you-hit { margin-top: 18px; padding: 12px 14px; border-radius: 14px; background: var(--card); border: 1.5px solid color-mix(in srgb, var(--c) 40%, #fff); font-size: 15px; line-height: 1.75; font-weight: 700; }

.sw-lead { font-size: 13px; color: var(--muted); margin: -2px 0 8px; }

/* 二人で組むときのヒント */
.pair-cards { display: grid; gap: 12px; margin-top: 14px; }
.pair-card { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 4px 14px; align-items: center; padding: 14px; border: 1.5px solid var(--c); border-radius: 18px; background: color-mix(in srgb, var(--c) 6%, #fff); }
.pair-label { grid-column: 1 / -1; justify-self: start; margin-bottom: 6px; padding: 2px 10px; border-radius: 999px; background: var(--c); color: #fff; font-size: 12px; font-weight: 800; }
.pair-card img { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; object-position: center top; border-radius: 12px; }
.pair-card h3 { font-size: 18px; display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 10px; }
.pair-card h3 span { font-size: 13px; color: var(--c); }
.pair-body { grid-column: 1 / -1; }
.pair-body p { margin-top: 8px; font-size: 14.5px; line-height: 1.75; }
.pair-body b { display: block; font-size: 12.5px; color: var(--c); }
.pair-tip { padding: 8px 12px; border-radius: 12px; background: #fff; }
.match-heading { margin-top: 22px; font-size: 16px; }
.pair-list { list-style: none; margin: 8px 0 0; padding: 0; display: grid; gap: 8px; }
.pair-list li { display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: 12px; padding: 10px 12px; border-left: 4px solid var(--c); border-radius: 0 14px 14px 0; background: #fdfcf9; }
.pair-list img { width: 48px; height: 48px; object-fit: cover; object-position: center top; border-radius: 10px; }
.pair-list-name { font-size: 15px; font-weight: 800; color: var(--c); display: flex; align-items: center; gap: 8px; }
.pair-list-name span { padding: 0 8px; border-radius: 999px; background: var(--c); color: #fff; font-size: 11px; }
.pair-list p { font-size: 14.5px; line-height: 1.7; }
.pair-how { margin-top: 4px; color: var(--muted); }
.pair-how b { margin-right: 6px; color: var(--ink); font-size: 12.5px; }
.scenes { margin: 8px 0 0; display: grid; gap: 8px; }
.scenes > div { padding: 10px 14px; border-radius: 14px; background: var(--soft); }
.scenes dt { font-size: 13px; font-weight: 800; color: var(--type); }
.scenes dd { margin: 2px 0 0; font-size: 14.5px; line-height: 1.75; }
.words-lead { font-size: 13px; color: var(--muted); margin-top: 2px; }
.words-grid { display: grid; gap: 8px; margin-top: 8px; }
.words-grid p { padding: 12px 14px; border-radius: 14px; font-size: 15.5px; font-weight: 700; line-height: 1.7; }
.words-grid b { display: block; font-size: 12.5px; }
.word-go { background: #eef6f2; }
.word-go b { color: #1d6a52; }
.word-stop { background: #fbf1ea; }
.word-stop b { color: #a2481b; }
@media (min-width: 760px) {
  .pair-cards, .words-grid { grid-template-columns: 1fr 1fr; }
  .pair-list { grid-template-columns: 1fr 1fr; }
  .scenes { grid-template-columns: repeat(3, 1fr); }
}

/* 64タイプの並び（縦一本のグラフ） */
.rank-body { display: grid; gap: 14px; margin-top: 12px; }
.rank-figure { margin: 0; justify-self: center; width: min(100%, 360px); }
.rank-chart { display: block; width: 100%; height: auto; font-family: inherit; }
.rank-end { font-size: 12px; font-weight: 800; fill: var(--muted); }
.rank-tick { font-size: 10.5px; font-weight: 700; fill: #9a8f7e; }
.rank-tick-line { stroke: #e3dccf; stroke-width: 1; }
.rank-dot { fill: #fff; stroke: #b9ad9b; stroke-width: 1; }
.rank-note { font-size: 10.5px; fill: #9a8f7e; }
.rank-halo { fill-opacity: .22; }
.rank-you { stroke: #fff; stroke-width: 2.5; }
.rank-you-label { font-size: 14px; font-weight: 800; fill: var(--ink); paint-order: stroke; stroke: #fff; stroke-width: 4px; stroke-linejoin: round; }
.rank-you-name { font-size: 11px; font-weight: 700; fill: var(--muted); paint-order: stroke; stroke: #fff; stroke-width: 4px; stroke-linejoin: round; }
.rank-next { fill: #fff; stroke: #1f7a6d; stroke-width: 2; stroke-dasharray: 3 2; }
.rank-next-label { font-size: 11px; font-weight: 800; fill: #1f7a6d; paint-order: stroke; stroke: #fff; stroke-width: 4px; stroke-linejoin: round; }
.rank-up { stroke: #1f7a6d; stroke-width: 2; stroke-dasharray: 4 3; }
.rank-up-head { fill: #1f7a6d; }
.rank-big { font-size: clamp(30px, 9vw, 42px); font-weight: 800; line-height: 1.1; color: var(--type); }
.rank-big span { display: block; font-size: 13px; color: var(--muted); margin-bottom: 2px; }
.rank-climb { margin-top: 12px; padding: 12px 14px; border-radius: 14px; background: #eef6f2; font-size: 15px; line-height: 1.75; }
.rank-climb b { display: block; font-size: 12.5px; color: #1d6a52; }
.rank-note-text { margin-top: 10px; font-size: 14px; line-height: 1.75; color: var(--muted); }
.rank-how { margin-top: 10px; font-size: 13.5px; color: var(--muted); }
.rank-how summary { cursor: pointer; font-weight: 800; color: var(--navy); min-height: 40px; display: flex; align-items: center; }
.rank-how p { line-height: 1.75; }
@media (min-width: 760px) { .rank-body { grid-template-columns: 360px minmax(0, 1fr); align-items: center; gap: 28px; } }

/* シェア：共有シート・LINE・X・コピー */
.share-url { margin-top: 4px; font-size: 13px; color: #dedcf7; word-break: break-all; }
.share-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 12px; }
.share-actions .share-btn { grid-column: 1 / -1; margin-top: 0; }
.share-link { min-height: 48px; background: transparent; color: #fff; border-color: #ffffff80; font-size: 14.5px; text-decoration: none; }
.share-link:hover { background: #ffffff14; }
.share-actions .share-link:last-child { grid-column: 1 / -1; }
@media (min-width: 760px) { .share-actions { grid-template-columns: repeat(4, auto); justify-content: start; } .share-actions .share-btn, .share-actions .share-link:last-child { grid-column: auto; } }

/* 抽象度（視点の高さ）：4つの輪 */
.alpha-tag { margin-top: 2px; font-size: 15px; font-weight: 800; color: #1f6f86; }
.alpha-body { display: grid; gap: 14px; margin-top: 12px; }
.alpha-figure { margin: 0; padding: 12px 10px 10px; border: 1px solid #e6dcc6; border-radius: 18px; background: #fbf5e6; }
.alpha-rings { display: block; width: 100%; max-width: 340px; height: auto; margin: 0 auto; font-family: inherit; }
.alpha-ring { fill: #efe6d2; fill-opacity: .7; stroke: #fffaf0; stroke-width: 2.5; }
.alpha-feeling { fill: none; stroke: #b5542a; stroke-width: 2.5; stroke-dasharray: 6 5; }
.alpha-ring-name { font-size: 13px; font-weight: 800; fill: #4a3f2e; paint-order: stroke; stroke: #fffaf0; stroke-width: 3.5px; stroke-linejoin: round; }
.alpha-ring-name.is-own { font-size: 14.5px; fill: #12475a; }
.alpha-ring-who { font-size: 10.5px; font-weight: 700; fill: #5a4b33; paint-order: stroke; stroke: #fffaf0; stroke-width: 3px; stroke-linejoin: round; }
.alpha-figure figcaption { margin-top: 6px; font-size: 12.5px; line-height: 1.8; color: #6f6452; }
.alpha-key { display: inline-block; width: 14px; height: 10px; margin-right: 6px; border-radius: 3px; vertical-align: -1px; }
.alpha-key-fill { opacity: .55; }
.alpha-key-line { border: 2px dashed #b5542a; border-radius: 50%; width: 12px; height: 12px; vertical-align: -2px; }
.alpha-read { margin-top: 10px; font-size: 15.5px; line-height: 1.8; }
.alpha-next { margin-top: 12px; padding: 12px 14px; border-radius: 14px; background: #eef6f2; font-size: 15px; line-height: 1.75; }
.alpha-next b { display: block; font-size: 12.5px; color: #1d6a52; }
@media (min-width: 760px) { .alpha-body { grid-template-columns: 340px minmax(0, 1fr); align-items: center; gap: 24px; } }
.alpha-how { margin-top: 12px; font-size: 13.5px; color: var(--muted); }
.alpha-how summary { cursor: pointer; font-weight: 800; color: var(--navy); min-height: 40px; display: flex; align-items: center; }
.alpha-how p { margin-top: 6px; line-height: 1.75; }

/* 256タイプの見取り図（2026-10-14 抽象度を4つ目の見方に） */
.t256-grid .t64-grid-label { font-size: 9.5px; }
.t256-grid .t256-col-label { font-size: 8.5px; fill: var(--muted); }
.t256-grid .t64-cell.is-own { stroke-width: 1.2; }

/* 過去・未来の物差し（左＝過去、右＝未来） */
.time-scale-map { width: 100%; height: auto; display: block; font-family: inherit; }
.time-scale-art { opacity: .35; }
.time-scale-art.is-own { opacity: 1; }
.time-scale-tag { font-size: 10.5px; font-weight: 700; fill: var(--muted); }
.time-scale-seg { fill: #e9e1cf; }
.time-scale-wrap { max-width: 420px; margin: 18px auto 22px; }
.type-map .map-figure .time-scale-map { margin-top: 4px; }

/* 抽象度：自分のレベルの絵 */
.alpha-head { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 14px; align-items: center; margin-top: 4px; }
.alpha-art { width: 96px; height: 96px; border-radius: 18px; object-fit: cover; display: block; background: #fbf5e6; }
.alpha-head h2 { margin: 0; }
/* 過去・未来の物差しは横長なので、図を上・説明を下に置く */
.type-map.type-map-wide .map-figure { width: min(100%, 520px); }
@media (min-width: 760px) { .type-map.type-map-wide { grid-template-columns: minmax(0, 1fr); } }
/* 見取り図を外したので、タイプの絵の行を横幅いっぱいに使う */
@media (min-width: 760px) { .t64-body.t64-body-single { grid-template-columns: minmax(0, 1fr); } }
