/* V13 — a tactile cinematic journal, on a desk or in your hand. */
.mobile-journey,.chapter-peek{display:none}
.immersive .chapter-peek{
  display:block;position:absolute;left:50%;bottom:112px;width:256px;
  padding:6px;background:#092338;color:#edf7fc;border:1px solid #b1ccdd40;
  box-shadow:0 24px 65px #00122275;z-index:9;pointer-events:none;
  opacity:0;visibility:hidden;transform:perspective(900px) translateY(20px) rotateX(9deg) scale(.94);
  transform-origin:50% 100%;transition:opacity .24s,visibility .24s,transform .5s var(--ease)
}
.immersive .chapter-peek.is-open{opacity:1;visibility:visible;transform:perspective(900px) translateY(0) rotateX(0) scale(1)}
.chapter-peek-image{position:relative;aspect-ratio:16/10;background:#071b2b;overflow:hidden}
.chapter-peek-image img{width:100%;height:100%;object-fit:cover;object-position:60% 50%}
.chapter-peek.is-book img{object-fit:contain;object-position:center}
.chapter-peek-image>span{position:absolute;left:13px;bottom:8px;color:#fff;font-size:2.6rem;line-height:1;font-family:var(--serif);font-style:italic;text-shadow:0 2px 12px #000b}
.chapter-peek-copy{padding:14px 12px 12px;display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.chapter-peek-copy>b{font-size:.875rem;line-height:1.3;font-weight:400;max-width:150px}
.chapter-peek-copy>small{font-size:.75rem;color:#abcde0;white-space:nowrap}
.chapter-nav a:focus-visible{outline-offset:-3px}
.navigation-dialog[open] .nav-links a{animation:none}
.nav-preview .eyebrow,.nav-preview-label,.nav-links a>.nav-index{font-size:.75rem}

/* Photo surfaces respond only to an intentional, fine pointer. */
.collection-image{perspective:1200px;transform-origin:50% 55%;transition:transform .55s var(--ease),box-shadow .55s var(--ease),clip-path .9s var(--ease)}
.collection-image>[data-collection-image]{position:relative;z-index:1;backface-visibility:hidden}
.collection-image>.collection-snapshot{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-position:65% 50%}
.collection-image:before{content:'';position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(115deg,transparent 20%,#e3f4ff20 var(--surface-light,50%),transparent 80%);opacity:0;transition:opacity .4s}
.collection-enter,.collection-big-number{z-index:3}
.sample-preview .sample-page{backface-visibility:hidden}
@media(hover:hover) and (pointer:fine) and (min-width:761px){
  .scroll-enhanced [data-depth="collection"] .collection-image{transform:perspective(1200px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));box-shadow:0 30px 65px -35px #153d585e}
  .scroll-enhanced [data-depth="collection"].is-tilting .collection-image:before{opacity:1}
  .scroll-enhanced [data-depth="sample"] .sample-page{transform:perspective(1200px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) rotate(-2deg);transition:transform .55s var(--ease),box-shadow .55s var(--ease)}
  .scroll-enhanced [data-depth="sample"].is-tilting .sample-page{box-shadow:0 48px 75px -28px #163c5b80}
}
.pattern-example{perspective:900px}
.pattern-example>span,.pattern-example>em{display:inline-block;transform-origin:50% 80%}
.editorial-line{display:block;overflow:clip;padding-bottom:.15em;margin-bottom:-.15em;perspective:1000px}
.editorial-line>span{display:block;transform-origin:0 100%;backface-visibility:hidden}
.scroll-enhanced .editorial-line>span{transition:transform 1s var(--ease),opacity .8s;transition-delay:calc(var(--line-index,0) * .09s)}
.scroll-enhanced .is-pending .editorial-line>span{transform:translate3d(0,120%,0) rotateZ(3deg);opacity:0}
.scroll-enhanced :is(.section-intro,.method-intro,.inside-copy,.audio-teaser-copy,.contact-copy) h2{clip-path:none}
.scroll-enhanced [data-depth="collection"].is-pending .collection-image{clip-path:inset(12% 0 12% 0)}
.scroll-enhanced [data-depth="collection"] .collection-image{clip-path:inset(0)}

/* The reader and companion share generous, reliable touch targets. */
.reader-bar{padding-top:max(14px,env(safe-area-inset-top))}
.reader-close{min-width:44px;min-height:44px}
.reader-thumbnails button{font-size:.875rem;line-height:1.35}
.reader-controls button{min-width:44px;min-height:44px}
.reader-controls>a{min-height:44px;display:flex;align-items:center;justify-content:center}
.reader-paper img{backface-visibility:hidden}
.audio-workspace{min-width:0}
.audio-parts a{border-radius:3px;transition:background .35s,color .35s,transform .35s}
.audio-parts a:focus-visible{outline-offset:-3px}
.audio-parts a[aria-current]{box-shadow:0 12px 30px -20px #173b50a0}
.audio-empty{border:1px solid #345c7318;background:linear-gradient(135deg,#d8e7ef,#e5eff5);border-radius:4px}
.audio-empty p:last-child{font-size:1rem}
.audio-qr img{box-shadow:0 15px 38px -22px #17394c60}
.audio-search input{font-size:1rem}
.player-options select{min-height:44px;font-size:1rem}
.nav-bottom a,.nav-bottom button,.rhythm-controls button small{font-size:.875rem}

@media(max-width:760px){
  .immersive .chapter-peek,.immersive .film-bottom{display:none}
  .immersive .mobile-journey{
    display:flex;position:absolute;left:14px;right:14px;bottom:max(12px,env(safe-area-inset-bottom));
    align-items:center;gap:5px;padding:7px;z-index:10;
    background:#071b2cef;color:#ecf7ff;border:1px solid #b7d4e733;border-radius:15px;
    box-shadow:0 12px 38px #0004;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)
  }
  .mobile-journey .journey-step{width:44px;min-width:44px;min-height:56px;display:grid;place-items:center;background:transparent;color:inherit;border-radius:9px;font-size:1.375rem;line-height:1}
  .mobile-journey .journey-step:disabled{opacity:.3;cursor:default}
  .mobile-journey .journey-step:active:not(:disabled){background:#d6edff1a}
  .journey-picker{flex:1;min-width:0;min-height:56px;display:flex;flex-direction:column;justify-content:center;gap:8px;padding:3px 10px;background:transparent;color:inherit;border-inline:1px solid #b7d4e72e;text-align:left}
  .journey-picker-label{display:grid;grid-template-columns:minmax(0,1fr) 13px;gap:3px 8px;align-items:center}
  .journey-picker-label>small{grid-column:1;grid-row:1;font-size:.75rem;letter-spacing:.09em;line-height:1.2;color:#a8c8dc}
  .journey-picker-label>b{grid-column:1;grid-row:2;display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;line-height:1.2;font-weight:400}
  .journey-picker-label>i{grid-column:2;grid-row:1/3;font-style:normal;font-size:1.25rem;color:#b8deef}
  .journey-segments{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;width:100%}
  .journey-segments>i{height:2px;background:#68819573;display:block;position:relative;overflow:hidden}
  .journey-segments>i:after{content:'';position:absolute;inset:0;background:#b9e4f6;transform:scaleX(var(--segment-fill,0));transform-origin:left}
  .daylight-scene .mobile-journey{background:#f6f5eeef;color:#153a4f;border-color:#1b41552e;box-shadow:0 12px 35px #38220b15}
  .daylight-scene .journey-picker{border-color:#1b415526}
  .daylight-scene .journey-picker-label>small,.daylight-scene .journey-picker-label>i{color:#355d75}
  .daylight-scene .journey-segments>i:after{background:#1b5576}
  .daylight-scene .journey-step:active:not(:disabled){background:#12384b12}
  /* Keep the two text groups in normal flow, so they cannot overlap each other. */
  .immersive .scene-content{display:flex;flex-direction:column;justify-content:flex-end;gap:clamp(16px,3svh,30px);padding-top:128px;padding-bottom:calc(150px + env(safe-area-inset-bottom))}
  .immersive .scene-content>.scene-heading{order:2;flex:none}
  .immersive .scene-content>:is(.opening-note,.language-detail,.verb-detail,.conversation-detail,.depth-detail,.thinking-detail){
    position:relative;inset:auto;order:1;flex:none;margin:0 0 auto;max-width:100%;width:auto;min-width:0;align-self:flex-start
  }
  .immersive .scene-content>.opening-note,.immersive .scene-content>.thinking-detail{align-self:flex-end}
  .immersive .scene--patterns .language-detail{padding:14px 18px}
  .immersive .scene-footnote{bottom:calc(100px + env(safe-area-inset-bottom));font-size:.75rem;padding-top:10px;gap:10px;line-height:1.4}
  .immersive .scene-footnote>b{font-size:.75rem}
  .immersive .scene--toolkit .scene-photo{inset:11% 5% 47%;height:auto}
  .scene-heading>.eyebrow,.scene-topic{font-size:.75rem}
  .case-controls button,.tense-controls button,.conversation-reply,.book-actions .text-link{min-height:44px;font-size:.875rem}
  .scene--patterns .language-detail small,.tense-word small,.conversation-detail small{font-size:.8125rem}
  .nav-preview .eyebrow,.nav-preview-label,.nav-links a>.nav-index{font-size:.75rem;letter-spacing:.025em}
  .nav-bottom a,.nav-bottom button{font-size:.8125rem;min-height:44px}
  .reader-thumbnails{gap:6px;padding:8px}
  .reader-thumbnails button{flex:1;min-width:0;font-size:.8125rem;min-height:58px;gap:7px;padding:6px}
  .reader-thumbnails button span{max-width:none}
  .reader-controls{display:grid;grid-template-columns:44px 45px 44px minmax(0,1fr);column-gap:6px;row-gap:8px;padding:9px 12px max(10px,env(safe-area-inset-bottom))}
  .reader-zoom{justify-self:end;gap:3px}
  .reader-zoom button{width:44px;min-width:44px}
  .reader-controls>a{grid-column:1/-1;min-height:32px;padding:3px;font-size:.875rem}
  .sample-preview .sample-page{transform:rotate(-1.5deg)}
  .audio-header{padding-top:max(18px,env(safe-area-inset-top))}
  .audio-header nav{font-size:.875rem;gap:14px}
  .audio-parts{scroll-padding-inline:1px;overscroll-behavior-x:contain;grid-auto-columns:minmax(195px,68vw);gap:9px}
  .audio-parts a{min-height:88px}
  .audio-parts a>span{font-size:.9375rem}
  .audio-empty .eyebrow,.audio-qr .eyebrow{font-size:.75rem}
  .audio-qr>div>p:not(.eyebrow):not(.qr-copy-status){font-size:1rem}
}
@media(max-width:760px){
  .compact-stage .scene-content{padding-top:119px;gap:14px}
  .compact-stage .scene-position{top:91px}
  .compact-stage .scene-heading>.eyebrow{margin-bottom:10px;font-size:.75rem}
  .compact-stage .scene h1,.compact-stage .scene h2{font-size:clamp(36px,11.3vw,59px);line-height:1}
  .compact-stage .scene-lead{font-size:1rem;line-height:1.5;margin-top:10px}
  .compact-stage .scene-topic{display:none}
  .compact-stage .scene-content>.opening-note{display:none}
  .compact-stage .scene--patterns .language-detail{padding:10px 14px}
  .compact-stage .language-detail>span,.compact-stage .verb-detail>span,.compact-stage .conversation-detail>.eyebrow,.compact-stage .depth-detail>span{display:none}
  .compact-stage .language-detail p{font-size:1.75rem;line-height:1.1;margin-top:0}
  .compact-stage .tense-word [data-tense-word]{font-size:2rem}
  .compact-stage .case-controls,.compact-stage .tense-controls{margin-top:7px!important}
  .compact-stage .scene--toolkit .scene-photo{inset:12% 5% 56%;height:auto}
  .compact-stage .scene--toolkit .scene-lead{display:none}
  .compact-stage .book-actions{margin-top:12px}
}
@media(max-width:360px){
  .mobile-journey .journey-step{width:44px;min-width:44px}
  .journey-picker{padding-inline:7px}
  .journey-picker-label>b{font-size:.875rem}
  .reader-controls{grid-template-columns:44px 38px 44px minmax(0,1fr);padding-inline:8px;gap:5px}
  .reader-controls>span{min-width:38px}
  .reader-zoom{gap:1px}
  .reader-thumbnails img{display:none}
  .reader-thumbnails button{justify-content:center;text-align:center;min-height:44px}
  .audio-header{padding-inline:16px}.audio-header nav{gap:10px}
}
@media(prefers-reduced-motion:reduce){
  .chapter-peek{display:none!important}
  .collection-image,.sample-page,.editorial-line>span,.audio-parts a{transition:none!important;transform:none!important}
}
.user-reduced-motion .collection-image,.user-reduced-motion .sample-page,.user-reduced-motion .editorial-line>span{transition:none!important;transform:none!important}
.simple-view .mobile-journey,.simple-view .chapter-peek{display:none}
