/* Storyline structural layout only — v1.5.3 */

/*
 * Storyline visual tokens are supplied by Storyline Settings when configured.
 * Neutral CSS fallbacks remain in each property so the plugin works unconfigured.
 */

body.single-publications .storyline-site-main {
  width: 100%;
  max-width: none;
  margin-inline: 0;
}

.storyline-publication-hero-group,
.storyline-publication-lower-group {
  box-sizing: border-box;
}

.storyline-publication-hero-group {
  padding-inline: clamp(1rem, 4vw, 4rem);
  padding-bottom: clamp(2rem, 4vw, 3.5rem);
  border-bottom: 1px solid var(--storyline-border-color, currentColor);
}

/*
 * Stable hook for themes that want to animate the divider:
 * .storyline-theme-divider
 * Storyline itself deliberately does not impose a branded animation.
 */
.storyline-theme-divider {
  transition: border-color .8s ease-in-out, box-shadow .8s ease-in-out;
}

.storyline-publication-hero-columns,
.storyline-publication-lower-columns {
  width: 100%;
  max-width: none;
  gap: clamp(2rem, 4vw, 4rem);
  align-items: stretch;
}

.storyline-publication-cover-column,
.storyline-publication-intro-column,
.storyline-publication-details-column,
.storyline-publication-chapters-column {
  min-width: 0;
}

/* Shrink the cover within its column while keeping the 30/70 hero balance. */
.storyline-publication-cover-column {
  padding: 0 0 1rem 0;
  box-sizing: border-box;
}

.storyline-publication-cover {
  margin: 0;
}

.storyline-publication-cover img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
}

.storyline-publication-description > :first-child {
  margin-top: 0;
}

/* Clear visual break between hero and the lower 50/50 section. */
.storyline-publication-lower-group {
  margin-top: clamp(3.5rem, 6vw, 5.5rem);
  margin-bottom: clamp(3rem, 5vw, 5rem);
}

.storyline-publication-lower-columns {
  align-items: start;
}

/* Chapters remain the open/main half of the lower layout. */
.storyline-publication-chapters {
  padding: 0;
  border: 0;
  background: transparent;
}

.storyline-publication-chapters__header {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: baseline;
}

.storyline-publication-chapters__count {
  white-space: nowrap;
}

/* Metadata is one theme-adaptive box with logical spacing between groups. */
.storyline-meta {
  margin: 0;
}

.storyline-meta__box {
  box-sizing: border-box;
  padding: clamp(1.35rem, 2.4vw, 2rem);
  border: 1px solid var(--storyline-border-color, currentColor);
  background: transparent;
  transition: border-color .8s ease-in-out, box-shadow .8s ease-in-out;
}

.storyline-meta__group + .storyline-meta__group {
  margin-top: clamp(1.5rem, 3vw, 2.25rem);
}

.storyline-meta__list {
  margin: 0;
}

.storyline-meta__row {
  display: grid;
  grid-template-columns: minmax(7rem, .9fr) minmax(0, 1.1fr);
  gap: .35rem .85rem;
  align-items: start;
}

.storyline-meta__row + .storyline-meta__row {
  margin-top: .55rem;
}

.storyline-meta__row dd {
  margin: 0;
  min-width: 0;
  overflow-wrap: anywhere;
}

.storyline-meta__links {
  margin: 0;
  padding-left: 1.15rem;
}

.storyline-publication-attributions {
  margin-top: clamp(1.2rem, 2vw, 1.75rem);
  display: grid;
  gap: .45rem;
}

.storyline-attribution__row {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem .75rem;
}

.storyline-attribution__label {
  font-weight: 600;
}

/* Editor presentation */
.editor-styles-wrapper .storyline-publication-hero-columns,
.editor-styles-wrapper .storyline-publication-lower-columns {
  flex-wrap: nowrap !important;
  width: 100% !important;
  max-width: none !important;
}

.editor-styles-wrapper .storyline-publication-cover img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
}

.editor-styles-wrapper .storyline-editor-dynamic-block {
  width: 100%;
  max-width: 100%;
}

