/**
 * Borsite pages: publications, search, 404, about, podcast, book.
 * Ported from the page sections of the locked mockups in reference/; preview-only rules
 * (data-preview-viewport, the state preview bar) are left out.
 */

/* Block wrappers inside the page templates: no theme blockGap, the page rules below set the
   spacing. Same specificity as WordPress's :root :where(.is-layout-flow) > *, loaded after it,
   and placed first so every rule below still wins. */
:where(.borsite-about, .borsite-book, .borsite-page) .is-layout-flow > * {
  margin-block-start: 0;
}

/* Light-surface secondary button (404, book). Ghost stays on-dark only. */
.borsite-btn--secondary {
  color: var(--borsite-color-text);
  background: color-mix(in srgb, var(--borsite-color-bg-elevated) 70%, transparent);
  border: var(--borsite-s-btn--secondary-bd);
  box-shadow: none;
}
.borsite-btn--secondary:hover {
  background: var(--borsite-color-bg-elevated);
  transform: var(--borsite-s-btn--secondary-tf);
}
html[data-theme="dark"] .borsite-btn--secondary {
  color: var(--borsite-color-text);
  background: color-mix(in srgb, var(--borsite-color-bg-elevated) 55%, transparent);
  border-color: var(--borsite-color-border);
}

/* ========== Публикации и търсене (Borsite_Publikacii_v1, Borsite_Search_v1) ========== */
/* --- Publications library page (Borsite_Publikacii_v1) --- */
.borsite-library {
  padding: calc(var(--borsite-space-10) + var(--borsite-space-1)) 0 var(--borsite-space-8);
}
.borsite-library__hero {
  margin-bottom: var(--borsite-space-8);
}
.borsite-library__hero .borsite-article__breadcrumb {
  margin-bottom: var(--borsite-space-5);
}
.borsite-library__title {
  font-family: var(--borsite-font-display);
  font-weight: var(--borsite-weight-display, 600);
  letter-spacing: var(--borsite-tracking-display, -0.02em);
  font-size: var(--borsite-s-library-title-fs);
  line-height: 1.05;
  color: var(--borsite-color-text);
  margin: 0 0 var(--borsite-space-4);
}
.borsite-library__intro {
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-library-intro-fs);
  line-height: 1.55;
  color: var(--borsite-color-text-muted);
  max-width: var(--borsite-s-library-intro-maxw);
  margin: 0;
}

/* Topic filter chips - not CTA buttons */
.borsite-chips {
  display: flex;
  flex-wrap: wrap;
  gap: var(--borsite-s-chips-gap);
  margin: 0 0 var(--borsite-space-8);
  padding: 0;
  list-style: none;
}
.borsite-chip {
  appearance: none;
  border: var(--borsite-s-chip-bd);
  background: transparent;
  color: var(--borsite-color-text-muted);
  font-family: var(--borsite-font-ui);
  font-weight: 500;
  font-size: var(--borsite-s-chip-fs); /* 11px - smaller than buttons */
  letter-spacing: 0.12em;
  text-transform: uppercase;
  line-height: 1;
  padding: var(--borsite-s-chip-p);
  border-radius: var(--borsite-radius-pill);
  cursor: pointer;
  transition: color var(--borsite-duration-fast) var(--borsite-ease-standard),
    border-color var(--borsite-duration-fast) var(--borsite-ease-standard),
    background var(--borsite-duration-fast) var(--borsite-ease-standard);
}
.borsite-chip:hover,
.borsite-chip:focus-visible {
  color: var(--borsite-color-text);
  border-color: var(--borsite-primitive-brass);
}
.borsite-chip:focus-visible {
  outline: var(--borsite-s-chip-ol);
  outline-offset: var(--borsite-s-chip-olo);
}
.borsite-chip.is-active {
  color: var(--borsite-primitive-brass);
  border-color: var(--borsite-primitive-brass);
  background: color-mix(in srgb, var(--borsite-primitive-brass) 12%, transparent);
}
html[data-theme="dark"] .borsite-chip.is-active {
  color: var(--borsite-color-title-accent-on-dark);
  border-color: color-mix(in srgb, var(--borsite-color-title-accent-on-dark) 70%, transparent);
  background: color-mix(in srgb, var(--borsite-color-title-accent-on-dark) 14%, transparent);
}

/* Toolbar: icon-only Cards | List (Lucide grid + list) */
.borsite-library__toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--borsite-space-4);
  margin-bottom: var(--borsite-space-6);
  flex-wrap: wrap;
}
.borsite-library__count {
  font-family: var(--borsite-font-ui);
  font-weight: 500;
  font-size: var(--borsite-s-library-count-fs); /* quiet section title - not H1, not tiny meta */
  line-height: 1.25;
  letter-spacing: 0.01em;
  color: var(--borsite-color-text-muted);
  margin: 0;
}
.borsite-library__toolbar-controls {
  display: inline-flex;
  align-items: center;
  margin-left: auto;
}
.borsite-view-toggle {
  display: inline-flex;
  align-items: stretch;
  border: var(--borsite-s-view-toggle-bd);
  border-radius: var(--borsite-radius-pill);
  overflow: hidden;
  background: color-mix(in srgb, var(--borsite-color-bg-elevated) 70%, transparent);
}
.borsite-view-toggle button {
  appearance: none;
  border: 0;
  background: transparent;
  color: var(--borsite-color-text-muted);
  padding: 0;
  width: var(--borsite-s-view-toggle-w);
  height: var(--borsite-s-view-toggle-h);
  min-height: var(--borsite-s-view-toggle-minh);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  line-height: 0;
}
.borsite-view-toggle button .borsite-icon {
  display: block;
  flex-shrink: 0;
}
.borsite-view-toggle button + button {
  border-left: var(--borsite-s-view-toggle-bdl);
}
.borsite-view-toggle button[aria-pressed="true"] {
  color: var(--borsite-color-text);
  background: color-mix(in srgb, var(--borsite-primitive-brass) 16%, transparent);
}
.borsite-view-toggle button:focus-visible {
  outline: var(--borsite-s-view-toggle-ol);
  outline-offset: var(--borsite-s-view-toggle-olo);
  z-index: 1;
}

/* Grid (default) */
.borsite-posts[data-view="grid"] .borsite-story-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--borsite-s-story-grid-gap-2);
}

