/* WordPress / Gutenberg integration without changing the original design. */
.x927cd6>.wp-block-group.xee227c{grid-column:2;grid-row:1}
.x927cd6.xcdff73>.wp-block-group.xee227c{grid-column:1}
.wp-block-group.xee227c{min-width:0}
.tonplay-pagination{margin:20px 0}
.tonplay-pagination .page-numbers{display:flex;flex-wrap:wrap;gap:9px;list-style:none;padding:0}
.tonplay-pagination .page-numbers a,.tonplay-pagination .page-numbers span{display:inline-block;padding:8px 12px;border:1px solid var(--line-soft);border-radius:9px;text-decoration:none}
.tonplay-pagination .page-numbers .current{background:var(--panel-2);color:var(--text)}
.xee227c .wp-block-heading{color:var(--text)}
.x02d938 a{color:var(--blue)}
@media(max-width:900px){.x927cd6>.wp-block-group.xee227c{grid-column:1;grid-row:auto}}

/* Nav items are managed in WordPress; mobile quick menu may contain more/fewer items. */
@media (max-width: 900px) {
  .xbe25b2 { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: minmax(0,1fr); }
}

/*
 * WordPress block layout compatibility (Zenith Layout 1.5.0).
 * Imported pages use the original site grid inside Gutenberg Group blocks.
 * Core's constrained/flex layout styles may shrink the grid to the intrinsic
 * width of its first child. Explicitly keep the page container and article
 * stretched to their grid areas on desktop, tablet and mobile.
 */