@media (max-width: 781px) {
  .storyline-publication-hero-group {
    padding-inline: 1rem;
  }

  .storyline-publication-cover-column {
    padding: 1.5rem;
  }

  .storyline-publication-hero-columns,
  .storyline-publication-lower-columns {
    gap: 1.5rem;
  }

  .storyline-publication-lower-group {
    margin-top: 2.5rem;
  }

  .storyline-meta__row {
    grid-template-columns: 1fr;
  }
}


/* Separate publication state from reading statistics. */
.storyline-publication-reading-meta {
  margin-top: .55rem;
}

/* Hero attributions: quiet body text, below description and above CTA. */
.storyline-publication-attributions {
  color: var(--storyline-text-color, inherit);
  font-size: .92em;
  font-weight: 400;
  line-height: 1.55;
}

.storyline-attribution__label,
.storyline-attribution__value {
  font-weight: 400;
}

/* External publication links are a callout, not a bulleted list. */
.storyline-meta__links-label {
  margin: 0 0 .55rem;
  font-size: .88em;
  font-weight: 600;
}

.storyline-meta__links {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.storyline-meta__links li {
  list-style: none !important;
  margin: 0;
  padding: 0;
}

.storyline-meta__links li::marker {
  content: "";
}


/* Reading statistics are intentionally quieter than publication status/cadence. */
.storyline-publication-reading-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0;
  margin-top: .5rem;
  color: var(--storyline-text-color, inherit);
  font-family: inherit;
  font-size: .86em;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: .01em;
  text-transform: none;
  opacity: .9;
}

.storyline-publication-reading-meta span + span::before {
  content: "•";
  display: inline-block;
  margin: 0 .65em;
  opacity: .7;
}

/* Keep attribution labels understated while making the label/value relationship clear. */
.storyline-attribution__label {
  font-weight: 400;
}


/* v1.5.7 — enforce the intended lower 40/60 hierarchy even when a theme
   applies equal flex values to core Columns children. */
.storyline-publication-lower-columns > .storyline-publication-details-column {
  flex: 0 0 calc(40% - 2rem) !important;
  width: calc(40% - 2rem) !important;
  max-width: calc(40% - 2rem) !important;
}

.storyline-publication-lower-columns > .storyline-publication-chapters-column {
  flex: 1 1 calc(60% - 2rem) !important;
  width: calc(60% - 2rem) !important;
  max-width: none !important;
}