/* List density - same .borsite-card component */
.borsite-posts[data-view="list"] .borsite-story-grid {
  display: flex;
  flex-direction: column;
  gap: var(--borsite-space-3);
}
.borsite-posts[data-view="list"] .borsite-card {
  display: grid;
  grid-template-columns: var(--borsite-s-card-cols-2);
  align-items: stretch;
  min-height: 0;
  border-radius: var(--borsite-radius-md);
}
.borsite-posts[data-view="list"] .borsite-card-media {
  aspect-ratio: 16 / 10;
  min-height: 100%;
  border-radius: 0;
}
.borsite-posts[data-view="list"] .borsite-card-media::after {
  opacity: 0.35;
}
.borsite-posts[data-view="list"] .borsite-card-body {
  padding: var(--borsite-space-3) var(--borsite-space-4);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: var(--borsite-space-1);
  min-height: 0;
}
.borsite-posts[data-view="list"] .borsite-card h3 {
  font-size: var(--borsite-s-card-fs-3);
  -webkit-line-clamp: 2;
  margin: 0;
}
.borsite-posts[data-view="list"] .borsite-card-body .borsite-meta {
  margin-top: var(--borsite-s-meta-marginto);
}
.borsite-posts[data-view="list"] .borsite-card:nth-child(2n),
.borsite-posts[data-view="list"] .borsite-card:nth-child(3n) {
  /* keep wash subtle in list */
}

/* Filter hide */
.borsite-card[hidden],
.borsite-posts .borsite-card.is-filtered-out {
  display: none !important;
}

/* Pagination */
.borsite-pagination {
  display: flex;
  align-items: center;
  justify-content: var(--borsite-pagination-justify);
  gap: var(--borsite-s-pagination-gap);
  margin: var(--borsite-space-10) 0 var(--borsite-space-8);
  font-family: var(--borsite-font-ui);
}
.borsite-pagination a,
.borsite-pagination span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: var(--borsite-s-pagination-minw);
  height: var(--borsite-s-pagination-h);
  padding: 0 var(--borsite-space-2);
  border-radius: var(--borsite-radius-sm);
  font-size: var(--borsite-s-pagination-fs);
  font-weight: 500;
  color: var(--borsite-color-text-muted);
  text-decoration: none;
  border: var(--borsite-s-pagination-bd);
}
.borsite-pagination a:hover,
.borsite-pagination a:focus-visible {
  color: var(--borsite-color-text);
  border-color: var(--borsite-color-border);
}
.borsite-pagination a:focus-visible {
  outline: var(--borsite-s-pagination-ol);
  outline-offset: var(--borsite-s-pagination-olo);
}
.borsite-pagination [aria-current="page"] {
  color: var(--borsite-primitive-brass);
  border-color: var(--borsite-primitive-brass);
  background: color-mix(in srgb, var(--borsite-primitive-brass) 10%, transparent);
}
.borsite-pagination__ellipsis {
  letter-spacing: 0.08em;
  pointer-events: none;
}
/* Previous / next (decision 18.10.2026): the same item, an icon instead of the number.
   Disabled on the first / last page: muted, no hover, not focusable (a span). */
.borsite-pagination__step .borsite-icon {
  width: var(--borsite-pagination-icon);
  height: var(--borsite-pagination-icon);
}
.borsite-pagination span.borsite-pagination__step[aria-disabled="true"] {
  opacity: var(--borsite-pagination-disabled-opacity);
  pointer-events: none;
}

/* Empty state (demo panel - hidden by default) */
.borsite-library__empty {
  display: none;
  text-align: center;
  padding: var(--borsite-space-12) var(--borsite-space-6);
  border: var(--borsite-s-library-empty-bd);
  border-radius: var(--borsite-radius-lg);
  margin-bottom: var(--borsite-space-8);
}
.borsite-library__empty[data-state="visible"]{
  display: block;
}
.borsite-library__empty h2 {
  font-family: var(--borsite-font-display);
  font-size: var(--borsite-s-library-empty-fs);
  margin: 0 0 var(--borsite-space-3);
}
.borsite-library__empty p {
  color: var(--borsite-color-text-muted);
  margin: 0 0 var(--borsite-space-5);
  font-family: var(--borsite-font-ui);
}


@media (max-width: 1023px) {
  .borsite-posts[data-view="grid"] .borsite-story-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 639px) {
  .borsite-posts[data-view="grid"] .borsite-story-grid {
    grid-template-columns: 1fr;
  }
  .borsite-posts[data-view="list"] .borsite-card {
    grid-template-columns: var(--borsite-s-card-cols-3);
  }
  .borsite-posts[data-view="list"] .borsite-card h3 {
    font-size: var(--borsite-s-card-fs-4);
  }
}

@media (prefers-reduced-motion: reduce) {
  .borsite-chip,
  .borsite-view-toggle button {
    transition: none;
  }
}

/* --- Search results page (Borsite_Search_v1) - pattern A --- */

.borsite-search {
  padding: calc(var(--borsite-space-10) + var(--borsite-space-1)) 0 var(--borsite-space-8);
}
.borsite-search__hero {
  margin-bottom: var(--borsite-space-8);
}
.borsite-search__hero .borsite-article__breadcrumb {
  margin-bottom: var(--borsite-space-5);
}
.borsite-search__title {
  font-family: var(--borsite-font-display);
  font-weight: var(--borsite-weight-display, 600);
  letter-spacing: var(--borsite-tracking-display, -0.02em);
  font-size: var(--borsite-s-search-title-fs);
  line-height: 1.05;
  color: var(--borsite-color-text);
  margin: 0;
}

.borsite-search__initial {
  padding: 0 0 var(--borsite-space-10);
}
.borsite-search__initial p {
  font-family: var(--borsite-font-ui);
  color: var(--borsite-color-text-muted);
  max-width: var(--borsite-s-search-initial-maxw);
  margin: 0;
  font-size: var(--borsite-s-search-initial-fs);
  line-height: 1.55;
}

