/* Scoped visual integration for /connected-dashboard/ only. */
.pryntd-connected-dashboard-menu {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: 1 1 100% !important;
  flex-basis: 100% !important;
  grid-column: 1 / -1 !important;
  justify-self: stretch !important;
  align-self: stretch !important;
  overflow: hidden;
}

/* Some Connected Dashboard builds place navigation inside a shrink-to-fit wrapper.
   Stretch the identified menu row, never the functional tab row. */
.pryntd-connected-dashboard-menu > nav,
.pryntd-connected-dashboard-menu > ul,
.pryntd-connected-dashboard-menu > [role="navigation"],
.pryntd-connected-dashboard-menu > .nav,
.pryntd-connected-dashboard-menu > .menu,
.pryntd-connected-dashboard-menu > [class*="nav"],
.pryntd-connected-dashboard-menu > [class*="menu"] {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

.pryntd-connected-dashboard-menu .pryntd-connected-dashboard-menu__track {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center;
  gap: 12px;
  width: 100%;
  max-width: 100%;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  overscroll-behavior-inline: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  scroll-snap-type: x proximity;
  padding-block: 4px 8px;
}

.pryntd-connected-dashboard-menu .pryntd-connected-dashboard-menu__track > * {
  flex: 0 0 auto !important;
  scroll-snap-align: start;
}

.pryntd-dashboard-menu-source-empty {
  display: none !important;
}

@media (max-width: 782px) {
  .pryntd-connected-dashboard-menu .pryntd-connected-dashboard-menu__track {
    gap: 9px;
    padding-bottom: 10px;
  }
}


/* The functional dashboard tabs remain in place and keep all existing behaviour.
   Only their outer layout box is stretched so the tab band fits the dashboard width. */
.pryntd-connected-dashboard-tabs {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: 1 1 100% !important;
  flex-basis: 100% !important;
  grid-column: 1 / -1 !important;
  justify-self: stretch !important;
  align-self: stretch !important;
}

.pryntd-connected-dashboard-tabs > nav,
.pryntd-connected-dashboard-tabs > ul,
.pryntd-connected-dashboard-tabs > [role="navigation"],
.pryntd-connected-dashboard-tabs > [role="tablist"],
.pryntd-connected-dashboard-tabs > .nav,
.pryntd-connected-dashboard-tabs > .tabs,
.pryntd-connected-dashboard-tabs > [class*="nav"],
.pryntd-connected-dashboard-tabs > [class*="tab"] {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}


/* In-page Studio feature tabs. These panels stay inside Connected Dashboard. */
.pryntd-connected-dashboard-feature-host {
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  min-width: 0;
  grid-column: 1 / -1 !important;
  margin: 14px 0 18px;
}

.pryntd-connected-dashboard-feature-panel {
  width: 100%;
  min-height: 720px;
  border: 1px solid rgba(17, 24, 39, .10);
  border-radius: 18px;
  overflow: hidden;
  background: #fff;
}

.pryntd-connected-dashboard-feature-frame {
  display: block;
  width: 100%;
  height: min(82vh, 980px);
  min-height: 720px;
  border: 0;
  background: #fff;
}

.pryntd-connected-dashboard-tabs [data-pryntd-feature-tab="1"] {
  cursor: pointer;
}

@media (max-width: 782px) {
  .pryntd-connected-dashboard-feature-panel,
  .pryntd-connected-dashboard-feature-frame {
    min-height: 620px;
  }
}

/* Added in-page feature tabs intentionally inherit the native tab element and classes.
   These guards prevent label wrapping without imposing a separate visual design. */
.pryntd-connected-dashboard-tabs [data-pryntd-feature-tab="1"] {
  white-space: nowrap !important;
  width: auto !important;
  min-width: max-content !important;
  line-height: inherit !important;
}