@media (max-width: 781px) {
  .storyline-publication-lower-columns > .storyline-publication-details-column,
  .storyline-publication-lower-columns > .storyline-publication-chapters-column {
    flex: 1 1 100% !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}


/* v1.5.8 — hero uses the same 40/60 hierarchy as the lower content area. */
.storyline-publication-hero-columns > .storyline-publication-cover-column {
  flex: 0 0 calc(40% - 2rem) !important;
  width: calc(40% - 2rem) !important;
  max-width: calc(40% - 2rem) !important;
}

.storyline-publication-hero-columns > .storyline-publication-intro-column {
  flex: 1 1 calc(60% - 2rem) !important;
  width: calc(60% - 2rem) !important;
  max-width: none !important;
}

/*
 * Explicit visual order makes the CTA reliable even if an existing publication
 * still carries an older saved Gutenberg block order.
 */
.storyline-publication-intro-column {
  display: flex !important;
  flex-direction: column !important;
}

.storyline-publication-intro-column > .storyline-publication-header-block {
  order: 10;
}

.storyline-publication-intro-column > .storyline-publication-actions {
  order: 20;
}

.storyline-publication-intro-column > .storyline-publication-description {
  order: 30;
}

.storyline-publication-intro-column > .storyline-publication-attributions {
  order: 40;
}

/* Keep the CTA close to the reading stats rather than the description. */
.storyline-publication-actions {
  margin-top: 1rem;
  margin-bottom: 1.4rem;
}

@media (max-width: 781px) {
  .storyline-publication-hero-columns > .storyline-publication-cover-column,
  .storyline-publication-hero-columns > .storyline-publication-intro-column {
    flex: 1 1 100% !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}


/* v1.5.9 — publication metadata hierarchy. */
.storyline-meta--publication .storyline-meta__group--primary dt {
  color: var(--storyline-accent-color, currentColor);
}

.storyline-meta__series-order {
  display: block;
  margin-top: .2rem;
  font-size: .82em;
  font-weight: 400;
  line-height: 1.35;
  opacity: .82;
}

.storyline-meta--publication .storyline-meta__group--links {
  padding-top: .15rem;
}

.storyline-meta--publication .storyline-meta__links-label {
  color: var(--storyline-text-color, inherit);
  font-weight: 400;
}

.storyline-meta--publication .storyline-meta__links a {
  color: var(--storyline-accent-color, currentColor);
  text-decoration: underline;
  text-underline-offset: .16em;
}

.storyline-meta--publication .storyline-meta__group--dates dt {
  color: var(--storyline-text-color, inherit);
}

/* Give the chapter area a clearer editorial heading without boxing it in. */
.storyline-publication-chapters__header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
  padding-bottom: .7rem;
  border-bottom: 1px solid var(--storyline-border-color, currentColor);
}

.storyline-publication-chapters__header h2 {
  margin: 0;
  font-size: clamp(1.45rem, 2.5vw, 1.85rem);
  line-height: 1.15;
}

.storyline-publication-chapters__count {
  font-size: .82em;
  font-weight: 400;
  opacity: .72;
}


/* v1.5.10 — finer typographic hierarchy for hero attributions and metadata. */

/* Hero attribution titles: gold, slightly larger than their values. */
.storyline-publication-attributions {
  font-size: .92em;
}

.storyline-attribution__label {
  color: var(--storyline-accent-color, currentColor);
  font-size: 1.06em;
  font-weight: 400;
}

.storyline-attribution__value {
  color: var(--storyline-text-color, inherit);
  font-size: 1em;
  font-weight: 400;
}

/* Metadata titles should read as labels, not same-size body copy. */
.storyline-meta--publication .storyline-meta__row dt,
.storyline-meta--publication .storyline-meta__links-label {
  font-size: 1.06em;
  line-height: 1.35;
}

.storyline-meta--publication .storyline-meta__row dd,
.storyline-meta--publication .storyline-meta__links {
  font-size: 1em;
}

/* Series order is parenthetical subtext beneath the series value. */
.storyline-meta__series-order {
  display: block;
  margin-top: .2rem;
  font-size: .78em;
  line-height: 1.3;
  opacity: .8;
}

/* "Also available at" keeps its white label treatment but same label hierarchy. */
.storyline-meta--publication .storyline-meta__links-label {
  color: var(--storyline-text-color, inherit);
  font-weight: 400;
}

/* External links stay gold without underline. */
.storyline-meta--publication .storyline-meta__links a {
  color: var(--storyline-accent-color, currentColor);
  text-decoration: none;
}

/* More breathing room before the external-links block. */
.storyline-meta--publication .storyline-meta__group--links {
  margin-top: clamp(2rem, 3.5vw, 2.75rem);
}


/* v1.6.0 — Chapter/Section Gutenberg layout. */
body.single-sections .storyline-site-main {
  width: 100%;
  max-width: none;
  margin-inline: 0;
}

.storyline-section-top-group,
.storyline-section-reading-group {
  box-sizing: border-box;
}

.storyline-section-top-group {
  margin-top: clamp(2.5rem, 5vw, 4.5rem);
  margin-bottom: clamp(3rem, 5vw, 4.5rem);
}

.storyline-section-publication-panel {
  display: grid;
  grid-template-columns: minmax(90px, 130px) minmax(0, 1fr);
  gap: clamp(1.5rem, 3vw, 2.5rem);
  align-items: center;
  padding: clamp(1.15rem, 2.4vw, 1.75rem);
  border: 1px solid var(--storyline-border-color, currentColor);
  background: transparent;
  transition: border-color .8s ease-in-out, box-shadow .8s ease-in-out;
}

.storyline-section-publication-panel__cover {
  min-width: 0;
}

.storyline-section-publication-panel__cover img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 130px;
}

.storyline-section-publication-panel__body {
  min-width: 0;
}

.storyline-section-publication-panel__publication {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: .35rem .8rem;
  margin-bottom: 1rem;
  font-size: 1.05em;
}

.storyline-section-publication-panel__publication a {
  color: inherit;
  text-decoration: none;
}