.borsite-search__empty {
  text-align: center;
  padding: var(--borsite-space-12) var(--borsite-space-6);
  border: var(--borsite-s-search-empty-bd);
  border-radius: var(--borsite-radius-lg);
  margin: 0 0 var(--borsite-space-8);
}
.borsite-search__empty h2 {
  font-family: var(--borsite-font-display);
  font-weight: var(--borsite-weight-display, 600);
  letter-spacing: var(--borsite-tracking-display, -0.02em);
  font-size: var(--borsite-s-search-empty-fs);
  margin: 0 0 var(--borsite-space-3);
  color: var(--borsite-color-text);
}
.borsite-search__empty p {
  color: var(--borsite-color-text-muted);
  margin: 0 0 var(--borsite-space-5);
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-search-empty-fs-2);
  line-height: 1.55;
}
.borsite-search__empty-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--borsite-space-3) var(--borsite-space-5);
  align-items: center;
  justify-content: center;
}
.borsite-search__empty-home {
  font-family: var(--borsite-font-ui);
  font-weight: 500;
  font-size: var(--borsite-s-search-empty-home-fs);
  color: var(--borsite-color-text-muted);
  text-decoration: none;
}
.borsite-search__empty-home:hover,
.borsite-search__empty-home:focus-visible {
  color: var(--borsite-color-text);
}
.borsite-search__empty-home:focus-visible {
  outline: var(--borsite-s-search-empty-home-ol);
  outline-offset: var(--borsite-s-search-empty-home-olo);
}

/* State visibility (default = results). Pattern A: header search only. */
.borsite-search[data-state="results"] .borsite-search__initial,
.borsite-search[data-state="results"] .borsite-search__empty {
  display: none;
}
.borsite-search[data-state="empty"] .borsite-posts,
.borsite-search[data-state="empty"] .borsite-pagination,
.borsite-search[data-state="empty"] .borsite-search__initial,
.borsite-search[data-state="empty"] .borsite-library__toolbar-controls {
  display: none;
}
.borsite-search[data-state="initial"] .borsite-posts,
.borsite-search[data-state="initial"] .borsite-pagination,
.borsite-search[data-state="initial"] .borsite-library__toolbar,
.borsite-search[data-state="initial"] .borsite-search__empty {
  display: none;
}

/* ========== За мен и подкаст (Borsite_ZaMen_v1, Borsite_Podcast_v1) ========== */
/* Za men - one rail (56rem): split + left-aligned below-fold (~40rem lead track) */
.borsite-about__intro {
  width: var(--borsite-s-about-intro-w);
  margin-inline: auto;
  padding-block: var(--borsite-space-8) 0;
}
.borsite-about__intro .borsite-article__chrome {
  margin-bottom: var(--borsite-space-6);
}
.borsite-about__intro .borsite-article__dek {
  max-width: var(--borsite-s-article-dek-maxw);
  margin-bottom: 0;
}
.borsite-about__split {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--borsite-space-8);
  align-items: start;
  margin-top: var(--borsite-space-8);
  margin-bottom: var(--borsite-space-12);
}
.borsite-about__lead {
  min-width: 0;
}
.borsite-about__bio {
  margin: 0 0 var(--borsite-space-6);
}
.borsite-about__bio p {
  margin: 0 0 var(--borsite-space-4);
  max-width: var(--borsite-s-about-bio-maxw);
}
.borsite-about__bio p:last-child {
  margin-bottom: 0;
}
.borsite-about__cta {
  margin: 0;
}
.borsite-about__cta .borsite-btn .borsite-icon {
  flex-shrink: 0;
}
.borsite-about__follow {
  max-width: var(--borsite-s-about-follow-maxw);
  width: 100%;
  margin: var(--borsite-space-10) 0 0;
  padding: var(--borsite-space-8) 0 var(--borsite-space-4);
  border-top: var(--borsite-s-about-follow-bdt);
}

.borsite-about__follow-label {
  margin: 0 0 var(--borsite-space-4);
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-about-follow-label-fs);
  font-weight: var(--borsite-weight-ui, 500);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--borsite-color-text-muted);
}

.borsite-about__socials {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: var(--borsite-space-4);
  align-items: center;
}
.borsite-about__social {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--borsite-s-about-social-w); /* 2.375rem hit target */
  height: var(--borsite-s-about-social-h);
  padding: 0;
  color: var(--borsite-color-text);
  text-decoration: none;
  border-radius: var(--borsite-radius-pill);
  border: var(--borsite-s-about-social-bd);
  background: color-mix(in srgb, var(--borsite-color-bg-elevated) 70%, transparent);
  transition: color var(--borsite-duration-fast) ease,
    border-color var(--borsite-duration-fast) ease,
    background-color var(--borsite-duration-fast) ease;
}
.borsite-about__social:hover {
  color: var(--borsite-color-text);
  border-color: color-mix(in srgb, var(--borsite-primitive-teal) 40%, var(--borsite-color-border));
  background: var(--borsite-color-bg-elevated);
}
.borsite-about__social:focus-visible {
  outline: var(--borsite-s-about-social-ol);
  outline-offset: var(--borsite-s-about-social-olo);
}
.borsite-about__social .borsite-icon {
  flex-shrink: 0;
  display: block;
}
.borsite-about__social--soon {
  opacity: 0.55;
  cursor: default;
  pointer-events: none;
  color: var(--borsite-color-text-muted);
}
.borsite-about__portrait {
  margin: 0;
  width: var(--borsite-s-about-portrait-w);
  justify-self: start;
}
.borsite-about__portrait-frame {
  overflow: hidden;
  border-radius: var(--borsite-s-about-portrait-frame-r);
  aspect-ratio: 1 / 1;
  background:
    linear-gradient(145deg,
      color-mix(in srgb, var(--borsite-primitive-teal) 12%, var(--borsite-color-bg-muted)) 0%,
      color-mix(in srgb, var(--borsite-primitive-brass) 10%, var(--borsite-color-bg-elevated)) 100%);
  border: var(--borsite-s-about-portrait-frame-bd);
  display: grid;
  place-items: center;
}
.borsite-about__portrait-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: grayscale(0.12) contrast(1.02);
  opacity: 0.94;
}
.borsite-about__initials {
  font-family: var(--borsite-font-display);
  font-size: var(--borsite-s-about-initials-fs);
  font-weight: var(--borsite-weight-display);
  letter-spacing: 0.04em;
  color: color-mix(in srgb, var(--borsite-primitive-teal) 55%, var(--borsite-primitive-brass));
  line-height: 1;
  user-select: none;
}
.borsite-about__portrait .borsite-article__caption,
.borsite-about__portrait figcaption {
  margin-top: var(--borsite-space-3);
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-about-portrait-fs);
  color: var(--borsite-color-text-muted);
}
/* Below-fold stays in same rail as split; text tracks lead (~40rem), left-aligned */
.borsite-about__below {
  max-width: var(--borsite-s-about-below-maxw);
  width: 100%;
  margin-inline: 0;
  padding-bottom: var(--borsite-space-4);
}
.borsite-about__below .borsite-article__body h2:first-child {
  margin-top: 0;
}

