/* Isolated to the Japanese journal. No styles or dependencies on the home page. */
.reading-guide { --rg-ink: #383a30; --rg-muted: #71664f; --rg-gold: #8c713c; --rg-paper: #f3efe6; --rg-line: #d2c7b2; color: var(--rg-ink); min-width: 0; align-self: start; font: .8125rem/1.8 var(--font-body, sans-serif); }
.reading-guide__eyebrow { color: var(--rg-muted); font-size: .625rem; letter-spacing: .17em; margin: 0 0 1rem; }
.reading-guide__meta { color: var(--rg-muted); font-size: .75rem; margin: 0 0 1.25rem; }
.reading-guide nav ol { list-style: none; padding: 0; margin: 0; }
.reading-guide nav a { display: grid; grid-template-columns: 1.5rem minmax(0,1fr); gap: .6rem; padding: .85rem .5rem .85rem .75rem; border-left: 1px solid var(--rg-line); min-height: 44px; text-decoration: none; color: var(--rg-muted); overflow-wrap: anywhere; }
.reading-guide nav a[aria-current="location"] { border-left: 2px solid var(--rg-gold); padding-left: calc(.75rem - 1px); color: var(--rg-ink); background: #e9e3d7; font-weight: 500; }
.reading-guide__number { font-size: .6875rem; font-variant-numeric: tabular-nums; color: var(--rg-muted); }
.reading-guide__desktop-contents { display: none; }
.reading-guide__back { display: inline-flex; gap: .8rem; min-height: 44px; align-items: center; margin-top: 1.25rem; font-size: .75rem; color: var(--rg-muted); }
.reading-guide summary { display: flex; justify-content: space-between; align-items: center; cursor: pointer; min-height: 48px; font-size: .875rem; }
.reading-guide summary::marker, .reading-guide summary::-webkit-details-marker { display: none; content: ''; }
.reading-guide details[open] summary > span { transform: rotate(45deg); }
.reading-guide :is(button,summary,a):focus-visible { outline: 2px solid var(--rg-gold); outline-offset: 4px; }
.reading-guide__dock[hidden] { display: none !important; }
.reading-guide__value { font-variant-numeric: tabular-nums; font-size: 1.1rem; line-height: 1.5; white-space: nowrap; }
.reading-guide__unit { font-size: .65rem; margin-left: .15rem; }
.reading-guide__open { display: flex; align-items: center; justify-content: space-between; gap: .75rem; min-height: 48px; font: inherit; border: 0; padding: 0; background: transparent; color: inherit; text-align: left; min-width: 0; cursor: pointer; }
.reading-guide__location { container: reading-location / inline-size; flex: 1; display: flex; min-width: 0; align-items: center; gap: .75rem; }
.reading-guide__chapter { flex-shrink: 0; color: var(--rg-muted); font-size: .625rem; white-space: nowrap; font-variant-numeric: tabular-nums; }
.reading-guide__current { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .75rem; }
.reading-guide__action { font-size: .6875rem; white-space: nowrap; color: var(--rg-muted); }
.reading-guide__dialog { --rg-dialog-padding: clamp(20px,4vw,40px); color: var(--rg-ink); background: var(--rg-paper); border: 1px solid var(--rg-line); width: min(40rem, calc(100% - 2rem)); max-height: min(78vh, 45rem); max-height: min(78dvh, 45rem); padding: var(--rg-dialog-padding); margin: auto; overflow: auto; overscroll-behavior: contain; }
.reading-guide__dialog::backdrop { background: rgb(14 18 14 / .62); }
.reading-guide__dialog:not([open]) { display: none; }
.reading-guide__dialog-head { position: sticky; top: calc(-1 * var(--rg-dialog-padding)); z-index: 1; background: var(--rg-paper); display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: .5rem .75rem; margin: calc(-1 * var(--rg-dialog-padding)) calc(-1 * var(--rg-dialog-padding)) 1rem; padding: .75rem var(--rg-dialog-padding); border-bottom: 1px solid var(--rg-line); }
.reading-guide__dialog-head h2 { font: 400 1.15rem/1.8 var(--inner-serif,serif); margin: 0; }
.reading-guide__dialog-head .reading-guide__eyebrow { margin-bottom: .5rem; }
.reading-guide__dialog-head button { display: inline-flex; gap: .5rem; align-items: center; min-height: 44px; min-width: 44px; padding: .5rem; border: 0; background: none; color: inherit; font: inherit; white-space: nowrap; cursor: pointer; }
.reading-guide__dialog-foot { display: flex; justify-content: space-between; gap: 1rem; flex-wrap: wrap; border-top: 1px solid var(--rg-line); margin: 1.5rem 0 0; padding-top: 1rem; color: var(--rg-muted); font-size: .75rem; }
.inner-page[data-inner-page] .journal-craft[data-reading-enhanced] .reading-prose :is(h2,h3,h4)[id], .inner-page[data-inner-page] .journal-craft[data-reading-enhanced] .reading-prose .kr-section[id], .inner-page[data-inner-page] .journal-craft #reading-prose { scroll-margin-top: calc(var(--rg-offset, 6rem) + 1.5rem); }
.inner-page[data-inner-page] .journal-craft .reading-guide-meta { color: #c2baaa; font-size: .75rem; margin-top: -.75rem; margin-bottom: 1.5rem; }
.inner-page[data-inner-page] .journal-craft .reading-prose h2[data-reading-ordinal]::before { content: attr(data-reading-ordinal); display: block; color: #75613a; font: .6875rem/1.8 var(--font-body,sans-serif); letter-spacing: .12em; margin-bottom: .75rem; }
.inner-page[data-inner-page] .journal-craft .reading-completion { text-align: center; margin: 2.5rem 0; color: #75613a; font: .875rem/2 var(--inner-serif,serif); }
.inner-page[data-inner-page] .journal-craft .reading-completion a { display: inline-flex; align-items: center; gap: 1rem; min-height: 44px; border-bottom: 1px solid #b8aa8b; font-family: var(--font-body,sans-serif); font-size: .8125rem; }
.reading-completion [hidden] { display: none !important; }
/* A horizontal lacquer-water thread, aligned with the text column on desktop. */
.reading-guide__dock { position: fixed; inset: var(--rg-header,5rem) 0 auto; z-index: 40; color: var(--rg-ink); --rg-progress: 0%; background: var(--rg-paper); min-height: max(56px,2.5rem); display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 1rem; padding: .3rem max(1rem,env(safe-area-inset-right)) .3rem max(1rem,env(safe-area-inset-left)); }
.reading-guide__water { position: absolute; left: 28px; right: 28px; bottom: -18px; height: 36px; pointer-events: none; }
.reading-water__back { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; z-index: 0; pointer-events: none; }
/* No secondary line or tinted shadow while the reader is idle (including before JS loads). */
.reading-guide__water[data-water-state="still"] .reading-water__back { opacity: 0; }
/* The low-contrast water wash is transient; it must not stain the idle line. */
.reading-water__surface [data-water-veil] { transition: opacity 260ms ease-out; }
.reading-guide__water[data-water-state="still"] [data-water-veil] { opacity: 0; }
.reading-water__back-line { stroke: #c6b898; stroke-width: .75; opacity: .24; }
.reading-water__soft-ripple { stroke: #8c713c; stroke-width: .7; opacity: .16; }
.reading-water__surface { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; z-index: 3; }
.reading-guide__swimmer { position: absolute; z-index: 2; top: 50%; left: 0; width: 56px; height: 32px; transform: translate3d(var(--water-eel-x, 0px), 0, 0) translate(-50%,-50%); color: var(--rg-gold); }
.reading-guide__eel { display: block; width: 100%; height: 100%; overflow: visible; }
.reading-guide__ripple { position: absolute; inset: 7px 0; border: 1px solid currentColor; border-radius: 50%; opacity: 0; }
.reading-water__static-line { display: none; }
@media (min-width: 80rem) {
  .reading-guide { position: sticky; z-index: 40; top: calc(var(--rg-header,6rem) + 1.5rem); max-height: calc(100vh - var(--rg-header,6rem) - 3rem); overflow-y: auto; scrollbar-width: thin; }
  .reading-guide__contents { display: none; }
  .reading-guide__desktop-contents { display: block; }
  .reading-guide__dock { left: var(--rg-body-left, 40%); width: var(--rg-body-width, 42rem); right: auto; padding-inline: 0; }
  .reading-guide__water { left: 0; right: 0; }

}
@media (max-width: 79.99rem) {
  .inner-page[data-inner-page] .journal-craft .reading-layout { grid-template-columns: minmax(0,42rem); justify-content: center; }
  .reading-guide { position: static; padding-bottom: 1rem; border-bottom: 1px solid var(--rg-line); }
  .reading-guide__eyebrow, .reading-guide__back { display: none; }
  .reading-guide__meta { margin-bottom: .25rem; }
  .reading-guide__contents nav { padding-block: .5rem; }
  .reading-guide__open { display: flex; align-items: center; justify-content: space-between; gap: .75rem; min-height: 48px; }
  .reading-guide__value { text-align: right; font-size: .9375rem; }
  .reading-guide__dialog { margin: auto auto max(1rem,env(safe-area-inset-bottom)); }
  .reading-guide__dialog .reading-guide__eyebrow { display: none; }
  .reading-guide__dialog-head button > span[aria-hidden] { display: none; }
  .inner-page[data-inner-page] .journal-craft .reading-guide-meta { margin-block: .75rem 0; }
}
@container reading-location (max-width: 8rem) { .reading-guide__current { display: none; } }
@media (max-width: 24rem) { .reading-guide__location { gap: .35rem; } .reading-guide__dock { gap: .5rem; padding-inline: max(12px,env(safe-area-inset-left)) max(12px,env(safe-area-inset-right)); } }
@media (prefers-reduced-motion: reduce), (prefers-contrast: more), (forced-colors: active) { .reading-water__back, .reading-water__soft-ripple { display: none; } .reading-guide__eel { visibility: hidden; } .reading-guide__swimmer { width: 5px; height: 5px; background: currentColor; border-radius: 50%; } .reading-guide__ripple { display: none; } }
@media (forced-colors: active) { .reading-guide { --rg-ink: CanvasText; --rg-paper: Canvas; --rg-line: GrayText; --rg-muted: CanvasText; --rg-gold: Highlight; } .reading-guide nav a[aria-current="location"] { background: Canvas; color: LinkText; } .reading-water__surface { display: none; } .reading-water__static-line { display: block; position: absolute; inset: 18px 0 auto; height: 1px; background: GrayText; forced-color-adjust: none; } .reading-water__static-line::after { content: ''; display: block; width: var(--rg-progress); height: 2px; background: Highlight; forced-color-adjust: none; } }
@media print { .reading-guide, .reading-guide-meta, .reading-completion { display: none !important; } }
.inner-page[data-inner-page] .journal-craft .reading-prose > h2 { font: 400 clamp(1.3rem,1.8vw,1.65rem)/1.85 var(--inner-serif,serif); letter-spacing: .05em; margin: 3rem 0 1.25rem; text-wrap: pretty; }
.inner-page[data-inner-page] .journal-craft .reading-prose > h2:first-child { margin-top: 0; }
.inner-page[data-inner-page] .journal-craft .reading-prose > h2:first-child + p { font: 400 clamp(1.1rem,1.5vw,1.3rem)/2.15 var(--inner-serif,serif); }

/* The editorial source ships its own native TOC; the server-rendered reading guide replaces it without requiring JS. */
.inner-page[data-inner-page] .journal-craft .reading-prose .kr-native-toc { display: none; }

/* Navigation is expressive; a reading pause quietly gives attention back to the text. */
.reading-guide__swimmer { opacity: 1; transition: opacity 160ms ease-out; }
.reading-guide__eel { transform: translateY(var(--water-eel-y, 0px)); }
.reading-guide__water[data-water-reading="quiet"] .reading-guide__swimmer { opacity: .42; transition-duration: 560ms; }
.reading-guide__water[data-water-reading="active"] .reading-water__line { stroke-width: 1; }
.reading-guide__water[data-water-reading="active"] .reading-water__line--read { stroke-width: 1.45; }
@media (prefers-reduced-motion: reduce), (prefers-contrast: more), (forced-colors: active) {
  .reading-guide__water .reading-guide__swimmer { opacity: 1 !important; transition: none !important; }
  .reading-guide__eel { transform: none; }
  .reading-water__surface [data-water-veil] { transition: none; }
}
/* Keep scrolling photographs/text from showing through the water's 18px overflow. */
.reading-guide__dock::before { content: ''; position: absolute; inset: 0 0 -18px; background: var(--rg-paper); z-index: -1; pointer-events: none; }
/* Follow the retracting navigation without a jump in the floating reading dock. */
.inner-page--article .reading-guide__dock { transition: top 280ms cubic-bezier(.22, 1, .36, 1); }
@media (min-width: 80rem) {
  .inner-page--article .reading-guide { transition: top 280ms cubic-bezier(.22, 1, .36, 1); }
}
@media (prefers-reduced-motion: reduce) {
  .inner-page--article .reading-guide__dock,
  .inner-page--article .reading-guide { transition: none; }
}
