@charset "utf-8";

/* Final cross-platform containment layer. Keep this file loaded after page-specific CSS. */
.hub-pane,
.content-pane,
.jv-article-shell,
.hub-head,
.hub-head > *,
.catalog-shell,
.content-window,
.company-grid,
.company-card,
.service-admin-pane,
.service-admin-shell,
.service-admin-auth,
.service-admin-grid,
.service-admin-card,
.store-policy-pane,
.store-policy-head,
.store-policy-sections,
.store-policy-section,
.product-detail-pane,
.category-landing-links,
.breadcrumbs,
.mini-nav {
  min-width: 0;
  max-width: 100%;
}

.hub-pane > *,
.content-pane > *,
.service-admin-pane > *,
.store-policy-pane > *,
.product-detail-pane > *,
.company-grid > *,
.service-admin-auth > *,
.service-admin-grid > *,
.category-landing-links > *,
.jv-article-shell > *,
.article-split > *,
.article-body > *,
.unbundle-map > *,
.forecast-grid > *,
.forecast-card header > * {
  min-width: 0;
  max-width: 100%;
}

h1,
h2,
h3,
.breadcrumbs,
.mini-nav a,
.category-landing-links a,
.service-admin-auth label,
.service-admin-auth p {
  overflow-wrap: anywhere;
  word-break: normal;
}

.mini-nav,
.category-landing-links,
.service-admin-auth,
.service-admin-toolbar,
.service-form-actions,
.actions {
  width: 100%;
}

.mini-nav a,
.category-landing-links a {
  white-space: normal;
}

.service-admin-auth label {
  flex-basis: min(300px, 100%);
}

/* Wide tables own their horizontal scrolling; the article column itself never does. */
.article-body {
  overflow-x: clip;
}

/* Legacy article variants allocated 100% to columns before adding the gap. */
@media (min-width: 981px) {
  .article-split {
    width: auto !important;
    grid-template-columns: minmax(0, 18fr) minmax(0, 82fr) !important;
  }

  .article-body {
    width: auto !important;
  }
}

@media (max-width: 560px) {
  h1,
  .article-head h1 {
    max-width: 100%;
    font-size: clamp(27px, 8vw, 42px);
    line-height: .94;
  }

  .hub-pane,
  .content-pane,
  .service-admin-pane,
  .store-policy-pane,
  .product-detail-pane {
    width: 100%;
  }

  .service-admin-auth label {
    flex: 1 1 100%;
  }

  .service-admin-toolbar button,
  .service-form-actions button,
  .service-form-actions a,
  .actions a {
    white-space: normal;
  }
}
