.demo-document-root,
.demo-document {
  height: 100%;
  overflow: hidden;
}

.demo-shell {
  overflow: hidden;
  height: 680px;
  min-height: 680px;
  border: 1px solid var(--hds-border);
  border-radius: 34px;
  background: var(--hds-view-bg);
  box-shadow: var(--hds-shadow);
}

.demo-shell > .hds-panel-nav {
  min-height: inherit;
}

.demo-shell-compact {
  transform: scale(0.9);
  transform-origin: top center;
  width: 111.12%;
  margin-right: -5.56%;
  margin-bottom: -68px;
  margin-left: -5.56%;
}

.demo-fullscreen {
  height: 100dvh;
  min-height: 100dvh;
  overflow: hidden;
  background: var(--hds-view-bg);
}

.demo-fullscreen .hds-panel-nav {
  height: 100dvh;
  min-height: 100dvh;
}

.demo-fullscreen .hds-view-content {
  width: min(100%, 720px);
  margin: 0 auto;
}

.demo-fullscreen .hds-nav-bar,
.demo-fullscreen .hds-tab-bar {
  width: min(100%, 760px);
  margin-right: auto;
  margin-left: auto;
}

.demo-fullscreen .hds-tab-bar {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  width: min(100%, 760px);
}

.demo-fullscreen .hds-view-content {
  padding-bottom: 120px;
}

@media (max-width: 720px) {
  .demo-shell {
    border-radius: 0;
  }

  .demo-shell-compact {
    width: 100%;
    margin: 0;
    transform: none;
  }
}