.borsite-about__portrait {
  order: -1;
}
/* Below 1024px the locked ZaMen_v1 shows its mobile layout (its own Desktop/Mobile rule):
   the portrait is min(100%, 14rem) there. */
@media (max-width: 1023px) {
  .borsite-about__portrait {
    width: var(--borsite-s-about-portrait-w-3);
  }
}
@media (min-width: 1024px) {
  .borsite-about__split {
    grid-template-columns: 1fr auto;
    gap: var(--borsite-space-10) var(--borsite-space-12);
  }
  .borsite-about__portrait {
    order: 0;
    width: var(--borsite-s-about-portrait-w-2);
    justify-self: end;
  }
}

/* Podcast archive - short identity, latest episode, scannable list. Not a hero. */
.borsite-podcast {
  width: var(--borsite-s-podcast-w);
  margin-inline: auto;
  padding-block: var(--borsite-space-8) var(--borsite-space-4);
}
.borsite-podcast .borsite-article__chrome {
  margin-bottom: var(--borsite-space-6);
}
.borsite-podcast .borsite-article__title {
  margin-bottom: var(--borsite-space-4);
}
.borsite-podcast .borsite-article__dek {
  margin-bottom: 0;
  max-width: var(--borsite-s-article-dek-maxw-2);
}
.borsite-podcast__identity {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--borsite-space-6);
  align-items: center;
  margin-bottom: var(--borsite-space-12);
}
.borsite-podcast__cover {
  margin: 0;
  width: var(--borsite-s-podcast-cover-w);
}
.borsite-ph {
  display: grid;
  place-items: center;
  background: var(--borsite-color-bg-muted);
  border: var(--borsite-s-ph-bd);
  color: var(--borsite-color-text-muted);
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-ph-fs);
  font-weight: var(--borsite-weight-ui, 500);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  line-height: 1;
}
.borsite-podcast__cover .borsite-ph {
  width: 100%;
  aspect-ratio: 1 / 1;
  border-radius: var(--borsite-radius-md);
}
.borsite-podcast__latest-art {
  width: var(--borsite-s-podcast-latest-art-w);
  margin: 0 0 var(--borsite-space-5);
}
.borsite-podcast__latest-art .borsite-ph {
  width: 100%;
  aspect-ratio: 16 / 10;
  border-radius: var(--borsite-radius-md);
}
.borsite-podcast__thumb {
  width: var(--borsite-s-podcast-thumb-w);
  height: var(--borsite-s-podcast-thumb-h);
}
.borsite-podcast__thumb .borsite-ph {
  width: var(--borsite-s-ph-w);
  height: var(--borsite-s-ph-h);
  border-radius: var(--borsite-s-ph-r);
  font-size: 0;
}
.borsite-podcast__subscribe {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-top: var(--borsite-space-5);
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-podcast-subscribe-fs);
  font-weight: var(--borsite-weight-ui, 500);
  letter-spacing: var(--borsite-tracking-ui);
}
.borsite-podcast__subscribe a {
  color: var(--borsite-color-text-muted);
  text-decoration: none;
  padding: var(--borsite-space-2) 0;
  min-height: var(--borsite-s-podcast-subscribe-minh);
  display: inline-flex;
  align-items: center;
}
.borsite-podcast__subscribe a:hover {
  color: var(--borsite-color-link-hover);
}
.borsite-podcast__subscribe a:focus-visible {
  outline: var(--borsite-s-podcast-subscribe-ol);
  outline-offset: var(--borsite-s-podcast-subscribe-olo);
  border-radius: var(--borsite-s-podcast-subscribe-r);
}
.borsite-podcast__subscribe-sep {
  margin-inline: var(--borsite-s-podcast-subscribe-sep-marginin);
  color: var(--borsite-color-text-muted);
  opacity: 0.55;
}
.borsite-podcast__latest {
  padding-top: var(--borsite-space-8);
  margin-bottom: var(--borsite-space-12);
  border-top: var(--borsite-s-podcast-latest-bdt);
}
.borsite-podcast__latest .borsite-kicker {
  margin-bottom: var(--borsite-space-3);
}
.borsite-podcast__latest h2,
.borsite-podcast__archive h2 {
  font-family: var(--borsite-font-display);
  font-weight: var(--borsite-weight-display);
  letter-spacing: var(--borsite-tracking-display, -0.02em);
  color: var(--borsite-color-text);
  text-wrap: balance;
  margin: 0;
}
.borsite-podcast__latest h2 {
  font-size: var(--borsite-s-podcast-latest-fs);
  line-height: 1.15;
  margin-bottom: var(--borsite-space-3);
}
.borsite-podcast__meta,
.borsite-podcast__row-meta {
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-podcast-row-meta-fs);
  font-weight: var(--borsite-weight-meta, 500);
  letter-spacing: 0.01em;
  text-transform: none;
  color: var(--borsite-color-text-muted);
}
.borsite-podcast__meta {
  margin: 0 0 var(--borsite-space-5);
}
.borsite-podcast__summary {
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-podcast-summary-fs);
  line-height: 1.6;
  color: var(--borsite-color-text);
  max-width: var(--borsite-s-podcast-summary-maxw);
  margin: 0 0 var(--borsite-space-3);
}
.borsite-podcast__summary + .borsite-podcast__summary {
  color: var(--borsite-color-text-muted);
  margin-bottom: var(--borsite-space-6);
}
.borsite-podcast__listen {
  margin: 0;
}
.borsite-podcast__archive {
  padding-bottom: var(--borsite-space-6);
}
.borsite-podcast__archive h2 {
  font-size: var(--borsite-s-podcast-archive-fs);
  line-height: 1.2;
  margin-bottom: var(--borsite-space-4);
}
.borsite-podcast__list {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: var(--borsite-s-podcast-list-bdt);
}
.borsite-podcast__row {
  display: grid;
  grid-template-columns: var(--borsite-s-podcast-row-cols);
  column-gap: var(--borsite-space-4);
  align-items: center;
  padding-block: var(--borsite-space-4);
  border-bottom: var(--borsite-s-podcast-row-bdb);
  text-decoration: none;
  color: inherit;
  min-height: var(--borsite-s-podcast-row-minh);
}
.borsite-podcast__num {
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-podcast-num-fs);
  font-weight: var(--borsite-weight-ui, 500);
  letter-spacing: 0.08em;
  color: var(--borsite-color-kicker);
}
.borsite-podcast__row-title {
  font-family: var(--borsite-font-display);
  font-weight: var(--borsite-weight-display);
  font-size: var(--borsite-s-podcast-row-title-fs);
  line-height: 1.3;
  letter-spacing: var(--borsite-tracking-display, -0.02em);
  color: var(--borsite-color-text);
}
.borsite-podcast__row-meta {
  white-space: nowrap;
}
.borsite-podcast__row:hover .borsite-podcast__row-title {
  color: var(--borsite-color-link-hover);
}
.borsite-podcast__row:focus-visible {
  outline: var(--borsite-s-podcast-row-ol);
  outline-offset: var(--borsite-s-podcast-row-olo);
}
@media (min-width: 768px) {
  .borsite-podcast__identity {
    grid-template-columns: auto 1fr;
    gap: var(--borsite-space-8);
    align-items: center;
  }
  .borsite-podcast__cover {
    width: var(--borsite-s-podcast-cover-w-2);
  }
}

