/* Approved ECHO text editions: horizontal Japanese headings and steady reading space. */
.page-stopped-button{--echo-heading:#24546d}
.page-who-is-speaking{--echo-heading:#795063}
.page-feeding{--echo-heading:#486036}
.page-judge{--echo-heading:#25586d}
.page-chair{--echo-heading:#855324}
.page-public-ledger{--echo-heading:#806019}
.page-diplomacy{--echo-heading:#8a3b32}
.page-alliance{--echo-heading:#873946}
.page-apology-receipt{--echo-heading:#94422d}
.page-rope{--echo-heading:#2e6574}
.article-philosophy{--echo-heading:#665283}
.echo-approved .editorial-phrase{display:inline;font:inherit}
.echo-approved.page-apology-receipt .article-title-ja p:last-child{color:var(--feature-ink,#2c2218)}
.echo-approved .column-compass>div{grid-template-columns:repeat(3,minmax(0,1fr))}
.echo-approved .column-compass span{min-width:0}
.echo-approved .column-compass>footer{white-space:normal}
.echo-approved .apology-route span{min-width:0;container-type:inline-size}
.echo-approved .apology-route b{font-size:min(.95rem,14cqi);white-space:nowrap}
:is(.echo-approved,.page-who-is-speaking,.page-stopped-button) .article-body>.section-marker{display:block;max-width:none!important;width:100%;box-sizing:border-box;font-size:clamp(.8rem,1.4vw,1.05rem);line-height:1.5;white-space:nowrap;letter-spacing:.08em}
@media(min-width:801px){
  .page-who-is-speaking .receiver-diagram>p{grid-template-columns:minmax(0,1fr) auto minmax(0,1.4fr) auto minmax(0,1.25fr);gap:1rem}
  .page-who-is-speaking .receiver-diagram>p span{min-width:0;font-size:clamp(1rem,2vw,1.6rem)}
}
@media(max-width:760px){
  .echo-approved .apology-receipt{padding:1.2rem;container-type:inline-size}
  .echo-approved .apology-receipt b{font-size:min(3.2rem,19cqi)}
  .echo-approved .apology-receipt small{display:block;overflow-wrap:anywhere}
  .page-who-is-speaking .consciousness-collection-card{padding:1.2rem;container-type:inline-size}
  .page-who-is-speaking .consciousness-collection-card b{font-size:min(3.2rem,15cqi)}
  .echo-approved :is(.column-question,.law-pull,.apology-ending,.diplomacy-question,.money-question,.question-field){padding:1.2rem .9rem;container-type:inline-size;margin-block:2.75rem}
  .echo-approved :is(.column-question,.law-pull,.apology-ending,.diplomacy-question,.money-question,.question-field) b{font:500 min(1.15rem,7cqi)/1.75 var(--jp);letter-spacing:0}
  .echo-approved .editorial-phrase{display:block;white-space:nowrap}
  .echo-approved .column-compass>div{grid-template-columns:1fr}
}
:is(.echo-approved,.page-stopped-button,.page-who-is-speaking) .article-body>h2:not(.section-marker){
  max-width:none;width:auto;margin:3.25rem 0 1.1rem;
  font:500 clamp(1.3rem,2vw,1.65rem)/1.65 var(--jp);
  color:var(--echo-heading)!important;
  letter-spacing:.025em;text-wrap:balance;overflow-wrap:normal;
}
:is(.echo-approved,.page-stopped-button,.page-who-is-speaking) .article-title-ja{min-width:0;max-width:42rem}
:is(.echo-approved,.page-stopped-button,.page-who-is-speaking) .article-title-ja p:last-child{
  font:400 clamp(1rem,1.35vw,1.15rem)/1.8 var(--jp);letter-spacing:.02em;text-wrap:balance;
}
.page-stopped-button :is(.button-ending,.button-pullquote) b{
  font:500 clamp(1.25rem,2.2vw,1.9rem)/1.6 var(--jp);text-wrap:balance;letter-spacing:.025em;
}
@media(max-width:760px){
  :is(.echo-approved,.page-stopped-button,.page-who-is-speaking) .article-body>h2:not(.section-marker){
    font-size:clamp(1.08rem,5.8vw,1.24rem);margin-top:2.75rem;margin-bottom:1rem;line-height:1.65;
  }
  .echo-approved .article-body>h2:not(.section-marker){font-size:clamp(1.03rem,4.85vw,1.24rem)}
  .page-stopped-button :is(.button-ending,.button-pullquote){margin-block:2.75rem;padding:1.1rem}
  .page-stopped-button :is(.button-ending,.button-pullquote) b{font-size:1.2rem}
  :is(.echo-approved,.page-stopped-button,.page-who-is-speaking) .article-title-ja p:last-child{font-size:1rem}
}

@media(min-width:761px) and (max-width:1200px){
  .echo-approved.page-apology-receipt :is(.apology-clocks,.apology-route,.apology-receipt,.apology-next-day,.apology-repair,.apology-ending){margin-left:0;margin-right:0;width:auto;max-width:100%}
  .page-who-is-speaking :is(.consciousness-evidence,.receiver-diagram,.consciousness-collection-card){
    margin-left:0;margin-right:0;width:100%;max-width:100%;
  }
}

/* Break Japanese subheadings at editorial phrase boundaries, never mid-phrase. */
:is(.echo-approved,.page-stopped-button,.page-who-is-speaking) .article-body>h2 .heading-phrase{
  display:inline;font:inherit;letter-spacing:inherit;margin:0;
}
@media(max-width:760px){
  :is(.echo-approved,.page-stopped-button,.page-who-is-speaking) .article-body>h2 .heading-phrase{
    display:block;white-space:nowrap;
  }
}

/* Circuit cells must shrink within their frame; labels fit the available cell width. */
.page-stopped-button .button-circuit>div{grid-template-columns:repeat(4,minmax(0,1fr))}
.page-stopped-button .button-circuit span{min-width:0;container-type:inline-size}
.page-stopped-button .button-circuit b{font-size:min(1.8rem,18cqi);white-space:nowrap}
@media(max-width:700px){
  .page-stopped-button .button-circuit>div{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-stopped-button .button-circuit span{padding:1rem .75rem}
}

.page-stopped-button .button-pullquote .quote-sentence{display:block}
.page-stopped-button .button-pullquote .quote-phrase{display:inline}
@media(max-width:760px){
  .page-stopped-button .button-pullquote{padding:1.1rem .5rem}
  .page-stopped-button .button-pullquote b{font-size:clamp(.9375rem,5vw,1.1rem);letter-spacing:0}
  .page-stopped-button .button-pullquote .quote-sentence,
  .page-stopped-button .button-pullquote .quote-phrase{display:block;white-space:nowrap}
}

/* Mid-article diagrams support the reading flow rather than acting as finales. */
.echo-approved .apology-receipt{margin:2.25rem 0;padding:1.4rem 2rem;box-shadow:5px 7px 0 var(--feature-mid);container-type:inline-size}
.echo-approved .apology-receipt b{margin:1.4rem 0 .8rem;font-size:min(2.75rem,10cqi);line-height:1;letter-spacing:-.045em;white-space:nowrap}
.echo-approved .apology-receipt p{font-size:14px!important;line-height:1.8!important}
.echo-approved .apology-receipt small{margin-top:1.2rem;padding-top:.65rem;overflow-wrap:normal}
.echo-approved .apology-receipt:before{top:.85rem;right:.6rem;padding:.3rem .75rem;font-size:7px;border-width:1px;transform:rotate(5deg)}
.echo-approved .apology-next-day{margin:2.25rem 0;padding:1.4rem 2rem}
.echo-approved .apology-next-day>p{margin:0}
.echo-approved .apology-next-day>div{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:1.2rem}
.echo-approved .apology-next-day span{min-height:0;min-width:0;padding:.9rem 1rem;font-size:12px}
.echo-approved .apology-next-day b{margin-bottom:.65rem}
.echo-approved .apology-next-day footer{display:block;grid-template-columns:none;width:auto;max-width:none;min-height:0;margin:0;padding:.9rem 0 0;white-space:normal;text-align:left;letter-spacing:normal;float:none;background:transparent;color:inherit;font:12px/1.8 var(--jp)}
@media(max-width:760px){
  .echo-approved .apology-receipt,.echo-approved .apology-next-day{margin-block:1.8rem;padding:1.1rem}
  .echo-approved .apology-receipt b{font-size:min(2rem,11cqi)}
  .echo-approved .apology-receipt p{font-size:13px!important}
  .echo-approved .apology-receipt:before{font-size:6px;right:.45rem;top:.65rem}
  .echo-approved .apology-next-day>div{grid-template-columns:1fr;margin-top:.9rem}
  .echo-approved .apology-next-day span{display:grid;grid-template-columns:5.8rem minmax(0,1fr);align-items:baseline;gap:.5rem;padding:.65rem 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.25)}
  .echo-approved .apology-next-day b{margin:0}
}

/* Light paper panels need their own ink, independent of the surrounding dark page. */
:is(.echo-approved,.page-who-is-speaking,.page-stopped-button) .article-taxonomy{color:#352b25}
:is(.echo-approved,.page-who-is-speaking,.page-stopped-button) .article-taxonomy :is(p,.article-fields a,.article-tags span){color:#352b25!important;opacity:1}
:is(.page-feeding,.page-chair,.page-alliance,.page-rope,.page-stopped-button,.page-apology-receipt,.page-public-ledger) .michikusa{color:#352b25}
:is(.page-feeding,.page-chair,.page-alliance,.page-rope,.page-stopped-button,.page-apology-receipt,.page-public-ledger) .michikusa :is(p,h2,a,b,span,small){color:#352b25!important;opacity:1}
.page-apology-receipt .apology-route small{color:#86402c!important;opacity:1}
.page-apology-receipt .apology-ending small{color:#f0d2b5!important;opacity:1}
.page-public-ledger .article-hero.article-hero-text h1{color:#f5e6b9!important}

:is(.echo-approved,.page-who-is-speaking,.page-stopped-button) :is(.reading-shelf .shelf-link,.reading-shelf .shelf-status,.trail-account small){color:#55483e!important;opacity:1}

.page-chair .article-hero .article-title-ja p:last-child{color:#f4f1e9!important;opacity:1}
@media(max-width:760px){.page-chair .article-hero h1{font-size:clamp(2.2rem,12vw,3.4rem)}}

.echo-review{--echo-heading:var(--format-accent)}
.echo-review .article-body>h2:not(.section-marker),.echo-review .desk h2{color:var(--echo-heading)!important}
.echo-review .article-title-ja .review-label{font:11px/1.7 var(--sans);color:inherit}
.echo-review .article-body .magazine-plate{margin:2.5rem 0;width:100%;max-width:100%}
.echo-review .article-body .magazine-plate img{max-height:440px;object-fit:contain;background:#fff}
.echo-review .article-body .magazine-plate figcaption{font:11px/1.8 var(--sans);margin-top:12px;color:#48443d}
.echo-review .desk{border-top:1px solid var(--line);margin-top:3rem;padding-top:1.25rem;font:15px/1.9 var(--sans);color:var(--ink)}
.echo-review .desk h2{font:600 13px/1.8 var(--sans);letter-spacing:.06em;color:var(--echo-heading);display:flex;gap:12px;flex-wrap:wrap;margin:0 0 1.5rem;writing-mode:horizontal-tb}
.echo-review .desk h2 span{font-size:11px;letter-spacing:0}.echo-review .desk h3{font:500 18px/1.7 var(--jp);margin:0 0 .6rem}
.echo-review .books{display:grid;grid-template-columns:1fr 1fr;gap:24px}.echo-review .books p{font:13px/1.9 var(--sans)}
.echo-review .museum-card{display:grid;grid-template-columns:130px minmax(0,1fr);gap:20px;align-items:center}
.echo-review .museum-card span{display:grid;gap:8px}.echo-review .museum-card b{font:24px/1.2 var(--serif)}.echo-review .museum-card em{font:12px/1.8 var(--sans)}
.echo-review .evidence{border-left:2px solid var(--line);padding:0 0 0 18px;margin:2rem 0;font:13px/1.9 var(--sans)}
.echo-review .sources{font:13px/1.9 var(--sans)}.echo-review .next>a{display:block;margin:1.5rem 0}.echo-review .next span{display:block;font:13px/1.8 var(--sans)}
.echo-review .returns{display:flex;flex-wrap:wrap;gap:20px;border-top:1px solid var(--line);padding-top:1rem;font:11px/1.8 var(--sans)}
@media(max-width:760px){.echo-review .books{grid-template-columns:1fr}.echo-review .article-hero-text h1{font-size:clamp(2.3rem,10.4vw,4.8rem);overflow-wrap:normal;max-width:100%;line-height:1.05}.echo-review .article-title-ja p{line-height:1.8}.echo-review .museum-card{grid-template-columns:95px minmax(0,1fr)}.echo-review .museum-card b{font-size:20px}}

.echo-review.format-theme-paper{--format-accent:#875642}.echo-review.format-theme-time{--format-accent:#5b7180}.echo-review.format-theme-botany{--format-accent:#566b4b}.echo-review.format-theme-dark{--format-accent:#984932}
.echo-review .article-hero-text{min-height:0;padding-block:clamp(2.5rem,5vw,5rem)}
.echo-review .article-hero-text h1{margin-block:2.5rem;line-height:1.03;font-size:clamp(3rem,8vw,8rem)}
.echo-review .article-body{margin-block:3rem}.echo-review .article-body>h2:not(.section-marker){margin-top:2.5rem}
.echo-review .column-question{background:var(--format-accent);color:#fff;margin-block:2.5rem;padding:clamp(1.4rem,3vw,2.5rem);border-radius:0}
.echo-review .column-question b{font:500 clamp(1.45rem,2.7vw,2.4rem)/1.6 var(--jp);letter-spacing:.015em}
.echo-review .column-question .editorial-phrase{display:inline-block;max-width:100%;white-space:normal}
.echo-review .source-desk{margin-top:2.5rem;padding:2rem;border-top:5px solid var(--format-accent);background:var(--format-tint);color:var(--format-ink);font:13px/1.9 var(--sans)}
.echo-review .source-desk .eyebrow{font:700 10px/1.6 var(--sans);letter-spacing:.1em;margin:0 0 1rem}
.echo-review .source-desk h2{font:500 clamp(1.3rem,2vw,1.65rem)/1.65 var(--jp);color:var(--format-accent);margin:0 0 1.2rem;writing-mode:horizontal-tb;max-width:none}
.echo-review .source-desk a{border-bottom:1px solid}.echo-review .source-desk li{margin-bottom:1rem}.echo-review .source-desk li p{margin:.5rem 0}
@media(max-width:760px){.echo-review .source-desk{padding:1.25rem}}
.echo-review .echo-source-desk .section-marker{background:var(--format-accent);color:#fff!important;display:block;width:100%;max-width:none;font:600 13px/1.6 var(--sans);padding:.75rem 1rem;margin:0 0 1rem;letter-spacing:.06em;white-space:normal}
.echo-review .echo-source-desk li{margin-bottom:1rem}.echo-review .echo-source-desk li p{margin:.5rem 0}
.echo-review .reading-shelf{padding-block:2.5rem;background:var(--format-tint);color:var(--format-ink);margin-bottom:2.5rem}
.echo-review .reading-shelf header h2{font-size:clamp(3rem,5vw,5rem);margin-block:1rem}.echo-review .reading-shelf li{gap:1.2rem;grid-template-columns:1fr 1.25fr auto}
.echo-review .echo-object-card{min-height:0;margin-block:0 2.5rem;max-width:1040px}
.echo-review .echo-object-card .generated-card-visual{min-height:0;height:240px}.echo-review .echo-object-card .generated-card-visual img{object-fit:contain;background:#fff;filter:none}
.echo-review .echo-object-card .generated-card-copy{padding:2rem}.echo-review .echo-object-card .generated-card-copy strong{font-size:clamp(2rem,4vw,3.5rem)}
.echo-review .michikusa{margin-top:2.5rem;padding-block:3rem}.echo-review .michikusa h2{font-size:clamp(3rem,7vw,6rem);margin-block:1.25rem}
@media(max-width:760px){.echo-review .article-hero-text h1{font-size:clamp(2.2rem,10.5vw,4rem);margin-block:2rem}.echo-review .reading-shelf li{grid-template-columns:1fr;gap:.7rem}.echo-review .reading-shelf ol{margin-top:1.5rem}.echo-review .echo-object-card{display:block;margin-inline:1rem}.echo-review .echo-object-card .generated-card-visual{height:200px;border-right:0;border-bottom:1px solid var(--line)}.echo-review .column-question b{font-size:1.45rem}.echo-review .echo-source-desk .section-marker{font-size:12px}}

.echo-review .michi-grid a small{font:500 clamp(1.1rem,2vw,1.35rem)/1.75 var(--jp)}.echo-review .michi-grid a b{font-size:clamp(1.5rem,2.5vw,2.2rem)}.echo-review .michi-relation{font:12px/1.8 var(--sans);margin:.8rem 0 0}

.echo-review .article-body .magazine-plate{padding:1.2rem;background:#f1ede4;color:#252922}.echo-review .article-body .magazine-plate img{max-height:340px;max-width:100%;width:auto;margin-inline:auto}.echo-review .article-body .magazine-plate figcaption{color:#343b34}.echo-review .article-body>h2:not(.section-marker){max-width:none;width:auto;font-size:clamp(1.3rem,2vw,1.7rem);line-height:1.7;text-wrap:wrap}.echo-review .heading-phrase{display:inline-block;max-width:100%;white-space:nowrap}@media(max-width:420px){.echo-review .heading-phrase{white-space:normal}}
/* Each existing ECHO design retains its structure and gains topic-specific color. */
body.echo-review{--paper:#faf6ed;--ink:#242923;background:var(--paper);color:var(--ink)}
body.echo-review .article-hero-text{background:var(--format-tint);color:var(--format-ink);border-bottom:5px solid var(--format-accent)}
body.echo-review .article-hero-text h1{color:var(--format-accent)!important}
body.echo-review .article-hero-text .article-title-ja p{color:var(--format-ink)!important}
body.echo-review .article-body>h2:not(.section-marker){color:var(--format-accent)!important;border-left:4px solid var(--format-accent);padding-left:.8rem}
body.echo-review .article-body>h2 .heading-phrase{color:inherit!important;display:inline-block;white-space:nowrap;font:inherit;letter-spacing:inherit}
body.echo-review .article-sections{grid-column:1/-1;display:flex;gap:.7rem 1.5rem;flex-wrap:wrap;font:12px/1.8 var(--sans);margin-top:1rem}
body.echo-review .article-sections a{color:var(--format-accent);border-bottom:1px solid;padding-bottom:.2rem}
body.echo-review .source-desk{background:var(--format-tint);border-top:0;border-left:5px solid var(--format-accent);padding:1.4rem 1.6rem;color:var(--format-ink)}
body.echo-review .source-desk .section-marker{display:block;background:var(--format-accent);color:#fff!important;white-space:nowrap;width:100%;max-width:none;padding:.65rem .9rem;font:700 clamp(.7rem,2.6vw,.88rem)/1.6 var(--sans);letter-spacing:.05em;margin:0 0 1.1rem;box-sizing:border-box}
body.echo-review .source-desk #article-source-desk{font:500 1.25rem/1.7 var(--jp);color:var(--format-accent)!important}
body.echo-review .michikusa{display:block!important;visibility:visible!important;opacity:1!important;background:var(--format-tint);color:var(--format-ink);border-top:5px solid var(--format-accent);padding:2.2rem clamp(1rem,3vw,3rem);margin-top:2.5rem}
body.echo-review .michikusa .eyebrow{color:var(--format-accent)!important;font:700 12px/1.8 var(--sans)}
body.echo-review .michikusa h2{color:var(--format-accent)!important;font-size:clamp(2.8rem,6vw,5rem);margin-block:1rem;line-height:.95}
body.echo-review .michi-grid{margin-top:1.8rem;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
body.echo-review .michi-grid a{color:var(--format-ink)!important;padding-top:1.3rem;padding-bottom:1.8rem;min-width:0}
body.echo-review .michi-grid a b{color:var(--format-accent)!important;font:400 clamp(1.3rem,2.4vw,2rem)/1.2 var(--serif);letter-spacing:0}
body.echo-review .michi-grid a small{color:var(--format-ink)!important;font:500 1.05rem/1.85 var(--jp);letter-spacing:0}
body.echo-review .magazine-plate{background:var(--format-tint)!important}
body.echo-review .magazine-plate img{filter:none!important;mix-blend-mode:normal;max-height:380px}
body.echo-review .supporting-photo img{max-height:260px}
body.echo-review .reading-shelf{border-top:5px solid var(--format-accent)}
body.echo-review .reading-shelf header h2{color:var(--format-accent)}
body.echo-review .echo-object-card{background:var(--format-tint);border-color:var(--format-accent)}
body.echo-review .echo-object-card strong{color:var(--format-accent)}
@media(max-width:760px){body.echo-review .michi-grid{display:block}body.echo-review .michi-grid a{border-right:0;border-bottom:1px solid var(--format-accent);padding-left:0}body.echo-review .source-desk{padding:1rem}.echo-review .article-body>h2 .heading-phrase{white-space:normal}}

/* Pale panels must override inherited white labels, descriptions and separators. */
body.echo-review .michikusa :is(p,.title-ja,.michi-relation,.michi-grid span,.michi-grid small){color:#292b32!important;opacity:1!important}
body.echo-review .michikusa .eyebrow{color:var(--format-accent)!important}
body.echo-review .michi-grid,body.echo-review .michi-grid a{border-color:var(--format-accent)!important}
body.echo-review .supplementary-art img{max-height:320px!important;max-width:100%;width:auto;object-fit:contain;margin-inline:auto}
body.echo-review .supplementary-art figcaption{color:#292b32!important;opacity:1}

.echo-review .article-relation-link{color:var(--format-accent);border-bottom:1px solid currentColor;text-decoration:none}.echo-review :target{scroll-margin-top:2rem}


/* CFO editorial normalization 2026-10-05 */
body.echo-review .article-body>h2:not(.section-marker){border-left:0!important;padding-left:0!important}
body.echo-review .article-title-ja>p:first-child{font-size:clamp(1.65rem,3.1vw,2.45rem)!important;line-height:1.55!important;margin-bottom:.55rem!important}
body.echo-review .article-title-ja>p:nth-child(2){font-size:clamp(1.02rem,1.55vw,1.25rem)!important;line-height:1.85!important;max-width:42rem}
body.echo-review .michikusa h2{font-size:clamp(3rem,7vw,6rem)!important;line-height:.9!important;overflow-wrap:normal!important;word-break:keep-all}
body.echo-review .michi-subtitle{color:var(--format-ink)!important;font:500 1.05rem/1.8 var(--jp);margin:0 0 1.6rem}
body.echo-review .michi-grid>a:nth-child(n+4){display:none}
body.echo-review .michi-more{display:inline-block;margin-top:1.5rem;color:var(--format-accent)!important;border-bottom:1px solid currentColor;font:700 12px/1.8 var(--sans);letter-spacing:.08em;text-decoration:none}
body.echo-review .supplementary-art{margin-block:3rem}
body.echo-review .supplementary-art img{max-height:430px!important}
body.echo-review .reading-shelf ol{grid-template-columns:repeat(2,minmax(0,1fr))}
body.echo-review.page-germination .article-hero-text h1{font-size:clamp(2.65rem,5.5vw,5.5rem)!important;white-space:nowrap!important;letter-spacing:-.045em}
body.echo-review.page-kaleidoscope .article-hero-text h1{display:flex;flex-wrap:nowrap;font-size:clamp(2.65rem,4vw,4rem)!important;letter-spacing:-.045em;white-space:nowrap;max-width:none!important;overflow-wrap:normal!important;word-break:normal}
body.echo-review.page-kaleidoscope .article-hero-text h1 span{display:inline;white-space:nowrap}
body.echo-review .echo-source-desk li,body.echo-review .echo-source-desk p,body.echo-review .echo-source-desk a{overflow-wrap:anywhere;word-break:normal}
@media(max-width:760px){body.echo-review .article-title-ja>p:first-child{font-size:1.6rem!important}body.echo-review .reading-shelf ol{grid-template-columns:1fr}body.echo-review.page-kaleidoscope .article-hero-text h1{display:block}body.echo-review.page-kaleidoscope .article-hero-text h1 span{display:block}}