.storyline-section-publication-panel__meta {
  display: flex;
  flex-wrap: wrap;
  gap: .9rem clamp(1.5rem, 4vw, 3.5rem);
  align-items: baseline;
}

.storyline-section-meta-item {
  display: flex;
  flex-wrap: wrap;
  gap: .3rem .55rem;
  align-items: baseline;
}

.storyline-section-meta-label {
  color: var(--storyline-accent-color, currentColor);
  font-size: .9em;
  font-weight: 500;
}

.storyline-section-reading-group {
  margin-bottom: clamp(4rem, 7vw, 6rem);
}

.storyline-section-title-block {
  margin-bottom: clamp(1.75rem, 3vw, 2.5rem);
}

.storyline-section-title {
  margin: 0;
}

.storyline-section-content {
  width: 100%;
  max-width: none;
}

.storyline-section-content > :first-child {
  margin-top: 0;
}

.storyline-section-content > :last-child {
  margin-bottom: 0;
}

.storyline-section-nav {
  display: flex;
  justify-content: space-between;
  gap: 1.5rem;
  margin-top: clamp(3rem, 6vw, 5rem);
  padding-top: 1.25rem;
  border-top: 1px solid var(--storyline-border-color, currentColor);
}

.storyline-section-nav a {
  display: flex;
  flex-direction: column;
  gap: .2rem;
  max-width: 45%;
  text-decoration: none;
}

.storyline-section-nav a[rel="next"] {
  margin-left: auto;
  text-align: right;
}