@media (max-width: 700px) {
  .borsite-podcast__row {
    grid-template-columns: var(--borsite-s-podcast-row-cols-2);
    row-gap: var(--borsite-space-1);
  }
  .borsite-podcast__row-meta {
    grid-column: 3;
    white-space: normal;
  }
}

.borsite-podcast .borsite-hero {
  padding: 0 0 var(--borsite-space-12);
}
.borsite-podcast .borsite-hero-card,
.borsite-podcast .borsite-hero-content {
  min-height: var(--borsite-s-hero-content-minh-3);
}
.borsite-podcast .borsite-hero-content {
  width: var(--borsite-s-hero-content-w-2);
  padding: var(--borsite-s-hero-content-p-4);
}
.borsite-podcast .borsite-hero-content h1 {
  --borsite-hero-title-size: var(--borsite-s-hero-content-fs-11);
  line-height: 1.12;
  max-width: 16ch;
  margin: var(--borsite-s-hero-content-m);
}
.borsite-podcast-hero__meta {
  font-family: var(--borsite-font-ui) !important;
  font-size: var(--borsite-s-podcast-hero-meta-fs) !important;
  letter-spacing: 0.01em;
  color: var(--borsite-color-hero-body) !important;
  margin: var(--borsite-space-4) 0 0 !important;
}
.borsite-podcast .borsite-hero-content .borsite-cta-row {
  margin-top: var(--borsite-s-cta-row-marginto);
}
.borsite-podcast .borsite-hero .borsite-podcast__subscribe {
  margin-top: var(--borsite-space-4);
}
.borsite-podcast .borsite-hero .borsite-podcast__subscribe a,
.borsite-podcast .borsite-hero .borsite-podcast__subscribe-sep {
  color: var(--borsite-color-kicker-on-dark);
}
@media (max-width: 640px) {
  .borsite-podcast .borsite-hero-card,
  .borsite-podcast .borsite-hero-content {
    min-height: var(--borsite-s-hero-content-minh-4);
  }
  .borsite-podcast .borsite-hero-content h1 {
    --borsite-hero-title-size: var(--borsite-s-hero-content-fs-12);
    max-width: 14ch;
  }
}

/* ========== 404 (Borsite_404_v1) ========== */
/* 404 - premium minimal centered recovery */
.borsite-notfound {
  padding-block: var(--borsite-space-16) var(--borsite-space-16);
  display: grid;
  place-items: center;
  min-height: var(--borsite-s-notfound-minh);
}
.borsite-notfound__inner {
  width: var(--borsite-s-notfound-inner-w);
  margin-inline: auto;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.borsite-notfound__icon {
  width: var(--borsite-s-notfound-icon-w);
  height: var(--borsite-s-notfound-icon-h);
  margin-bottom: var(--borsite-space-5);
  color: var(--borsite-primitive-teal);
  display: grid;
  place-items: center;
}
.borsite-notfound__icon .borsite-icon {
  width: var(--borsite-s-icon-w-4);
  height: var(--borsite-s-icon-h-4);
  stroke: color-mix(in srgb, var(--borsite-primitive-teal) 70%, var(--borsite-primitive-brass));
}
html[data-theme="dark"] .borsite-notfound__icon .borsite-icon {
  stroke: color-mix(in srgb, var(--borsite-c-icon-stroke-dark) 55%, var(--borsite-color-title-accent-on-dark));
}
.borsite-notfound__code {
  margin: 0 0 var(--borsite-space-3);
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-notfound-code-fs);
  font-weight: var(--borsite-weight-ui);
  letter-spacing: 0.06em;
  line-height: 1;
  color: color-mix(in srgb, var(--borsite-color-text-muted) 45%, transparent);
  user-select: none;
}
.borsite-notfound__title {
  margin: 0 0 var(--borsite-space-4);
  text-wrap: balance;
}
.borsite-notfound__message {
  margin: 0 0 var(--borsite-space-8);
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-notfound-message-fs);
  line-height: 1.55;
  color: var(--borsite-color-text-muted);
  max-width: var(--borsite-s-notfound-message-maxw);
  text-wrap: pretty;
}
.borsite-notfound__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--borsite-space-3) var(--borsite-space-4);
  align-items: center;
  justify-content: center;
}
@media (max-width: 700px) {
  .borsite-notfound {
    padding-block: var(--borsite-space-10) var(--borsite-space-12);
    min-height: var(--borsite-s-notfound-minh-2);
  }
}

/* ========== Книга (Borsite_Kniga_v1) ========== */
/* ========== Book page, variant D (B story + A hero, themes, formats) ========== */
.borsite-book {
  width: var(--borsite-s-book-w);
  margin-inline: auto;
  padding-block: var(--borsite-space-8) var(--borsite-space-6);
}
.borsite-book .borsite-article__chrome {
  margin-bottom: var(--borsite-space-6);
}
.borsite-book .borsite-article__breadcrumb {
  margin-bottom: 0;
}
.borsite-book .borsite-card {
  display: flex;
  flex-direction: column;
  margin-bottom: 0;
  border-radius: var(--borsite-radius-lg);
}
.borsite-book .borsite-card:hover {
  transform: none;
}
.borsite-book .borsite-btn .borsite-icon {
  flex-shrink: 0;
}

