/* Shared proportions for the home page and all public-site subpages. */
.ledger-site { --home-unit: 1px; }
@media (min-width: 1081px) and (min-height: 721px) {
  .ledger-site { --home-unit: clamp(1px, min(0.078125vw, 0.138889vh), 2.25px); }
}
.ledger-site .site-shell { padding-top: calc(12 * var(--home-unit)); padding-bottom: calc(12 * var(--home-unit)); }
.ledger-site .ledger-header { min-height: calc(60 * var(--home-unit)); }
.ledger-site .brand img { width: calc(220 * var(--home-unit)); }
.ledger-site .ledger-footer { min-height: 0; }
.ledger-site .ledger-footer > div { padding: calc(8 * var(--home-unit)); }
.ledger-site .ledger-footer h2 { margin-bottom: 3px; }
@media (min-width: 1081px) {
  .ledger-site .site-shell { width: min(100%, 2880px); padding-left: calc(34 * var(--home-unit)); padding-right: calc(34 * var(--home-unit)); }
  .ledger-site .ledger-header { grid-template-columns: .8fr 1fr 2.35fr; }
  .ledger-site .lab-index { padding-right: calc(16 * var(--home-unit)); }
  .ledger-site .lab-index dl { font-size: calc(10.9 * var(--home-unit)); gap: calc(3 * var(--home-unit)) calc(14 * var(--home-unit)); }
  .ledger-site .brand { padding: 0 calc(28 * var(--home-unit)); }
  .ledger-site .desktop-nav { font-size: calc(13.3 * var(--home-unit)); }
  .ledger-site .header-navigation { gap: calc(5 * var(--home-unit)); padding: calc(5 * var(--home-unit)) 0; }
  .ledger-site .language-switch { font-size: calc(10 * var(--home-unit)); gap: calc(12 * var(--home-unit)); }
  .ledger-site .header-navigation .desktop-nav { gap: calc(20 * var(--home-unit)); }
  .ledger-site .header-navigation .desktop-nav a::after { bottom: calc(-3 * var(--home-unit)); }
  .ledger-site .ledger-footer h2 { font-size: calc(10 * var(--home-unit)); }
  .ledger-site .ledger-footer p { font-size: calc(10.4 * var(--home-unit)); }
}
/* Inner pages use the same title scale, compact spacing, and ruled sections. */
.ledger-site.inner-page { font-size: calc(14 * var(--home-unit)); }
.ledger-site.inner-page .inner-masthead { display: block; min-height: 0; }
.ledger-site.inner-page .inner-kicker { display: none; }
.ledger-site.inner-page .inner-title-block { min-height: 0; padding: calc(18 * var(--home-unit)) calc(8 * var(--home-unit)); gap: calc(10 * var(--home-unit)); justify-content: flex-start; }
.ledger-site.inner-page .inner-title-block h1 { max-width: none; font-size: calc(40 * var(--home-unit)); line-height: 1.1; text-transform: none; }
.ledger-site.inner-page .eyebrow { font-size: calc(11 * var(--home-unit)); line-height: 1.5; }
.ledger-site.inner-page .join-lead,
.ledger-site.inner-page .research-lead { font-size: calc(14 * var(--home-unit)); line-height: 1.55; max-width: 90ch; }
.ledger-site.inner-page .inner-intro { grid-template-columns: calc(160 * var(--home-unit)) minmax(0, 1fr); min-height: 0; }
.ledger-site.inner-page .inner-rail { padding: calc(14 * var(--home-unit)) calc(8 * var(--home-unit)); font-size: calc(11 * var(--home-unit)); }
.ledger-site.inner-page .inner-intro > div:last-child { padding: calc(14 * var(--home-unit)) calc(20 * var(--home-unit)); }
.ledger-site.inner-page .inner-intro p { max-width: 90ch; font-size: calc(15 * var(--home-unit)); line-height: 1.5; }
.ledger-site.inner-page .section-number { font-size: calc(14 * var(--home-unit)); }
.ledger-site.inner-page .section-heading { min-height: calc(36 * var(--home-unit)); }
.ledger-site.inner-page .section-heading h2,
.ledger-site.inner-page .section-heading .text-link { font-size: calc(13 * var(--home-unit)); }
.ledger-site.inner-page .item-link { font-size: calc(12 * var(--home-unit)); }
.ledger-site.inner-page .original-language-note { padding: calc(10 * var(--home-unit)) calc(8 * var(--home-unit)); font-size: calc(12 * var(--home-unit)); }
/* Research overview. */
.ledger-site.inner-page .research-detail { grid-template-columns: minmax(calc(220 * var(--home-unit)), .85fr) minmax(0, 2.7fr); gap: calc(24 * var(--home-unit)); padding: calc(24 * var(--home-unit)) calc(8 * var(--home-unit)); }
.ledger-site.inner-page .research-detail-copy h2,
.ledger-site.inner-page .join-main h2 { font-size: calc(26 * var(--home-unit)); line-height: 1.25; }
.ledger-site.inner-page .research-detail-intro { font-size: calc(14 * var(--home-unit)); margin: calc(10 * var(--home-unit)) 0 calc(16 * var(--home-unit)); }
.ledger-site.inner-page .research-topics { gap: calc(20 * var(--home-unit)); }
.ledger-site.inner-page .research-topics h3 { font-size: calc(14 * var(--home-unit)); }
.ledger-site.inner-page .research-topics p { font-size: calc(13 * var(--home-unit)); }
.ledger-site.inner-page .research-detail-image figcaption { font-size: calc(10 * var(--home-unit)); padding: calc(6 * var(--home-unit)); }
.ledger-site.inner-page .research-jump-links a { font-size: calc(13 * var(--home-unit)); padding: calc(12 * var(--home-unit)) calc(12 * var(--home-unit)); }
.ledger-site.inner-page .research-flow { font-size: calc(12 * var(--home-unit)); margin-top: calc(16 * var(--home-unit)); }
.ledger-site.inner-page .research-closing { font-size: calc(13 * var(--home-unit)); padding: calc(16 * var(--home-unit)) calc(8 * var(--home-unit)); }
/* Joining information. */
.ledger-site.inner-page .join-section { grid-template-columns: calc(160 * var(--home-unit)) minmax(0, 1fr); }
.ledger-site.inner-page .join-section-rail { padding: calc(22 * var(--home-unit)) calc(8 * var(--home-unit)); font-size: calc(11 * var(--home-unit)); }
.ledger-site.inner-page .join-section-content { padding: calc(22 * var(--home-unit)) calc(24 * var(--home-unit)); }
.ledger-site.inner-page .join-main h3 { font-size: calc(15 * var(--home-unit)); }
.ledger-site.inner-page .join-main .join-label { font-size: calc(11 * var(--home-unit)); }
.ledger-site.inner-page .join-note,
.ledger-site.inner-page .join-programme small,
.ledger-site.inner-page .join-amount span { font-size: calc(12 * var(--home-unit)); }
.ledger-site.inner-page .join-action,
.ledger-site.inner-page .join-programme strong { font-size: calc(14 * var(--home-unit)); }
.ledger-site.inner-page .join-amount strong { font-size: calc(34 * var(--home-unit)); }
.ledger-site.inner-page .join-funding { padding-left: calc(20 * var(--home-unit)); }
/* Directories and publication records. */
.ledger-site.inner-page .index-toolbar { display: grid; grid-template-columns: calc(160 * var(--home-unit)) minmax(0, 1fr) calc(110 * var(--home-unit)); min-height: calc(52 * var(--home-unit)); }
.ledger-site.inner-page .index-toolbar label,
.ledger-site.inner-page .index-toolbar p { font-size: calc(11 * var(--home-unit)); }
.ledger-site.inner-page .index-toolbar input { font-size: calc(14 * var(--home-unit)); }
.ledger-site.inner-page .publication-head { font-size: calc(10 * var(--home-unit)); }
.ledger-site.inner-page .inner-publication-list li { min-height: calc(58 * var(--home-unit)); font-size: calc(12 * var(--home-unit)); }
.ledger-site.inner-page .inner-publication-list .publication-title { font-size: calc(13 * var(--home-unit)); }
.ledger-site.inner-page .publication-record small { font-size: calc(11 * var(--home-unit)); }
.ledger-site.inner-page .people-group { grid-template-columns: calc(160 * var(--home-unit)) minmax(0, 1fr); }
.ledger-site.inner-page .people-group > header { padding: calc(18 * var(--home-unit)) calc(8 * var(--home-unit)); }
.ledger-site.inner-page .people-group > header h2 { font-size: calc(21 * var(--home-unit)); line-height: 1.25; }
.ledger-site.inner-page .person-entry { padding: calc(18 * var(--home-unit)); min-height: 0; }
.ledger-site.inner-page .people-grid-featured .person-entry { grid-template-columns: calc(180 * var(--home-unit)) minmax(0, 1fr); gap: calc(24 * var(--home-unit)); }
.ledger-site.inner-page .person-image { min-height: 0; aspect-ratio: 1; }
.ledger-site.inner-page .person-entry h3 { font-size: calc(27 * var(--home-unit)); line-height: 1.1; }
.ledger-site.inner-page .person-role { margin: calc(10 * var(--home-unit)) 0; font-size: calc(11 * var(--home-unit)); }
.ledger-site.inner-page .person-entry .person-copy > p:not(.person-role) { max-width: 70ch; font-size: calc(13 * var(--home-unit)); }
/* Long titles and author profiles keep natural height and readable line lengths. */
.ledger-site.inner-page .article-masthead { display: block; min-height: 0; }
.ledger-site.inner-page .article-section { flex-direction: row; border-right: 0; padding: calc(12 * var(--home-unit)) calc(8 * var(--home-unit)) 0; font-size: calc(11 * var(--home-unit)); }
.ledger-site.inner-page .article-title { padding: calc(16 * var(--home-unit)) calc(8 * var(--home-unit)) calc(24 * var(--home-unit)); }
.ledger-site.inner-page .article-title h1 { font-size: calc(36 * var(--home-unit)); line-height: 1.15; margin: calc(12 * var(--home-unit)) 0; max-width: 45ch; }
.ledger-site.inner-page .article-authors,
.ledger-site.inner-page .article-venue { font-size: calc(13 * var(--home-unit)); max-width: 90ch; }
.ledger-site.inner-page .article-ledger,
.ledger-site.inner-page .profile-ledger { grid-template-columns: calc(160 * var(--home-unit)) minmax(0, 1fr); }
.ledger-site.inner-page .article-body { padding: calc(24 * var(--home-unit)); font-size: calc(15 * var(--home-unit)); max-width: 85ch; min-height: 0; }
.ledger-site.inner-page .profile-masthead { grid-template-columns: calc(160 * var(--home-unit)) calc(200 * var(--home-unit)) minmax(0, 1fr); min-height: 0; }
.ledger-site.inner-page .profile-image { padding: calc(16 * var(--home-unit)); }
.ledger-site.inner-page .profile-image img { aspect-ratio: 1; height: auto; }
.ledger-site.inner-page .profile-title { padding: calc(20 * var(--home-unit)); }
.ledger-site.inner-page .profile-title h1 { font-size: calc(40 * var(--home-unit)); line-height: 1.1; }
@media (max-width: 1080px) {
  .ledger-site.inner-page .research-detail { grid-template-columns: 200px minmax(0, 1fr); }
  .ledger-site.inner-page .research-topics { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .ledger-site .brand img { width: 165px; }
  .ledger-site.inner-page .inner-title-block { min-height: 0; padding: 20px 0; }
  .ledger-site.inner-page .inner-title-block h1 { font-size: 32px; line-height: 1.25; }
  .ledger-site.inner-page .inner-intro,
  .ledger-site.inner-page .join-section,
  .ledger-site.inner-page .research-detail,
  .ledger-site.inner-page .people-group,
  .ledger-site.inner-page .people-grid-featured .person-entry,
  .ledger-site.inner-page .article-ledger,
  .ledger-site.inner-page .profile-ledger,
  .ledger-site.inner-page .profile-masthead { grid-template-columns: minmax(0, 1fr); }
  .ledger-site.inner-page .inner-rail,
  .ledger-site.inner-page .join-section-rail { border-right: 0; padding: 12px 0 0; }
  .ledger-site.inner-page .inner-intro > div:last-child,
  .ledger-site.inner-page .join-section-content,
  .ledger-site.inner-page .research-detail,
  .ledger-site.inner-page .article-body { padding: 16px 0; }
  .ledger-site.inner-page .research-topics { grid-template-columns: 1fr; }
  .ledger-site.inner-page .index-toolbar { display: grid; grid-template-columns: minmax(0, 1fr) 70px; }
  .ledger-site.inner-page .index-toolbar label { grid-column: 1 / -1; padding: 12px 0; }
  .ledger-site.inner-page .index-toolbar input { padding-left: 0; }
  .ledger-site.inner-page .people-group > header { border-right: 0; padding: 16px 0; }
  .ledger-site.inner-page .people-group > header p { margin-bottom: 8px; }
  .ledger-site.inner-page .person-entry { padding: 16px 0; }
  .ledger-site.inner-page .people-grid-featured .person-image { max-width: 240px; }
  .ledger-site.inner-page .article-title h1 { font-size: 30px; }
  .ledger-site.inner-page .profile-image { max-width: 240px; padding: 12px 0; }
  .ledger-site.inner-page .profile-title { padding: 16px 0; }
}
@media (max-width: 380px) { .ledger-site .brand img { width: 130px; } }
/* Japanese descriptions use native line breaking, with balanced short headings/leads. */
html:lang(ja) .ledger-site main { line-break: strict; word-break: normal; }
html:lang(ja) .ledger-site main :is(p, li, address) { text-wrap: pretty; }
html:lang(ja) .ledger-site main :is(h1, h2, h3),
html:lang(ja) .ledger-site .research-item p,
html:lang(ja) .ledger-site .research-topics p,
html:lang(ja) .ledger-site .research-detail-intro,
html:lang(ja) .ledger-site .research-lead,
html:lang(ja) .ledger-site .join-lead,
html:lang(ja) .ledger-site .inner-intro p { text-wrap: balance; }
html:lang(ja) .ledger-site .research-lead,
html:lang(ja) .ledger-site .join-lead,
html:lang(ja) .ledger-site .inner-intro p { max-width: none; }

/* Crop and recolor the original ICSM image without redrawing circuit geometry. */
.ledger-site .eda-layout-crop { display: block; overflow: hidden; background: #000; }
.ledger-site .eda-layout-crop img.eda-layout-image { object-fit: cover; object-position: 60% 42%; transform: scale(1.4); transform-origin: 62% 42%; filter: invert(1) hue-rotate(140deg) saturate(.45) brightness(.9); }
.ledger-site .figure-credit { padding: 6px 8px; margin: 0; font-size: 10px; line-height: 1.5; }

/* Research thumbnails share a 16:9 viewport; source pixels remain unchanged. */
.ledger-site.inner-page .research-image-link { display:block; color:inherit; }
.ledger-site.inner-page .research-image-link:focus-visible { outline:3px solid var(--blue); outline-offset:3px; }
.ledger-site.inner-page .research-image-frame { display:block; position:relative; width:100%; aspect-ratio:16/9; overflow:hidden; background:#f6f3ec; }
.ledger-site.inner-page .research-image-frame img { display:block; width:100%; height:100%; aspect-ratio:auto; object-fit:contain; }
.ledger-site.inner-page .research-image-systems .research-image-frame img { position:absolute; width:210.58065%; max-width:none; height:auto; left:-45.16129%; top:-173.3945%; }

.ledger-site.inner-page .research-image-sources { padding:12px 8px; color:var(--muted); font-size:11px; line-height:1.6; }
.ledger-site.inner-page .research-image-sources summary { cursor:pointer; }
.ledger-site.inner-page .research-image-sources p { margin:8px 0 0; }
