/* Harbor unified · cohesive soft-premium tab shell across all six tabs */

.device .pad {
  padding-bottom: max(18px, env(safe-area-inset-bottom, 0px) + 8px);
}

.device .scrn-title,
.device .display {
  font-family: var(--font-brand) !important;
  font-weight: 500 !important;
  letter-spacing: -0.03em !important;
}

.device .lead,
.device .card-b,
.device .tiny {
  font-family: var(--font-brand) !important;
  font-weight: 400 !important;
}

.device .card {
  border-radius: var(--r-md, 22px) !important;
  border-color: rgba(18, 22, 15, 0.1) !important;
  transition:
    border-color 0.25s ease,
    transform 0.18s ease,
    box-shadow 0.25s ease !important;
}

.device.night .card {
  border-color: rgba(237, 231, 214, 0.1) !important;
  background: rgba(26, 31, 22, 0.55) !important;
}

.device .card.tap:active {
  transform: scale(0.99) !important;
}

.device .card-k,
.device .sec-h {
  font-family: var(--font-brand) !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
}

.device .btn,
.device .ap-btn,
.device .tonight-door-cta,
.device .dewbtn,
.device .self-line-btn {
  font-family: var(--font-brand) !important;
  font-weight: 500 !important;
  letter-spacing: 0.05em !important;
  border-radius: var(--r-pill, 40px) !important;
}

.device .nav .nl {
  font-family: var(--font-brand) !important;
  font-weight: 500 !important;
  letter-spacing: 0.04em !important;
}

.device .nav button.on {
  color: var(--fern, #7e9169) !important;
  background: rgba(126, 145, 105, 0.12) !important;
  border-radius: var(--r-md, 22px) !important;
}

.device .nav-dot {
  background: var(--fern, #7e9169) !important;
  box-shadow: 0 0 0 3px rgba(126, 145, 105, 0.2) !important;
}

.device .tab-next {
  font-family: var(--font-brand) !important;
  font-weight: 500 !important;
  letter-spacing: 0.06em !important;
  text-transform: lowercase !important;
  border-radius: var(--r-pill, 40px) !important;
  border: 1px solid rgba(126, 145, 105, 0.28) !important;
  background: rgba(126, 145, 105, 0.08) !important;
  color: var(--fern, #7e9169) !important;
  min-height: 44px !important;
  padding: 12px 18px !important;
  margin-top: 12px !important;
  width: 100%;
  justify-content: center;
}

.device .morning-light,
.device .de-feature,
.device .whisper-home {
  border-radius: var(--r-md, 22px) !important;
}

.device .expcard,
.device .exp-flag-card {
  font-family: var(--font-brand) !important;
  border-radius: var(--r-md, 22px) !important;
}

.device .harbor-chip {
  font-family: var(--font-brand) !important;
  border-radius: var(--r-pill, 40px) !important;
}

.device .earned-moment .earned-inner,
.device .exp-carried,
.device .exp-earned {
  font-family: var(--font-brand) !important;
  border-radius: var(--r-md, 22px) !important;
}

.device .exp-carried-k {
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
}

/* escape strip retired — brand home + doors map + bottom tabs */
.device .site-escape{display:none!important}