/* Section rhythm (full band sections) */
.borsite-book-section {
  padding-top: var(--borsite-space-16);
  scroll-margin-top: var(--borsite-s-book-section-scrollma);
}
.borsite-book-section__head {
  max-width: var(--borsite-s-book-section-head-maxw);
  margin-bottom: var(--borsite-space-6);
}
.borsite-book-section__head .borsite-kicker {
  margin-bottom: var(--borsite-space-3);
}
.borsite-book-section__head h2 {
  font-size: var(--borsite-s-book-section-head-fs);
  line-height: 1.15;
  color: var(--borsite-color-text);
}
.borsite-book-section__head p {
  margin: var(--borsite-space-3) 0 0;
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-book-section-head-fs-2);
  line-height: 1.6;
  color: var(--borsite-color-text-muted);
}

/* Real cover (flat, extracted from the homepage photo) with paper spine highlight */
.borsite-book-cover {
  margin: 0;
}
.borsite-book-cover__inner {
  position: relative;
  border-radius: var(--borsite-s-book-cover-inner-r);
  box-shadow: var(--borsite-s-book-cover-inner-shadow);
}
.borsite-book-cover__inner img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 640 / 1036;
  border-radius: inherit;
}
.borsite-book-cover__inner::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 7%;
  border-radius: var(--borsite-s-book-cover-inner-r-2);
  background: linear-gradient(90deg, var(--borsite-c-book-cover__inner-bg), var(--borsite-c-book-cover__inner-bg-2) 38%, var(--borsite-c-book-cover__inner-bg-3) 72%, transparent);
  pointer-events: none;
}
.borsite-book-cover--3d {
  perspective: var(--borsite-s-book-cover--3d-perspect);
}
.borsite-book-cover--3d .borsite-book-cover__inner {
  transform: rotateY(-7deg) rotateX(1deg);
  transform-origin: 30% 50%;
  transition: transform var(--borsite-duration-slow) var(--borsite-ease-standard);
}
.borsite-book-cover--3d:hover .borsite-book-cover__inner {
  transform: rotateY(-2deg);
}
html[data-theme="dark"] .borsite-book-cover__inner {
  box-shadow: var(--borsite-s-book-cover-inner-shadow-2);
}
@media (prefers-reduced-motion: reduce) {
  .borsite-book-cover--3d .borsite-book-cover__inner,
  .borsite-book-cover--3d:hover .borsite-book-cover__inner {
    transform: none;
    transition: none;
  }
}

/* Hero (from A): mobile = title beside a small cover, then hook + buttons; desktop = copy left, cover right */
.borsite-book-hero {
  display: grid;
  grid-template-columns: var(--borsite-s-book-hero-cols);
  grid-template-areas: "head cover" "body body";
  column-gap: var(--borsite-space-5);
  row-gap: var(--borsite-space-5);
  align-items: center;
  margin-top: var(--borsite-space-5);
}
.borsite-book-hero__head { grid-area: head; }
.borsite-book-hero__cover { grid-area: cover; align-self: start; padding-top: var(--borsite-space-1, var(--borsite-space-1)); }
.borsite-book-hero__body { grid-area: body; }
.borsite-book-hero .borsite-kicker {
  margin-bottom: var(--borsite-space-3);
}
.borsite-book-hero__title {
  font-size: var(--borsite-s-book-hero-title-fs);
  line-height: 1.02;
  color: var(--borsite-color-text);
  margin: 0 0 var(--borsite-space-3);
}
.borsite-book-hero__sub {
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-book-hero-sub-fs);
  line-height: 1.5;
  font-weight: 500;
  color: var(--borsite-color-text-muted);
  margin: 0;
  max-width: var(--borsite-s-book-hero-sub-maxw);
}
.borsite-book-hero__hook {
  font-family: var(--borsite-font-display);
  font-size: var(--borsite-s-book-hero-hook-fs);
  line-height: 1.5;
  color: var(--borsite-color-text);
  margin: 0 0 var(--borsite-space-5);
  padding-left: var(--borsite-space-4);
  border-left: var(--borsite-s-book-hero-hook-bdl);
  max-width: var(--borsite-s-book-hero-hook-maxw);
}
.borsite-book-hero__meta {
  margin: var(--borsite-space-4) 0 0;
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-book-hero-meta-fs);
  line-height: 1.5;
  color: var(--borsite-color-text-muted);
}
.borsite-book-hero__meta .borsite-article__meta-sep {
  margin-inline: var(--borsite-s-article-meta-sep-marginin);
  opacity: 0.65;
}
@media (min-width: 900px) {
  .borsite-book-hero {
    grid-template-columns: var(--borsite-s-book-hero-cols-2);
    grid-template-areas: "head cover" "body cover";
    grid-template-rows: auto 1fr;
    column-gap: var(--borsite-space-12);
    row-gap: var(--borsite-space-6);
    margin-top: var(--borsite-space-8);
  }
  .borsite-book-hero__head { align-self: end; }
  .borsite-book-hero__body { align-self: start; }
  .borsite-book-hero__cover {
    align-self: center;
    justify-self: end;
    width: 100%;
    padding: 0;
  }
}

