.settingsPage {
  display: flex;
  gap: 20px;
}

.settingsSections,
.switchRow {
  overflow-x: hidden;
  max-inline-size: 90%;
}

.switchRow {
  display: flex;
  margin-inline-end: auto;
  align-items: center;
  margin-block-end: 5px;
}

.settingsToggle {
  padding-block: 0;
  margin-block: 0;
}

.section {
  /* enables anchor link clicks to land with the section title in the top quarter of the page */
  scroll-margin-top: 24vh;
}

@media only screen and (width >= 1015px) {
  .section + .section {
    padding-block-start: 20px;
  }

  .settingsSections:last-child {
    /* Add enough blank space to have the last setting section be active on the FtSettingsMenu when scrolled to */
    margin-block-end: calc(76vh - 150px);
  }
}

@media only screen and (width <= 1200px) {
  .settingsSections,
  .switchRow {
    max-inline-size: 100%;
  }
}

@media only screen and (width <= 1015px) {
  /* Needed to overcome routerView styling for margin-block */
  .settingsPage.settingsPage {
    margin-block: 0;
    flex-direction: column;
    gap: 10px;
  }

  .switchRow,
  .settingsSections {
    margin-inline: auto;
  }

  .switchRow {
    display: none;
  }

  .settingsSections {
    overflow-y: hidden;
    margin-block-end: 80px;
  }

  .hideOnMobile {
    display: none;
  }

  .returnToMenuMobileButton {
    margin-block-start: 20px;
    background-color: transparent;
    color: inherit;
    cursor: pointer;
    border-style: none;
    font-size: 30px;
    line-height: 1em;
  }

  .returnToMenuMobileIcon {
    inline-size: 1em;
  }
}