.x4209ec > .x00dee0.x3a2706 {
  display: block !important;
  width: min(calc(100% - 32px), var(--container, 1180px)) !important;
  max-width: var(--container, 1180px) !important;
  min-width: 0 !important;
  margin-inline: auto !important;
}
.x4209ec .x00dee0.x3a2706 > .x927cd6 {
  display: grid !important;
  grid-template-columns: 236px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 36px !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
}
.x4209ec .x927cd6 > .xee227c {
  display: block !important;
  grid-column: 2 !important;
  grid-row: 1 !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  justify-self: stretch !important;
}
.x4209ec .x927cd6 > .x662d8a {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin-inline: 0 !important;
}
/* Gutenberg may assign a default 620px max-width to direct children. */
.x4209ec .wp-block-group.xee227c > :where(*) {
  max-width: 100% !important;
  min-width: 0;
  margin-inline: 0 !important;
}
.x4209ec .xee227c :is(.tonplay-demo-section, .tonplay-demo-frame, .xe6e951, table) {
  max-width: 100%;
  min-width: 0;
}
.x4209ec .x927cd6.xcdff73 {
  grid-template-columns: minmax(0, 1fr) !important;
}
.x4209ec .x927cd6.xcdff73 > .xee227c {
  grid-column: 1 !important;
}
@media (max-width: 980px) {
  .x4209ec .x00dee0.x3a2706 > .x927cd6 {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 14px !important;
  }
  .x4209ec .x927cd6 > .xee227c,
  .x4209ec .x927cd6 > .x662d8a {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
}
@media (max-width: 640px) {
  .x4209ec > .x00dee0.x3a2706 {
    width: min(calc(100% - 28px), var(--container, 1180px)) !important;
  }
}

/* Zenith Layout 1.5.0: imported full-width content and sidebar grids.
   WordPress block supports can otherwise constrain a Group to theme.json
   contentSize even when the site's original HTML grid is wider. */
.x4209ec > :is(.wp-block-group, div).x00dee0.x3a2706 {
  box-sizing: border-box !important;
  flex: none !important;
  align-self: stretch !important;
}
.x4209ec > .x00dee0.x3a2706 > .wp-block-group.x927cd6,
.x4209ec > .x00dee0.x3a2706 > .x927cd6 {
  box-sizing: border-box !important;
  justify-self: stretch !important;
  margin-inline: 0 !important;
}
.x4209ec .x927cd6 > :is(.wp-block-group, article, div).xee227c {
  box-sizing: border-box !important;
  overflow-wrap: anywhere;
}
/* Gutenberg's default constrained group layout must not clip paragraphs,
   headings, lists, tables or the demo player inside the original article. */
.x4209ec .xee227c.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.x4209ec .xee227c.wp-block-group > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  width: auto;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.x4209ec .xee227c iframe,
.x4209ec .xee227c .tonplay-demo-frame { max-width: 100%; }
/* Do not reserve an empty sidebar column on templates with no sidebar. */
@supports selector(:has(> .x662d8a)) {
  .x4209ec .x927cd6:not(:has(> .x662d8a)) {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .x4209ec .x927cd6:not(:has(> .x662d8a)) > .xee227c {
    grid-column: 1 !important;
  }
}

/* The intro Group appears only on the two published catalog pages. The
 * default Gutenberg constrained-layout paragraph max-width (620px) would
 * otherwise make the introduction narrower than the card grid. */
.x4209ec > .wp-block-group.x00dee0:not(.x3a2706) > :where(*) {
  width: auto !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Zenith Layout 1.6.0: full-width hub/catalog/provider/sitemap pages.
 * The original x927cd6 grid ALWAYS reserves a 236px sidebar column.
 * Catalogs have no sidebar, so render their own single-column wrapper rather
 * than relying on :has() to override a more specific !important rule. */
.x4209ec .tonplay-directory {
  box-sizing: border-box !important;
  width: min(calc(100% - 32px), var(--container, 1180px)) !important;
  max-width: var(--container, 1180px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  min-width: 0 !important;
}
.x4209ec .tonplay-directory > .tonplay-directory-content {
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
}
.x4209ec .tonplay-directory-content > .xee227c {
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
}
/* Do not let a shortcode wrapper constrain the directory to Gutenberg's
 * default 620px contentSize if one is emitted by the active WordPress build. */
.x4209ec > .wp-block-shortcode:has(> .tonplay-directory) {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
}
@media (max-width: 640px) {
  .x4209ec .tonplay-directory {
    width: min(calc(100% - 28px), var(--container, 1180px)) !important;
  }
}

/* Zenith Layout 1.8.0: Gutenberg posts inherit the exact numbered-card
 * design of editorial pages. The data is read from editable H2 blocks. */
.zenith-post-detail {
  margin-bottom: 36px;
  min-width: 0;
}
.zenith-post-detail .xc4f968 {
  width: 100%;
  min-width: 0;
}
.zenith-post-detail .x9e0829 {
  width: 100%;
  min-width: 0;
  max-width: none;
}
.zenith-post-detail .zenith-post-intro {
  margin: 0 0 18px;
  color: var(--body);
  font-size: 15.5px;
  line-height: 1.72;
}
.zenith-post-detail .x0457fb { min-width: 0; }
.zenith-post-detail .x6ef781 > :where(*) {
  max-width: 100%;
  min-width: 0;
}
.zenith-post-detail .x6ef781 :is(iframe, img, video, table) {
  max-width: 100%;
}
.zenith-post-detail .x6ef781 :is(.tonplay-demo-frame, .xe6e951, .x80e1c2) {
  max-width: 100%;
  min-width: 0;
}
.zenith-post-detail .x6ef781 .tonplay-demo-section {
  margin: 16px 0 0;
}
.zenith-post-detail .x6ef781 .tonplay-demo-section:first-child { margin-top: 0; }
.zenith-post-detail .x5530b0 { margin-top: 22px; }
@media (max-width: 980px) {
  .zenith-post-detail .xc4f968 { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .zenith-post-detail .xb6815a {
    position: static;
    max-height: none;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 6px;
    overflow: visible;
  }
  .zenith-post-detail .xb6815a .x3be8c1 { flex-basis: 100%; }
  .zenith-post-detail .xb6815a a {
    padding: 8px 10px;
    border-radius: 10px;
    background: var(--panel);
    border: 1px solid var(--line-soft);
  }
}
@media (max-width: 640px) {
  .zenith-post-detail .x0457fb { padding: 18px 16px; }
  .zenith-post-detail .x0457fb h2 { font-size: 20px; }
}