.storyline-section-nav span {
  color: var(--storyline-accent-color, currentColor);
  font-size: .8em;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.storyline-section-nav strong {
  font-weight: 400;
}

/* Editor: keep the chapter structure visible and close to front-end proportions. */
.editor-styles-wrapper .storyline-section-top-group,
.editor-styles-wrapper .storyline-section-reading-group {
  width: 100% !important;
  max-width: none !important;
}

.editor-styles-wrapper .storyline-section-publication-panel {
  width: 100%;
  max-width: none;
}

.editor-styles-wrapper .storyline-section-publication-panel__cover img {
  max-width: 110px;
}

@media (max-width: 781px) {
  .storyline-section-top-group {
    margin-top: 1.5rem;
    margin-bottom: 2.25rem;
  }

  .storyline-section-publication-panel {
    grid-template-columns: 80px minmax(0, 1fr);
    gap: 1rem;
    padding: 1rem;
  }

  .storyline-section-publication-panel__meta {
    gap: .65rem 1.25rem;
  }

  .storyline-section-nav {
    flex-direction: column;
  }

  .storyline-section-nav a,
  .storyline-section-nav a[rel="next"] {
    max-width: 100%;
    margin-left: 0;
    text-align: left;
  }
}


/* v1.6.1 — correct Section width behavior and full-width publication strip. */

/*
 * The old chapter view was effectively being constrained twice by the theme.
 * Storyline now owns the outer section geometry explicitly:
 * - the top strip spans the full available width,
 * - its contents use the theme's normal content width,
 * - the chapter title/prose use that same normal content width once, not twice.
 */
body.single-sections .storyline-site-main {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding-inline: 0 !important;
}

body.single-sections .storyline-section-top-group {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding: clamp(2rem, 4vw, 3.25rem) 0 !important;
  border-bottom: 1px solid var(--storyline-border-color, currentColor);
}

body.single-sections .storyline-section-publication-panel {
  width: min(
    var(--wp--style--global--content-size, 760px),
    calc(100% - 2rem)
  ) !important;
  max-width: none !important;
  margin-inline: auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-sizing: border-box;
}

/* Title and chapter prose now occupy the theme's true content width exactly once. */
body.single-sections .storyline-section-reading-group {
  width: min(
    var(--wp--style--global--content-size, 760px),
    calc(100% - 2rem)
  ) !important;
  max-width: none !important;
  margin-inline: auto !important;
  padding-inline: 0 !important;
}

/* Prevent nested content from being constrained a second time. */
body.single-sections .storyline-section-reading-group > *,
body.single-sections .storyline-section-content,
body.single-sections .storyline-section-content > * {
  max-width: none;
}

.editor-styles-wrapper .storyline-section-top-group {
  width: 100% !important;
  max-width: none !important;
  border-bottom: 1px solid var(--storyline-border-color, currentColor);
}

.editor-styles-wrapper .storyline-section-publication-panel,
.editor-styles-wrapper .storyline-section-reading-group {
  width: min(
    var(--wp--style--global--content-size, 760px),
    calc(100% - 2rem)
  ) !important;
  max-width: none !important;
  margin-inline: auto !important;
}


/* v1.6.2 — Section width correction.
 *
 * The 1.6.1 rules used --wp--style--global--content-size, which is the theme's
 * narrow prose measure. This chapter layout is intended to use the site's wide
 * content width instead, matching the publication page.
 */

/* Use the available container width; viewport units include the scrollbar. */
body.single-sections .storyline-section-top-group {
  position: relative !important;
  left: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-inline: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
  border-bottom: 1px solid var(--storyline-border-color, currentColor) !important;
}

body.single-sections .storyline-section-publication-panel {
  width: min(
    var(--wp--style--global--wide-size, 1180px),
    calc(100% - 2rem)
  ) !important;
  max-width: var(--wp--style--global--wide-size, 1180px) !important;
  margin-inline: auto !important;
  padding-inline: 0 !important;
}

/* Chapter title, prose and navigation use the same wide page/content width.
   Do not apply the theme's narrower 760px prose constraint a second time. */
body.single-sections .storyline-section-reading-group {
  width: min(
    var(--wp--style--global--wide-size, 1180px),
    calc(100% - 2rem)
  ) !important;
  max-width: var(--wp--style--global--wide-size, 1180px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.single-sections .storyline-section-reading-group > *,
body.single-sections .storyline-section-content,
body.single-sections .storyline-section-content > * {
  width: 100% !important;
  max-width: none !important;
}

/* Match the editor's visible geometry to the front end. */
.editor-styles-wrapper .storyline-section-publication-panel,
.editor-styles-wrapper .storyline-section-reading-group {
  width: min(
    var(--wp--style--global--wide-size, 1180px),
    calc(100% - 2rem)
  ) !important;
  max-width: var(--wp--style--global--wide-size, 1180px) !important;
  margin-inline: auto !important;
}


/* v1.6.3 — compact chapter strip + remove the theme's legacy 760px article cap. */

/*
 * Patrick Bran's older Storyline stylesheet applies:
 * .storyline-section { max-width:760px; margin:0 auto; }
 * That was the remaining "double margin." The plugin-owned chapter structure
 * must be allowed to span the page before its own wide-width children are set.
 */
body.single-sections article.storyline-section {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

/* Compact full-width upper strip. */
body.single-sections .storyline-section-top-group {
  margin-top: 0 !important;
  margin-bottom: clamp(2.5rem, 4vw, 3.5rem) !important;
  padding-top: clamp(1rem, 2vw, 1.4rem) !important;
  padding-bottom: clamp(1rem, 2vw, 1.4rem) !important;
}

body.single-sections .storyline-section-publication-panel {
  grid-template-columns: minmax(70px, 92px) minmax(0, 1fr) !important;
  gap: clamp(1.15rem, 2.4vw, 1.8rem) !important;
  align-items: center !important;
}

body.single-sections .storyline-section-publication-panel__cover img {
  max-width: 92px !important;
}

.storyline-section-panel-title {
  margin: 0 0 .55rem !important;
  font-size: clamp(1.75rem, 3vw, 2.5rem) !important;
  line-height: 1.08 !important;
}

.storyline-section-publication-panel__identity-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1.25rem;
  width: 100%;
}

.storyline-section-publication-panel__publication {
  margin: 0 !important;
  font-size: 1em !important;
}

.storyline-section-meta-item--chapter {
  margin-left: auto;
  text-align: right;
  white-space: nowrap;
}

.storyline-section-publication-panel__reading-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  margin-top: .45rem;
  font-size: .86em;
  line-height: 1.35;
  opacity: .88;
}

.storyline-section-publication-panel__reading-row span + span::before {
  content: "•";
  display: inline-block;
  margin: 0 .65em;
  opacity: .7;
}

/* The reading area gets the site's wide content width, and nothing nested
   is allowed to reapply the old narrow prose cap. */
body.single-sections .storyline-section-reading-group,
body.single-sections .storyline-section-content {
  width: min(
    var(--wp--style--global--wide-size, 1180px),
    calc(100% - 2rem)
  ) !important;
  max-width: var(--wp--style--global--wide-size, 1180px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.single-sections .storyline-section-reading-group > *,
body.single-sections .storyline-section-content > * {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* The chapter prose no longer carries the theme's legacy .entry-content class,
   but keep its reading typography explicitly. */
body.single-sections .storyline-section-content {
  font-size: 1.13rem;
  line-height: 1.85;
}

body.single-sections .storyline-section-content p {
  margin-top: 0;
  margin-bottom: 1.5em;
}

@media (max-width: 781px) {
  body.single-sections .storyline-section-publication-panel {
    grid-template-columns: 64px minmax(0, 1fr) !important;
  }

  .storyline-section-publication-panel__identity-row {
    align-items: flex-start;
  }

  .storyline-section-meta-item--chapter {
    white-space: normal;
  }
}


/* v1.6.4 — chapter strip hierarchy + simplified Previous/Next navigation. */

body.single-sections .storyline-section-publication-panel {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: clamp(1.5rem, 3vw, 3rem) !important;
  align-items: center !important;
}

.storyline-section-publication-panel__left {
  display: grid;
  grid-template-columns: minmax(70px, 92px) minmax(0, 1fr);
  gap: clamp(1.15rem, 2.4vw, 1.8rem);
  align-items: center;
  min-width: 0;
}

.storyline-section-panel-title {
  margin: 0 !important;
  font-size: inherit !important;
  line-height: inherit !important;
}

/* Match the title treatment that was previously used in the lower reading area. */
.storyline-section-panel-title.entry-title {
  font-size: clamp(2.25rem, 5vw, 4rem) !important;
  line-height: 1.08 !important;
}

.storyline-section-publication-panel__meta-stack {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: .38rem;
  min-width: 0;
  text-align: right;
}

.storyline-section-meta-stack-row {
  display: flex;
  justify-content: flex-end;
  gap: .5rem;
  align-items: baseline;
  width: 100%;
}

.storyline-section-meta-stack-row a {
  color: inherit;
  text-decoration: none;
}

.storyline-section-publication-panel__reading-row {
  margin-top: .15rem !important;
  justify-content: flex-end;
  text-align: right;
}

/* Previous/Next appear both above and below the chapter text. */
.storyline-section-reading-group > .storyline-section-nav:first-child {
  margin-top: 0 !important;
  margin-bottom: clamp(1.75rem, 3vw, 2.5rem) !important;
  padding-top: 0 !important;
  padding-bottom: .9rem;
  border-top: 0 !important;
  border-bottom: 1px solid var(--storyline-border-color, currentColor);
}

.storyline-section-reading-group > .storyline-section-nav:last-child {
  margin-top: clamp(2.5rem, 5vw, 4rem) !important;
}

.storyline-section-nav {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 1.5rem;
}

.storyline-section-nav__link {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center;
  gap: .5rem !important;
  max-width: none !important;
  width: max-content;
  color: var(--storyline-accent-color, currentColor);
  font-size: .95rem;
  font-weight: 300;
  letter-spacing: .09em;
  line-height: 1;
  text-transform: uppercase;
  text-decoration: none !important;
}

.storyline-section-nav__link--previous {
  justify-self: start;
}

.storyline-section-nav__link--next {
  justify-self: end;
  margin-left: 0 !important;
  text-align: right;
}

.storyline-section-nav__arrow {
  font-size: 1.35em;
  font-weight: 300;
  line-height: .8;
}

.storyline-section-nav__link:hover,
.storyline-section-nav__link:focus {
  text-decoration: none !important;
}

@media (max-width: 781px) {
  body.single-sections .storyline-section-publication-panel {
    grid-template-columns: 1fr !important;
  }

  .storyline-section-publication-panel__meta-stack {
    align-items: flex-start;
    text-align: left;
    padding-left: calc(64px + 1rem);
  }

  .storyline-section-meta-stack-row,
  .storyline-section-publication-panel__reading-row {
    justify-content: flex-start;
    text-align: left;
  }

  .storyline-section-panel-title.entry-title {
    font-size: clamp(1.8rem, 9vw, 2.75rem) !important;
  }
}




/* v1.6.8 — fully theme-agnostic Storyline color hooks.
 *
 * The active theme may provide:
 *   --storyline-accent-color
 *   --storyline-border-color
 *   --storyline-surface-color
 *   --storyline-text-color
 *
 * Storyline contains no theme-specific palette names or brand color values.
 */

.storyline-section-reading-group > .storyline-section-nav:first-child {
  padding-bottom: 0 !important;
  border-bottom: 0 !important;
}

.storyline-section-meta-stack-row--publication {
  margin-bottom: .12rem;
}

.storyline-section-publication-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2rem;
  padding: .35rem .7rem;
  border: 1px solid var(--storyline-accent-color, currentColor);
  border-radius: 2px;
  color: var(--storyline-accent-color, currentColor);
  background-color: transparent;
  font: inherit;
  font-size: .9rem;
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: .035em;
  text-decoration: none !important;
  transition:
    color .25s ease,
    background-color .25s ease,
    border-color .25s ease;
}

.storyline-section-publication-link:hover,
.storyline-section-publication-link:focus-visible {
  color: var(--storyline-surface-color, Canvas);
  background-color: var(--storyline-accent-color, currentColor);
  border-color: var(--storyline-accent-color, currentColor);
  text-decoration: none !important;
}


/* v1.6.11 — Storyline color ownership
 *
 * All Storyline accent/border/surface/text colors below come exclusively from
 * Storyline's own saved settings variables. No theme-specific class names or
 * palette variables are required.
 */

/* Publication eyebrow and summary metadata. */
.storyline-publication-kicker,
.storyline-publication-summary-meta {
  color: var(--storyline-accent-color, currentColor);
}

/* Publication ornament uses the same accent token for the rule and diamond. */
.storyline-publication-ornament {
  display: flex;
  align-items: center;
  width: 115px;
  margin: 1rem 0 1.3rem;
  color: var(--storyline-accent-color, currentColor);
}

.storyline-publication-ornament::before,
.storyline-publication-ornament::after {
  content: '';
  height: 1px;
  background-color: currentColor;
  flex: 1;
}

.storyline-publication-ornament span {
  padding: 0 .35rem;
}

/* Chapter links on a publication page are explicit Storyline accent links. */
.storyline-publication-chapters a {
  color: var(--storyline-accent-color, currentColor);
}

/* Start Reading remains visually button-like without relying on a theme button class. */
.storyline-start-reading {
  display: inline-block;
  border: 1px solid var(--storyline-accent-color, currentColor);
  background-color: transparent;
  color: var(--storyline-text-color, inherit);
  padding: .85rem 1.35rem;
  text-decoration: none !important;
}

.storyline-start-reading:hover,
.storyline-start-reading:focus-visible {
  background-color: var(--storyline-accent-color, currentColor);
  color: var(--storyline-surface-color, Canvas);
  border-color: var(--storyline-accent-color, currentColor);
}

/* Previous/Next links are owned by Storyline rather than inherited from theme .section-nav. */
.storyline-section-nav__link,
.storyline-section-nav__link span,
.storyline-section-nav__arrow {
  color: var(--storyline-accent-color, currentColor);
}

/* Make configured borders authoritative throughout Storyline. */
.storyline-publication-hero-group,
.storyline-publication-chapters__header,
.storyline-meta__box,
.storyline-section-top-group,
.storyline-section-nav {
  border-color: var(--storyline-border-color, currentColor);
}


/* v1.6.12 — restore plugin-owned chapter-list structure and button contrast. */

/*
 * The old Patrick Bran compatibility class used to supply these structural
 * list rules. Storyline now owns them directly so removing theme-specific
 * classes does not change the layout.
 */
.storyline-publication-chapters ol {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.storyline-publication-chapters li {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1.25rem;
  margin: 0;
  padding: 1rem 0;
  border-bottom: 1px solid var(--storyline-border-color, currentColor);
}

.storyline-publication-chapters li:last-child {
  border-bottom: 0;
}

.storyline-publication-chapters li > a {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 1.08rem;
  text-decoration: none;
}

.storyline-publication-chapters li > span {
  flex: 0 0 auto;
  white-space: nowrap;
  font-size: .9em;
  opacity: .78;
}

@media (max-width: 600px) {
  .storyline-publication-chapters li {
    display: block;
  }

  .storyline-publication-chapters li > span {
    display: block;
    margin-top: .25rem;
  }
}

/*
 * Filled Storyline controls use the configured surface color for their label
 * and arrow. CanvasText is the neutral fallback when no Storyline colors have
 * been configured yet.
 */
.storyline-start-reading:hover,
.storyline-start-reading:focus-visible,
.storyline-start-reading:hover *,
.storyline-start-reading:focus-visible * {
  color: var(--storyline-surface-color, CanvasText) !important;
}

.storyline-section-publication-link:hover,
.storyline-section-publication-link:focus-visible,
.storyline-section-publication-link:hover *,
.storyline-section-publication-link:focus-visible * {
  color: var(--storyline-surface-color, CanvasText) !important;
}


/* v1.6.13 — restore Storyline-owned eyebrow typography.
 *
 * The former theme compatibility class had been supplying utility-text
 * styling. Storyline keeps the size/weight/case/tracking but deliberately
 * inherits the active theme's font family.
 */
.storyline-publication-kicker {
  margin: 0 0 .35rem;
  font-size: .76rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--storyline-accent-color, currentColor);
}


/* v1.6.16 — optional theme-matching utility font.
 *
 * Blank setting = inherit the active theme.
 * Configured setting = use that font stack only for true utility/interface text.
 * Content metadata labels (Series, Genres, Tags, etc.) deliberately inherit the theme.
 * Storyline does not load fonts itself.
 */
.storyline-publication-kicker,
.storyline-publication-summary-meta,
.storyline-publication-reading-meta,
.storyline-publication-chapters__count,
.storyline-section-meta-label,
.storyline-section-publication-panel__reading-row,
.storyline-section-nav__link,
.storyline-section-publication-link,
.storyline-start-reading {
  font-family: var(--storyline-utility-font, inherit);
}

/* Keep long titles, metadata, and narrow screens within the reader's viewport. */
.storyline-site-main, .storyline-site-main article { min-width: 0; }
.storyline-site-main { overflow-wrap: anywhere; }
.storyline-site-main img { max-width: 100%; height: auto; }
.storyline-standalone-header {
  display: grid; grid-template-columns: minmax(180px, 280px) minmax(0, 1fr);
  align-items: center; gap: clamp(2rem, 5vw, 5rem);
  width: min(1180px, calc(100% - 3rem)); margin: 3rem auto 4rem;
}
.storyline-standalone-cover { margin: 0; }
.storyline-standalone-cover img { display: block; width: 100%; height: auto; }
.storyline-standalone-header h1 { font-size: clamp(2.4rem, 5vw, 4.5rem); line-height: 1.12; margin-block: .6rem 1.4rem; }
.storyline-standalone-prose { width: min(760px, calc(100% - 3rem)); margin: 0 auto 5rem; scroll-margin-top: 2rem; }
@media (max-width: 600px) {
  .storyline-standalone-header { grid-template-columns: minmax(0, 1fr); }
  .storyline-standalone-cover { width: min(100%, 260px); margin-inline: auto; }
}
body.single-publications .storyline-publication-cover-column:not(:has(img)) { display: none; }
body.single-publications .storyline-publication-hero-columns:not(:has(img)) > .storyline-publication-intro-column {
  flex: 1 1 100% !important; width: 100% !important;
}
.storyline-section-publication-panel__left:not(:has(img)) { grid-template-columns: minmax(0, 1fr); }
.storyline-section-publication-panel__cover:not(:has(img)) { display: none; }
.storyline-publication-chapters__header { flex-wrap: wrap; }
.storyline-section-publication-panel__identity-row { flex-wrap: wrap; }
@media (max-width: 480px) {
  .storyline-section-meta-item--chapter { margin-left: 0; text-align: left; white-space: normal; }
}
