body > .footer { display: none !important; }

.settings-wrap {
  padding: 28px 31px 104px 0 !important;
}

.settings-wrap > .settings-card {
  width: 100%;
  max-width: none;
  margin: 0;
}

#unlockCard {
  max-width: 620px;
  margin: 8vh auto 0;
  padding: 32px;
  border-radius: 18px;
}

#settingsCard {
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

#settingsCard > .settings-header-row,
#settingsCard > .admin-status-grid,
#settingsCard > .settings-step {
  margin-left: 0;
  padding: 24px 28px;
  background: rgba(255, 255, 255, .76);
  border: 1px solid var(--planner-line);
  border-radius: 0 18px 18px 0;
}

#settingsCard > .settings-header-row {
  align-items: center;
  margin-bottom: 14px;
}

#settingsCard > .admin-status-grid {
  margin-top: 0;
  margin-bottom: 14px;
  display: grid;
  padding: 14px;
}

#settingsCard > .settings-step {
  margin-top: 0;
  margin-bottom: 14px;
}

.settings-progress-card { display: none !important; }

.settings-step-head {
  padding-bottom: 18px;
  margin-bottom: 20px;
  border-bottom: 1px solid var(--planner-line);
}

.settings-step-head h3 {
  margin: 5px 0 0;
  color: #b17a35;
  font: 700 25px/1.2 Georgia, serif;
}

.app-settings-tabs-step {
  position: sticky;
  top: -28px;
  z-index: 4;
  padding: 14px 18px !important;
  background: rgba(255, 252, 247, .97) !important;
  box-shadow: 0 10px 25px rgba(52, 42, 30, .07);
}

.settings-footer-row {
  position: fixed;
  z-index: 25;
  right: max(18px, calc((100vw - 1480px) / 2));
  bottom: 18px;
  box-sizing: border-box;
  width: min(calc(100% - var(--planner-sidebar-width) - 36px), 1210px);
  min-height: 66px;
  margin: 0;
  padding: 10px 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  background: rgba(255, 252, 247, .98);
  border: 1px solid var(--planner-line);
  border-left: 0;
  border-radius: 0 0 23px 0;
  box-shadow: 0 -10px 28px rgba(52, 42, 30, .09);
}

.settings-footer-row .actions {
  margin: 0;
  flex-wrap: nowrap;
}

.settings-footer-row .actions a[href="./main.html"] { display: none; }

#saveMessage {
  position: fixed;
  z-index: 35;
  right: 34px;
  bottom: 92px;
  max-width: min(480px, calc(100vw - 40px));
}

.planner-sidebar-nav button {
  font: inherit;
}

@media (max-width: 900px) {
  .settings-wrap { padding: 18px 16px 118px !important; }

  #settingsCard > .settings-header-row,
  #settingsCard > .admin-status-grid,
  #settingsCard > .settings-step {
    padding: 20px;
    border-radius: 18px;
  }

  .settings-footer-row {
    left: 12px;
    right: 12px;
    bottom: 10px;
    width: auto;
    min-height: 74px;
    border-left: 1px solid var(--planner-line);
    border-radius: 17px;
  }
}

@media (max-width: 640px) {
  .settings-footer-row {
    align-items: stretch;
    min-height: 92px;
    padding: 9px;
  }

  .settings-footer-row > .small { display: none; }
  .settings-footer-row .actions { width: 100%; display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
  .settings-footer-row #saveBtn { grid-column: 1 / -1; }
  .settings-footer-row .btn { padding: 9px 10px; }
}
