/* Compact authenticated shell; the public site and page content keep their styling. */
.app-navigation { padding-block: .25rem; margin-bottom: .5rem; }
.app-navigation > .container-fluid { gap: .25rem; }
.app-navigation .navbar-brand { font-size: 1.1rem; margin-right: .5rem; padding-block: .25rem; }
.app-navigation .nav-link { display: flex; align-items: center; gap: .2rem; border: 0; border-radius: .25rem; background: transparent; color: var(--plotline-text); font-size: .875rem; white-space: nowrap; padding: .45rem .5rem; }
.app-navigation .nav-link:hover, .app-navigation .nav-link:focus-visible, .app-navigation .nav-link.active, .app-navigation .nav-link.show { color: var(--plotline-accent-dark); background: var(--plotline-soft); }
.app-navigation .nav-link.active { box-shadow: inset 0 -2px var(--plotline-accent); }
.app-navigation .nav-link:focus-visible { outline: 2px solid var(--plotline-accent); outline-offset: 1px; }
.app-navigation .dropdown-toggle::after { flex-shrink: 0; }
.app-context-label { max-width: 11rem; overflow: hidden; text-overflow: ellipsis; }
.app-book-label { max-width: 8rem; }
.app-account-label { max-width: 7rem; overflow: hidden; text-overflow: ellipsis; }
.app-navigation .dropdown-menu { max-width: min(28rem, calc(100vw - 1.5rem)); max-height: min(75vh, 38rem); overflow-y: auto; }
.app-navigation .dropdown-item, .app-navigation .dropdown-header { white-space: normal; overflow-wrap: anywhere; }
.app-navigation .dropdown-header { font-size: .8rem; margin: 0; }
.app-navigation .dropdown-item.active { background: var(--plotline-soft); color: var(--plotline-accent-dark); font-weight: 700; }
.app-navigation-status { margin-left: auto; }
.app-navigation-status .word-companion-presence-pill { white-space: nowrap; font-size: .75rem; padding: .25rem .45rem; }
.app-layout .breadcrumb-trail { gap: .3rem; margin: 0 0 .35rem; line-height: 1.35; }
.app-layout .breadcrumb-trail a, .app-layout .breadcrumb-trail span { border: 0; border-radius: 0; padding: 0; background: transparent; font-size: .75rem; font-weight: 500; }
.app-layout .breadcrumb-trail > * + *::before { content: "/"; margin-right: .3rem; color: var(--plotline-muted); }
@media (min-width: 992px) {
  .app-navigation > .container-fluid { flex-wrap: nowrap; }
  .app-navigation .navbar-collapse { display: contents !important; }
  .app-navigation-menus { order: 1; flex-wrap: nowrap; }
  .app-navigation-status { order: 2; }
  .app-account-menu { order: 3; }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .app-navigation .nav-link { padding-inline: .35rem; font-size: .8rem; }
  .app-context-label { max-width: 8rem; }
  .app-book-label { max-width: 6rem; }
  .app-account-label { max-width: 5rem; }
}
@media (max-width: 991.98px) {
  .app-navigation .navbar-collapse { flex-basis: 100%; }
  .app-navigation .navbar-toggler { padding: .2rem .4rem; font-size: 1rem; }
  .app-navigation .nav-link { width: 100%; text-align: left; }
  .app-navigation .dropdown-menu { max-width: 100%; }
  .app-context-label, .app-account-label { max-width: calc(100vw - 4rem); }
  .app-account-menu .dropdown-menu { position: static; }
}
[data-theme="dark"] .app-navigation .nav-link:hover,
[data-theme="dark"] .app-navigation .nav-link:focus-visible,
[data-theme="dark"] .app-navigation .nav-link.active,
[data-theme="dark"] .app-navigation .nav-link.show,
[data-theme="dark"] .app-navigation .dropdown-item.active { background: rgba(241, 195, 143, .12); color: var(--app-link); }
[data-theme="dark"] .app-layout .breadcrumb-trail a,
[data-theme="dark"] .app-layout .breadcrumb-trail span { background: transparent !important; }