/* Three themes (from A), built on design-system cards */
.borsite-book-themes {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--borsite-space-4);
  list-style: none;
  margin: 0;
  padding: 0;
}
.borsite-book-themes .borsite-card-body {
  min-height: 0;
  padding: var(--borsite-space-6);
}
.borsite-book-themes h3 {
  font-size: var(--borsite-s-book-themes-fs);
  margin: 0 0 var(--borsite-space-3);
}
.borsite-book-themes p {
  margin: 0;
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-book-themes-fs-2);
  line-height: 1.55;
  color: var(--borsite-color-text-muted);
}
@media (min-width: 768px) {
  .borsite-book-themes {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Story (from B): side TOC + article body at the post measure */
.borsite-book-story {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--borsite-space-6);
  padding-top: var(--borsite-space-16);
}
.borsite-book-story__body {
  min-width: 0;
  max-width: var(--borsite-s-book-story-body-maxw);
}
.borsite-book-story__body > section {
  scroll-margin-top: var(--borsite-s-book-story-body-scrollma);
}
.borsite-book-story__body > section + section {
  margin-top: var(--borsite-space-12);
}
.borsite-book-story__body h2 {
  margin-top: 0;
}
.borsite-book-toc {
  font-family: var(--borsite-font-ui);
  border: var(--borsite-s-book-toc-bd);
  border-radius: var(--borsite-radius-md);
  background: color-mix(in srgb, var(--borsite-color-bg-elevated) 66%, transparent);
  padding: var(--borsite-space-2) var(--borsite-space-4);
}
.borsite-book-toc__toggle {
  appearance: none;
  width: 100%;
  min-height: var(--borsite-s-book-toc-toggle-minh);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--borsite-space-3);
  border: 0;
  background: transparent;
  color: var(--borsite-color-text);
  font: inherit;
  font-size: var(--borsite-s-book-toc-toggle-fs);
  font-weight: var(--borsite-weight-ui, 500);
  letter-spacing: var(--borsite-tracking-ui);
  cursor: pointer;
  padding: 0;
}
.borsite-book-toc__toggle .borsite-icon {
  transition: transform var(--borsite-duration-base) ease;
}
.borsite-book-toc__toggle[aria-expanded="true"] .borsite-icon {
  transform: rotate(180deg);
}
.borsite-book-toc__toggle:focus-visible,
.borsite-book-toc__list a:focus-visible {
  outline: var(--borsite-s-book-toc-list-ol);
  outline-offset: var(--borsite-s-book-toc-list-olo);
  border-radius: var(--borsite-s-book-toc-list-r);
}
.borsite-book-toc .borsite-label {
  display: none;
  margin-bottom: var(--borsite-space-3);
}
.borsite-book-toc__list {
  list-style: none;
  margin: 0;
  padding: 0 0 var(--borsite-space-2);
}
.js-toc .borsite-book-toc__list[hidden] {
  display: none;
}
.borsite-book-toc__list a {
  display: flex;
  align-items: center;
  min-height: var(--borsite-s-book-toc-list-minh);
  padding-left: var(--borsite-space-3);
  border-left: var(--borsite-s-book-toc-list-bdl);
  color: var(--borsite-color-text-muted);
  font-size: var(--borsite-s-book-toc-list-fs);
  font-weight: var(--borsite-weight-ui, 500);
  text-decoration: none;
  transition: color var(--borsite-duration-fast) ease, border-color var(--borsite-duration-fast) ease;
}
.borsite-book-toc__list a:hover {
  color: var(--borsite-color-text);
}
.borsite-book-toc__list a[aria-current="true"] {
  color: var(--borsite-color-text);
  border-left-color: var(--borsite-color-accent);
}
@media (min-width: 1024px) {
  .borsite-book-story {
    grid-template-columns: var(--borsite-s-book-story-cols);
    gap: var(--borsite-space-12);
  }
  .borsite-book-toc {
    position: sticky;
    top: var(--borsite-s-book-toc-top);
    align-self: start;
    border: 0;
    background: transparent;
    padding: 0;
  }
  .borsite-book-toc__toggle {
    display: none;
  }
  .borsite-book-toc .borsite-label {
    display: block;
  }
  .js-toc .borsite-book-toc__list[hidden] {
    display: block;
  }
}

/* Chapter list */
.borsite-article__body ol.borsite-book-chapters {
  list-style: none;
  margin: 0 0 1.25em;
  padding: 0;
  border-top: var(--borsite-s-book-chapters-bdt);
}
.borsite-book-chapters li {
  display: grid;
  grid-template-columns: var(--borsite-s-book-chapters-cols);
  align-items: baseline;
  gap: var(--borsite-space-3);
  margin: 0;
  padding-block: var(--borsite-space-4);
  border-bottom: var(--borsite-s-book-chapters-bdb);
  line-height: 1.4;
}
.borsite-book-chapters .borsite-kicker {
  margin: 0;
}
.borsite-book-chapters__title {
  display: block;
  font-size: var(--borsite-s-book-chapters-title-fs);
  color: var(--borsite-color-text);
}
.borsite-book-chapters__note {
  display: block;
  margin-top: var(--borsite-s-book-chapters-note-marginto);
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-book-chapters-note-fs);
  line-height: 1.5;
  color: var(--borsite-color-text-muted);
}

/* Quotes inside the body: design-system blockquote + attribution */
.borsite-article__body blockquote p {
  margin: 0;
}
.borsite-article__body blockquote cite {
  display: block;
  margin-top: var(--borsite-space-3);
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-article-body-fs);
  font-style: normal;
  color: var(--borsite-color-text-muted);
}
.borsite-book-pullquote {
  font-size: var(--borsite-s-book-pullquote-fs) !important;
  line-height: 1.35 !important;
}
.borsite-article__body .borsite-article__figure img {
  aspect-ratio: 3 / 2;
  object-position: 56% 55%;
}
.borsite-book-excerpt-label {
  margin: 0 0 var(--borsite-space-2);
}
.borsite-book-excerpt-end {
  margin-top: var(--borsite-space-6);
}

/* Author */
.borsite-book-author {
  display: grid;
  grid-template-columns: var(--borsite-s-book-author-cols);
  gap: var(--borsite-space-4);
  align-items: start;
}
.borsite-book-author__photo {
  margin: 0;
  width: var(--borsite-s-book-author-photo-w);
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border-radius: var(--borsite-radius-md);
  border: var(--borsite-s-book-author-photo-bd);
}
.borsite-book-author__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.borsite-book-author p {
  margin: 0 0 0.75em;
}

/* Buttons and read links inside the article body keep design-system colors */
.borsite-book a.borsite-btn,
.borsite-book a.borsite-read {
  text-decoration: none;
}
.borsite-book .borsite-read {
  display: inline-flex;
  align-items: center;
  gap: var(--borsite-s-read-gap);
}
.borsite-article__body a.borsite-read {
  color: var(--borsite-color-text);
}

