/* Control alignment: shared geometry, no font-glyph positioning hacks. */
.header .search-trigger,
.header .share-trigger,
.header .nav-listen{
  display:inline-flex;align-items:center;justify-content:center;
  gap:7px;line-height:1.25;vertical-align:middle;
}
.header .search-trigger svg,
.header .share-trigger svg{
  display:block;width:17px;height:17px;flex:0 0 17px;
}
.header .nav-listen .dot{
  display:block;flex:0 0 auto;margin:0;align-self:center;
}
.header .search-trigger span,
.header .share-trigger span,
.header .nav-listen span:not(.dot){
  display:block;line-height:1.25;
}
.mobile-nav a,.mobile-nav button{
  align-items:center;justify-items:center;text-align:center;
  line-height:1.25;
}
.mobile-nav a svg,.mobile-nav button svg{
  display:block;flex:none;margin:0 auto;
}
.mobile-nav a span,.mobile-nav button span{
  display:block;margin:0;text-align:center;line-height:1.25;
}
.reader-actionbar button,
.reader-head .read-chapter,
.reader-actionbar button span,
.resume-prompt button,
.person-dialog-actions button,
.digital-tour-start,
.person-close,
.image-dialog-close,
.search-top button,
.community-heading-tools button,
#playerToggleAdvanced,
.player-top-actions .player-dismiss,
.player .transport button,
.player .player-extras button,
.player .player-location button{
  align-items:center;justify-content:center;vertical-align:middle;
}
.reader-actionbar button,
.reader-head .read-chapter,
.resume-prompt button,
.person-dialog-actions button,
.digital-tour-start,
.person-close,
.image-dialog-close,
.search-top button,
.community-heading-tools button,
#playerToggleAdvanced,
.player-top-actions .player-dismiss,
.player .transport button,
.player .player-extras button,
.player .player-location button{
  display:inline-flex;line-height:1.3;
}
.person-close,.image-dialog-close,.player-top-actions .player-dismiss,.search-top button{
  padding:0;flex:0 0 auto;
}
.chapter-group-summary .chapter-group-arrow,
.mobile-directory-toggle>span:last-child,
#playerToggleAdvanced>span{
  position:relative;display:inline-block;align-self:center;flex:0 0 8px;
  width:8px;height:8px;font-size:0!important;line-height:0;
  border:0;transform:none;transition:none;
}
.chapter-group-summary .chapter-group-arrow::after,
.mobile-directory-toggle>span:last-child::after,
#playerToggleAdvanced>span::after{
  content:'';position:absolute;top:50%;left:50%;width:6px;height:6px;
  border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;
  transform:translate(-50%,-68%) rotate(45deg);
  transform-origin:center;
  transition:transform .18s ease;
}
.chapter-group[open]>.chapter-group-summary .chapter-group-arrow,
.mobile-directory-toggle[aria-expanded="true"]>span:last-child,
#playerToggleAdvanced[aria-expanded="true"]>span{
  transform:none!important;
}
.chapter-group[open]>.chapter-group-summary .chapter-group-arrow::after,
.mobile-directory-toggle[aria-expanded="true"]>span:last-child::after,
#playerToggleAdvanced[aria-expanded="true"]>span::after{
  transform:translate(-50%,-32%) rotate(225deg);
}
.chapter-group-summary .chapter-group-title,
.chapter-group-summary .chapter-group-count,
.player-top-actions button,
.player-top-actions button span{
  line-height:1.4;
}
@media(max-width:740px){
  .header .search-trigger svg{width:19px;height:19px;flex-basis:19px}
  .player-top-actions button,.person-close,.image-dialog-close{justify-content:center;align-items:center}
  .mobile-directory-toggle>span:last-child{margin-left:auto}
}
@media(prefers-reduced-motion:reduce){
  .chapter-group-summary .chapter-group-arrow::after,
  .mobile-directory-toggle>span:last-child::after,
  #playerToggleAdvanced>span::after{transition:none}
}
@media(max-width:740px){
  /* The seek bar and mode picker share one row; transport remains below. */
  .player .player-bottom .progress-wrap{
    display:flex!important;align-items:center;order:1;
    width:auto;flex:1 1 140px;min-width:80px;
    height:34px;margin:0;
  }
  .player .player-bottom .progress-wrap input{
    display:block;width:100%;height:24px;min-height:24px;margin:0;
  }
  .player .player-bottom .play-mode-switch{order:1;flex:0 0 auto;margin:0}
  .player .player-bottom .transport{order:2;flex:1 1 100%;margin:0}
}

/* A geometric X rather than a font glyph avoids optical offset across
   macOS / Android / iOS fallback fonts in all three modal close buttons. */
#shareClose,.person-dialog .person-close,.image-dialog-close{
  display:inline-flex;align-items:center;justify-content:center;
  font-size:0!important;line-height:0!important;padding:0!important;
  flex-shrink:0;
}
#shareClose{position:relative}
.person-dialog .person-close{position:absolute;right:22px;top:19px}
.image-dialog-close{position:absolute}
#shareClose::before,#shareClose::after,
.person-dialog .person-close::before,.person-dialog .person-close::after,
.image-dialog-close::before,.image-dialog-close::after{
  content:'';display:block;position:absolute;left:50%;top:50%;
  width:17px;height:2px;border-radius:1px;background:currentColor;
  transform:translate(-50%,-50%) rotate(45deg);
  pointer-events:none;
}
#shareClose::after,.person-dialog .person-close::after,.image-dialog-close::after{
  transform:translate(-50%,-50%) rotate(-45deg);
}
#shareClose{min-width:34px;min-height:34px}
.person-dialog .person-close{width:39px;height:39px}
@media(max-width:740px){#shareClose{min-width:32px;min-height:32px}}