/* Buy section (from A): format cards, one primary */
.borsite-book-formats {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--borsite-space-4);
  list-style: none;
  margin: 0;
  padding: 0;
}
.borsite-book-formats .borsite-card-body {
  min-height: 0;
  padding: var(--borsite-space-6);
  gap: var(--borsite-space-3);
}
.borsite-book-formats .borsite-kicker {
  margin: 0;
}
.borsite-book-formats h3 {
  font-size: var(--borsite-s-book-formats-fs);
  margin: 0;
}
.borsite-book-format--primary {
  border-color: color-mix(in srgb, var(--borsite-color-accent) 55%, var(--borsite-color-border));
}
html[data-theme="dark"] .borsite-book-format--primary {
  border-color: color-mix(in srgb, var(--borsite-primitive-brass) 45%, transparent);
}
.borsite-book-format__price {
  margin: 0;
  font-family: var(--borsite-font-display);
  font-size: var(--borsite-s-book-format-price-fs);
  line-height: 1.1;
  color: var(--borsite-color-text);
}
.borsite-book-format__price span {
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-book-format-price-fs-2);
  color: var(--borsite-color-text-muted);
  margin-left: var(--borsite-s-book-format-price-marginle);
}
.borsite-book-format__meta {
  margin: 0;
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-book-format-meta-fs);
  line-height: 1.5;
  color: var(--borsite-color-text-muted);
}
.borsite-book-formats .borsite-btn {
  margin-top: auto;
  align-self: flex-start;
}
.borsite-book-buy-note {
  margin: var(--borsite-space-4) 0 0;
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-book-buy-note-fs);
  line-height: 1.55;
  color: var(--borsite-color-text-muted);
}
@media (min-width: 768px) {
  .borsite-book-formats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* ========== WordPress integration (step 4.4, other templates) ========== */

/* Page bodies: the post-content wrapper keeps the page type (theme.json styles it as article text)
   and is a flow-root, so the first block's margin does not collapse into the header's
   (header space-6 + space-2 = the mockup's collapsed space-8). */
.wp-block-post-content:is(.borsite-about__body, .borsite-book__body) {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
.borsite-about .borsite-about__split,
.borsite-book .borsite-book-hero {
  margin-top: var(--borsite-space-2);
}

/* Newsletter after each page body (article.css zeroes #borsite-main children, so the ids are needed) */
#borsite-main > .borsite-library + .borsite-newsletter {
  margin-top: var(--borsite-space-4);
}
#borsite-main > :is(.borsite-about, .borsite-podcast-page, .borsite-podcast) + .borsite-newsletter {
  margin-top: var(--borsite-s-newsletter-marginto);
}
#borsite-main > .borsite-book + .borsite-newsletter {
  margin-top: var(--borsite-space-12);
}

/* Chips are links (server-side topic archives) */
a.borsite-chip {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
}

/* Card titles: 3 lines in grid, 2 in list (step 4.3 card) */
.borsite-posts[data-view="grid"] .borsite-card h3 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
.borsite-posts[data-view="list"] .borsite-card h3 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Count line: long search queries never widen the page */
.borsite-library__count {
  min-width: 0;
  overflow-wrap: normal; /* no broken words (18.10.2026) */
}

/* Search: 0 results heading */
.borsite-search__empty h2 {
  overflow-wrap: normal;
}

/* Podcast: no episode numbers yet, so no empty number column */
.borsite-podcast__list--nonum .borsite-podcast__row {
  grid-template-columns: var(--borsite-s-podcast-row-cols-3);
}
.borsite-podcast__thumb img {
  width: var(--borsite-s-podcast-thumb-w);
  height: var(--borsite-s-podcast-thumb-h);
  object-fit: cover;
  border-radius: var(--borsite-s-podcast-thumb-r);
  display: block;
}
.borsite-podcast__row-title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  overflow-wrap: normal;
}
.borsite-podcast .borsite-hero-content h1 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden;
  overflow-wrap: normal;
}
.borsite-podcast-hero__summary {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
@media (max-width: 700px) {
  .borsite-podcast__list--nonum .borsite-podcast__row {
    grid-template-columns: var(--borsite-s-podcast-row-cols-4);
  }
  .borsite-podcast__list--nonum .borsite-podcast__row-meta {
    grid-column: 2;
  }
}
.borsite-podcast .borsite-pagination {
  margin-block: var(--borsite-space-8) 0;
}

/* Book: "Скоро" instead of a button when there is no price or shop link */
.borsite-book-format__soon {
  margin: auto 0 0;
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-book-format-soon-fs);
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--borsite-color-text-muted);
}

/* Book: core blocks inside the story (figure, author photo, chapters) */
.borsite-book-story__body .wp-block-image.borsite-article__figure {
  margin: var(--borsite-space-8) 0;
}
.borsite-book-author .wp-block-group > p {
  margin: 0 0 0.75em;
}
.borsite-book-author__photo.wp-block-image img {
  aspect-ratio: 1 / 1;
}
.borsite-about__cta.wp-block-buttons {
  display: block;
}

/* Editor: field panel under the server preview (page and template blocks) */
.borsite-pages-editor-panel {
  display: grid;
  grid-template-columns: var(--borsite-s-pages-editor-panel-cols);
  gap: var(--borsite-space-3) var(--borsite-space-4);
  margin: var(--borsite-space-3) auto var(--borsite-space-6);
  max-width: var(--borsite-s-pages-editor-panel-maxw);
  padding: var(--borsite-space-4);
  border: var(--borsite-s-pages-editor-panel-bd);
  border-radius: var(--borsite-s-pages-editor-panel-r);
  background: var(--borsite-color-bg-elevated);
  font-family: var(--borsite-font-ui);
  font-size: var(--borsite-s-pages-editor-panel-fs);
}
.borsite-pages-editor-panel__title {
  grid-column: 1 / -1;
  margin: 0;
  font-weight: 600;
  color: var(--borsite-color-text);
}
.borsite-pages-editor-panel {
  contain: inline-size; /* never widens a grid track (portrait column of За мен) */
  color: var(--borsite-color-text);
}
.borsite-pages-editor-media {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--borsite-s-pages-editor-media-gap);
}
/* Editor canvas only: fixed portrait track, so the field panel never squeezes the text column */
.editor-styles-wrapper .borsite-about__split {
  grid-template-columns: var(--borsite-s-about-split-cols);
}
.editor-styles-wrapper .borsite-pages-editor-panel {
  grid-template-columns: var(--borsite-s-pages-editor-panel-cols-2);
}
@media (max-width: 1023px) {
  .editor-styles-wrapper .borsite-about__split {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Book TOC: collapsed before first paint on mobile (html.js-toc is set by the head boot script),
   so the script closing it after load does not move the page (CLS). No JS: the list stays open. */
@media (max-width: 1023px) {
  .js-toc .borsite-book-toc__toggle[aria-expanded="false"] ~ .borsite-book-toc__list {
    display: none;
  }
}

/* ========== One page width (RULES 49-51, designer 18.10.2026) ========== */
/* Rows (List view, Publications, search, podcast): title and text at most 45rem. */
.borsite-posts[data-view="list"] .borsite-card-body > * {
  max-width: var(--borsite-read-w);
}
/* Podcast archive: same toolbar as Publications (list title + Cards | List). */
.borsite-podcast__toolbar h2 {
  margin-bottom: 0;
}
/* Podcast and About intro text inside the page width: at most 45rem, left-aligned. */
.borsite-podcast .borsite-article__chrome > :not(.borsite-article__breadcrumb, .borsite-article__dek) {
  max-width: var(--borsite-read-w);
}
.borsite-about__lead {
  max-width: var(--borsite-read-w);
}
